Adding OpenWrt support for Xiaomi AX3600 (Part 1)

I tried to sysupgrade with "openwrt-ipq-ipq807x_64-xiaomi_ax3600-squashfs-nand-upgra.bin", however this bin seems to be for ap-ac04. How can I flash it?

Currently, I'm running nand-factory bin.

You force flash using sysupgrade from terminal

1 Like

Thank you! My International Version AX3600 was successfully updated with

root@AX3600:/tmp# sysupgrade -v --force openwrt_ipq807x_generic_xiaomi_ax3600_squashfs_nand_sysupgra.bin
Device xiaomi,ax3600 not supported by this image
Supported devices: ap-ac04
Image check failed but --force given - will update anyway!
Saving config files...
Commencing upgrade. Closing all shell sessions.
Connection to 192.168.2.1 closed by remote host.
Connection to 192.168.2.1 closed.

2 Likes

What does that mean ? :slight_smile:

That a pure OpenWrt will be available soon ? Or it is a debloated Chinese firmware ?

That stuff has nothing to do with OpenWrt and doesn't belong into this thread, it's using the QSDK

Hi, can you please check which regulatory domain settings are printed with: iw reg get?

Because mine is 00 (country 00: DFS-UNSET) and it can't be changed either with LUCI or iw reg set XX

if it's QSDK does it mean that all platform features works well:

  • NSS Cores
  • wifi encryption offload is going though NSS
  • Hardware NAT offload
  • SQM goes though NSS
  • full 1Gbit load between lan <->wan
  • 3 wifi radios including IoT one
  • regulatory domain is get from uci config
  • stable (can work 1week+ without reboot)
  • mesh
  • wifi6
  • 160MHz band on wifi ac

Can someone verify those points?

Maybe this could help:

Yes, but this is for stock firmware and I'm on openwrt_ipq807x_generic_xiaomi_ax3600 which does not have nvram command :frowning:

He's not using the nvram command for it

He uses iw reg set XX and then places a script to do it automatically, from what I understand.


Ooh nevermind, you said you couldn't set it with iw reg set. My bad.
Perhaps with the script, running it very early, would do the trick?

No, unfortunately it does not help with script either. So if anyone who have installed QSDK build (OpenWrt 19.07-SNAPSHOT r0+11968-bfbcb2c716) can check if it is same on their system :slight_smile:

It's 00 (DFS-UNSET).
So, I fixed the 5GHz band thinking affects other devices (not wifi, for weather system)

root@AX3600:~# iw reg get
global
country 00: DFS-UNSET
        (2402 - 2472 @ 40), (6, 20), (N/A)
        (2457 - 2482 @ 20), (6, 20), (N/A), AUTO-BW, PASSIVE-SCAN
        (2474 - 2494 @ 20), (6, 20), (N/A), NO-OFDM, PASSIVE-SCAN
        (5170 - 5250 @ 80), (6, 20), (N/A), AUTO-BW, PASSIVE-SCAN
        (5250 - 5330 @ 80), (6, 20), (0 ms), DFS, AUTO-BW, PASSIVE-SCAN
        (5490 - 5730 @ 160), (6, 20), (0 ms), DFS, PASSIVE-SCAN
        (5735 - 5835 @ 80), (6, 20), (N/A), PASSIVE-SCAN
        (57240 - 63720 @ 2160), (N/A, 0), (N/A)

I would like to answer questions that I could verify.

My router package is "Mi AIoT Router AX3600" and includes dedicated AIoT antenna.
Unfortunately, the firmware was global one. ( I don't know why )

Therefore my answers are a little different from Chinese Version.

  • full 1Gbit load between lan and wan -> maybe yes, the speed reached at 600Mbps on Wi-Fi from the ground to 1st floor.

  • 3 wifi radios including IoT one -> No, only 2 was available. But "AIOT" was written in the router package, so it has 3 wifi devices. It was the same as I flashed QSDK version.

  • regulatory domain is get from uci config -> Maybe No, the country was 00 (DFS-UNSET).

  • stable (can work 1week+ without reboot) -> Only 1 day has been passed since I flashed the image. However I can say it is stabler than QSDK one. ( My windows 10 PC was disconnected every 2 minutes from Wi-Fi 6 station when it was QSDK one. iPhone SE 2nd Gen was OK. I don't know why)

  • mesh -> No

  • Wi-Fi 6 -> Yes

  • 160MHz band on wifi ac -> I don't have any wireless modules that supports 160MHz in ac. But 160Mhz is ok in Wi-Fi ax.

Pls, What I call QSDK in this reply is that using xiaomimtd12.bin nand-ipq807x-single.img in the guide.
It's not 19.07 Linux5.4 QCA-WIFI NSS Firmware

You should upgrade then, it should solve your stability issues. I've been testing for days and for me at least it's rock solid stable

1 Like

This chinese build is rock stable for me so it could be used as daily :slight_smile:

4 Likes

One thing that’s bothering me with it is that I lack 30dbm power on channel 60 (for 160mhz). However I can use it on xiaomi’s firmware...

How does it look to you @OneB1t ?

Also the original firmware “dynamic 160mhz” feature is kinda neat, any chance we replicate the same with the Chinese build?

may you explain the steps you did (understanding for non linux expert) to get this image ? what is the differenz between this image an classic openwrt ?

I mean, QSDK is nand-ipq807x-single.img. It had a lot of bugs (my PC was disconnected every 2 minutes and so on)

Now I'm using your firmware (Kernel 5.4) and very stable, thank you.

Some bugs(?) are found in Kernel log.

LEDs are not working in my device.
Maybe there are some features not working.


[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 5.4.89 (li@ubuntu) (gcc version 7.5.0 (OpenWrt GCC 7.5.0 r0+11968-bfbcb2c716)) #0 SMP PREEMPT Thu Mar 4 14:12:48 2021
[    0.000000] Machine model: XIAOMI AX3600

[    1.974958] qcom-qmp-phy: probe of 86000.phy failed with error -13
[    3.199783] qca-mdio 90000.mdio: Could not find phy-reset-gpio
[    5.920389] dwc3 8a00000.dwc3: Failed to get clk 'ref': -2
[    5.921535] dwc3 8c00000.dwc3: Failed to get clk 'ref': -2
[    5.925267] phy phy-59000.qusb.4: QUSB2PHY pll lock failed: status reg = 10
[    5.930241] phy phy-59000.qusb.4: phy init failed --> -16
[    5.937103] dwc3 8c00000.dwc3: failed to initialize core: -16
[    5.942726] dwc3: probe of 8c00000.dwc3 failed with error -16
[    6.023813] leds-gpio: probe of soc:leds failed with error -16
2 Likes