• X35G AX200 WIFI

    08/22/2022 at 03:48 0 comments

    When setting up Minisforum X35G NUC as a OpenWRT router I faced an issue with the Intel AX200 Wifi.

    Before going thru the whole install, I tested the X35G with OpenWRT on a USB drive.
    At the time, I was able to install the required driver for the AX200 card. I used the mainline firmware since not avaiable as a OpenWRT package. I tested speed and bandwidth correctly with my laptop.

    When I setup OpenWRT in the nvme storage, iwlwifi starting crapping out.

    [    0.000000] Linux version 5.4.188
    [...]
    [    5.241045] Intel(R) Wireless WiFi driver for Linux
    [    5.242581] iwlwifi 0000:2c:00.0: enabling device (0000 -> 0002)
    [    5.248109] iwlwifi 0000:2c:00.0: api flags index 2 larger than supported by driver
    [    5.250556] iwlwifi 0000:2c:00.0: TLV_FW_FSEQ_VERSION: FSEQ Version: 89.3.35.22
    [    5.253192] iwlwifi 0000:2c:00.0: loaded firmware version 59.601f3a66.0 cc-a0-59.ucode op_mode iwlmvm
    [    5.260577] iwlwifi 0000:2c:00.0: Detected Intel(R) Wi-Fi 6 AX200 160MHz, REV=0x340
    [...]
    [   40.039878] iwlwifi 0000:2c:00.0: Microcode SW error detected. Restarting 0x0.
    [   40.041965] iwlwifi 0000:2c:00.0: Start IWL Error Log Dump:
    [   40.043777] iwlwifi 0000:2c:00.0: Status: 0x00000040, count: 6
    [   40.045501] iwlwifi 0000:2c:00.0: Loaded firmware version: 59.601f3a66.0 cc-a0-59.ucode
    [   40.046489] iwlwifi 0000:2c:00.0: 0x00000071 | NMI_INTERRUPT_UMAC_FATAL    
    [   40.047478] iwlwifi 0000:2c:00.0: 0x000022F1 | trm_hw_status0
    [   40.048540] iwlwifi 0000:2c:00.0: 0x00000000 | trm_hw_status1
    [   40.049545] iwlwifi 0000:2c:00.0: 0x004FAA36 | branchlink2
    [   40.050605] iwlwifi 0000:2c:00.0: 0x000145FA | interruptlink1
    [   40.051666] iwlwifi 0000:2c:00.0: 0x000145FA | interruptlink2
    [   40.052662] iwlwifi 0000:2c:00.0: 0x0000F9E2 | data1
    [   40.053711] iwlwifi 0000:2c:00.0: 0x00001000 | data2
    [   40.054775] iwlwifi 0000:2c:00.0: 0x00000000 | data3
    [   40.055790] iwlwifi 0000:2c:00.0: 0x00000000 | beacon time
    [   40.056800] iwlwifi 0000:2c:00.0: 0x00416296 | tsf low
    [   40.057817] iwlwifi 0000:2c:00.0: 0x00000000 | tsf hi
    [   40.058746] iwlwifi 0000:2c:00.0: 0x00000000 | time gp1
    [   40.059733] iwlwifi 0000:2c:00.0: 0x0041B92D | time gp2
    [   40.060716] iwlwifi 0000:2c:00.0: 0x00000001 | uCode revision type
    [   40.061700] iwlwifi 0000:2c:00.0: 0x0000003B | uCode version major
    [   40.062666] iwlwifi 0000:2c:00.0: 0x601F3A66 | uCode version minor
    [   40.063603] iwlwifi 0000:2c:00.0: 0x00000340 | hw version
    [   40.064574] iwlwifi 0000:2c:00.0: 0x00C89000 | board version
    [   40.065527] iwlwifi 0000:2c:00.0: 0x0200001C | hcmd
    [   40.066382] iwlwifi 0000:2c:00.0: 0x00120000 | isr0
    [   40.067211] iwlwifi 0000:2c:00.0: 0x00000000 | isr1
    [   40.068050] iwlwifi 0000:2c:00.0: 0x08F80002 | isr2
    [   40.068877] iwlwifi 0000:2c:00.0: 0x04C20018 | isr3
    [   40.069761] iwlwifi 0000:2c:00.0: 0x00000000 | isr4
    [   40.070523] iwlwifi 0000:2c:00.0: 0x0031019C | last cmd Id
    [   40.071261] iwlwifi 0000:2c:00.0: 0x0000F9E2 | wait_event
    [   40.072026] iwlwifi 0000:2c:00.0: 0x00000000 | l2p_control
    [   40.072794] iwlwifi 0000:2c:00.0: 0x00000820 | l2p_duration
    [   40.073573] iwlwifi 0000:2c:00.0: 0x00000000 | l2p_mhvalid
    [   40.074334] iwlwifi 0000:2c:00.0: 0x00008000 | l2p_addr_match
    [   40.075091] iwlwifi 0000:2c:00.0: 0x00000009 | lmpm_pmg_sel
    [   40.075839] iwlwifi 0000:2c:00.0: 0x00000000 | timestamp
    [   40.076580] iwlwifi 0000:2c:00.0: 0x00002874 | flow_handler
    [   40.077350] iwlwifi 0000:2c:00.0: Start IWL Error Log Dump:
    [   40.078045] iwlwifi 0000:2c:00.0: Status: 0x00000040, count: 7
    [   40.078746] iwlwifi 0000:2c:00.0: 0x20003207 | ADVANCED_SYSASSERT
    [   40.079484] iwlwifi 0000:2c:00.0: 0x00000000 | umac branchlink1
    [   40.080229] iwlwifi 0000:2c:00.0: 0x804568FC | umac branchlink2
    [   40.080970] iwlwifi 0000:2c:00.0: 0xC0084F3C | umac interruptlink1
    [   40.081764] iwlwifi 0000:2c:00.0: 0x00000000 | umac interruptlink2
    [   40.082507] iwlwifi 0000:2c:00.0: 0x00033907 | umac data1
    [   40.083220] iwlwifi 0000:2c:00.0: 0xDEADBEEF | umac data2
    [   40.083959] iwlwifi 0000:2c:00.0: 0xDEADBEEF | umac data3
    [   40.084704] iwlwifi 0000:2c:00.0: 0x0000003B | umac major
    [   40.085471] iwlwifi...
    Read more »

  • RS232 DB9 Pinout

    11/16/2020 at 08:52 0 comments

    It seems I always struggle with RS232 DB9 pinout. This page is to track it.

    A good reference for DB9 can be found in FTDI RS232 Cable. See Datasheet page 17.

    The RS232 connector (Male) has the following pinout, i.e configured as a Data Terminal Equipment (DTE).

    Male DB9 RS232
    Male DB9 RS232
    PinTypeDescription
    1InputDCD = Data Carrier Detect
    2InputRXD = Receive Data
    3OutputTXD = Transmit Data
    4OutputDTR = Data Terminal Ready 
    5GroundGND = RS232 signal ground
    6InputDSR = Data Set Ready
    7OutputRTS = Request To Send 
    8InputCTS = Clear To Send
    9Input / PowerRI = Ring Indicator

    The device this adapter connects to should follow the following pinout.

    The RS232 device connector is then female, configured as Data Communication Equipment (DCE).

    Female DB9 RS232
    Female DB9 RS232
    PinTypeDescription
    1OutputDCD = Data Carrier Detect
    2OutputRXD = Receive Data
    Aka Device Transmit pin (DT-in/DC-out)
    3InputTXD = Transmit Data
    Aka Device Receive pin (DT-out/DC-in)
    4InputDTR = Data Terminal Ready 
    5GroundGND = RS232 signal ground
    6OutputDSR = Data Set Ready
    7InputRTS = Request To Send
    (DT-out/DC-in)
    8OutputCTS = Clear To Send
    (DT-in/DC-out)
    9Input / PowerRI = Ring Indicator

    The data flow in summarized as follow.

    DTC to DCE
    DTC to DCE

  • Dell Precision 3541 Review

    09/29/2019 at 02:10 0 comments

    I selected the Precision 3541 with the following configuration :

    • Intel i5-9400H
    • Intel GPU
    • 97Wh battery

    I upgraded to the following memory and SSD :

    One thing I was looking for was to be able to play 4K UHD HDR movies. I assume the on-board HDMI 2.0 would be able to support it. I should have done my research before as HDR is only supported on HDMI 2.0a.

    The Type-C port allows a lot of versatility. Using a Type-C to HDMI 2.0b adapter, I am able to play 4K UHD HDR 10bit @ 30Hz. The color space is reduced if the refresh rate is increased to 60Hz. See UPTab USB C to HDMI 2.0b Active HDR Adapter 4K 60Hz.

    Benchmark

    The i5-9400H is integrated with a 35W profile as listed in Intel TDP-down configuration. I was interested to find how this TDP-down was performed.

    By default the Turbo Boost Max Power is set to 35W. This limit can be changed with Intel Extreme Tuning Utility (XTU). 

    Summary :

    • Cinebench R20 @ 35W : 1758pts
      • Temp 86°C
      • Freq 3.30 GHz
    • Cinebench R20 @ 45W : 1892pts
      • Temp 94°C
      • Freq 3.63 GHz
    35W TDP
    45W TDP

    Increasing the TDP to 45W needs to be done manually. How it is reset to 35W is unknown. The configuration shown by Intel XTU shows 45W Turbo Boost Max Power but the system runs at 35W.

    Note on the cooling solution :

    • On Intel GPU system, there is only 1 heat pipe from the CPU to the fan assembly
    • The fan speed let the system heat up before ramping up. The balance between fan noise and heat is always a challenge.
    • Rising the laptop from the table leads to better temp : 78°C after Cinebench @ 35W

    Intel XTU shows the different CPU settings for the i5-9400H