OpenWrt support for Xiaomi AX9000

Hi all,

has there been any progress or success to get radio 1 working on channels 100 - 140?

thanks!

Good morning,

While trying to install OpenWRT, I think I bricked the Xiaomi AX9000 router, because even though I turn it on and off, the orange light is always on, and it doesn't provide internet or let me access it via SSH.

Does anyone know how I could fix it, or if I have bricked it, how I could unbrick it?

1 Like

The link of zip seems to be no longer available. Can anyone please re-upload or to send me it? Thank you

It can be found here: OpenWrt support for Xiaomi AX9000 - #1848 by psi-c

Who has the ability to update the device page with this new link (or can the exploit be hosted on openwrt.org rather than relying on random Google drives?)

Hi @mandrad,
I'm trying to build using your repo and I've encountered an issue while applying the 780-hostapd-update-muedca-params.patch patch during the build process.
The patch seems to fail on one of the hunks. Here are the relevant logs for your reference:


Applying /home/kimlulz/openwrt/package/network/services/hostapd/patches/780-hostapd-update-muedca-params.patch using plaintext: 
patching file hostapd/ctrl_iface.c
patching file src/ap/drv_callbacks.c
Hunk #1 succeeded at 21 with fuzz 1 (offset 1 line).
Hunk #2 succeeded at 2317 (offset 49 lines).
Hunk #3 FAILED at 2719.
1 out of 3 hunks FAILED -- saving rejects to file src/ap/drv_callbacks.c.rej
patching file src/ap/hostapd.c
Hunk #1 succeeded at 4509 (offset 409 lines).
patching file src/ap/ieee802_11_he.c
patching file src/ap/wmm.c
patching file src/ap/wmm.h
patching file src/drivers/driver.h
Hunk #1 succeeded at 5980 (offset 194 lines).
Hunk #2 succeeded at 6973 (offset 211 lines).
patching file src/drivers/driver_common.c
Hunk #1 succeeded at 98 with fuzz 1.
patching file src/drivers/driver_nl80211_event.c
Hunk #1 succeeded at 184 with fuzz 1.
Hunk #2 succeeded at 3651 with fuzz 2 (offset 6 lines).
Hunk #3 succeeded at 4207 (offset 87 lines).
patching file src/drivers/nl80211_copy.h
Hunk #1 succeeded at 1329 with fuzz 2 (offset 6 lines).
Hunk #2 succeeded at 1591 with fuzz 2 (offset 8 lines).
Hunk #3 succeeded at 2822 (offset 17 lines).
Hunk #4 succeeded at 3425 with fuzz 2 (offset 52 lines).
Patch failed!  Please fix /home/kimlulz/openwrt/package/network/services/hostapd/patches/780-hostapd-update-muedca-params.patch!
make[3]: *** [Makefile:818: /home/kimlulz/openwrt/build_dir/target-aarch64_cortex-a53_musl/hostapd-wpad-mesh-openssl/hostapd-2024.09.15~5ace39b0/.prepared_dc9491a2850c8407ef20e823553a1e13_6664517399ebbbc92a37c5bb081b5c53] Error 1
make[3]: Leaving directory '/home/kimlulz/openwrt/package/network/services/hostapd'
time: package/network/services/hostapd/wpad-mesh-openssl/compile#1.13#0.68#1.76
    ERROR: package/network/services/hostapd failed to build (build variant: wpad-mesh-openssl).
make[2]: *** [package/Makefile:177: package/network/services/hostapd/compile] Error 1
make[2]: Leaving directory '/home/kimlulz/openwrt'
make[1]: *** [package/Makefile:171: /home/kimlulz/openwrt/staging_dir/target-aarch64_cortex-a53_musl/stamp/.package_compile] Error 2
make[1]: Leaving directory '/home/kimlulz/openwrt'
make: *** [/home/kimlulz/openwrt/include/toplevel.mk:248: world] error 2                                                          

Do you have any suggestions on how to resolve this issue?
Thanks in advance for your help!

please use instead qosmio repo - I haven't updated this repo for a while hence the patches issue as they are not in sync with the latest hostapd i suspect

1 Like

Thank you for your help!

anyone tried the Chinese fork x-wrt?

https://x-wrt.com/

Version 24.04 available:
x-wrt-24.04-b202410201421-qualcommax-ipq807x-xiaomi_ax9000-squashfs-factory.ubi
https://downloads.x-wrt.com/rom/

I've got it running in my AX9000 Chinese version.

Will check if the Chinese community has further fixes in this firmware and revert soon

x-wrt is a distinctly different firmware than OpenWrt... the official OpenWrt project has no involvement with that fork, so we cannot help you with that firmware.

well it doesn't seem to offer any solutions vs. official Openwrt version, had to fix the wifi radio with the board-2.bin file

However I was able to set 160Mhz on radio 1 and radio 3, in this thread I read most can only change it one of the radios? (I've only tried it for radio 3, because radio 1 the wireless channels are very congested, so I worry for interference, I have it on 80Mhz)

radio 2 is on channel 1, which is very congested, but when I change it to channel 9 (tried 6 - 7- 8 aswell) it doesn't work anymore... is this normal? (maybe I needed to wait longer, seems sometimes it takes quite some time after making a change)

since I can't install "kmod-hwmon-emc2305" due to kernel version error, I'll install the latest fork here with all the patches.

I'm now building the qosmio image:

but in the config file it seems emc2305 is not selected for install?
CONFIG_PACKAGE_kmod-hwmon-core=y

CONFIG_PACKAGE_kmod-hwmon-emc2305 is not set

this is needed for the fan speed control? any other things I still need to manually enable in the config file before making the final build?

I need to add the "alpine-fan-control" or already included?

at what step do I need to add it to

guess I'll have to restart the build to and add "kmod-hwmon-emc2305" and "alpine-fan-control', anything else?

BTW this link mentioned above is no longer valid:
https://github.com/remittor-pr/openwrt/blob/r3d/target/linux/ipq806x/files-6.6/arch/arm/boot/dts/qcom/qcom-ipq8064-mi-router-hd.dts

many thanks for any advice

seems the "kmon-hwmon-emc2305" is only supported by kernel 6.6.58?
the xwrt firmware I have now is 6.6.57

I found this:
https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=d668c74fe6efb546f0fd65f0334a3f0bd7bf5df4
could this be used to compile the fan driver / kmod-hwmon-emc2305 ?
https://git.openwrt.org/?p=openwrt/openwrt.git;a=patch;h=d668c74fe6efb546f0fd65f0334a3f0bd7bf5df4;hp=08639a5e47d8ec2d78693493924081d841601028

I've only been able to compile the alpine-fan-control files with SDK, which is kernel 6.1.33... guess I could try to build an image with SDK, but I'm not sure it will have all the patches/updates for the AX9000

it's all very confusing which firmware to flash to enable the fan controller? (and all other patches for the AX9000)

So if I summarize:

  1. openwrt-23.05.5 =kernel 5.15.167
  2. SNAPSHOT =kernel 6.1.33 (mtd package error online download...)
  3. SDK / image builder =kernel 6.1.33

ok, I start to understand:

generic is the old naming "ipq807x/generic", the new target name is "qualcommax/ipq807x":
https://firmware-selector.openwrt.org/?version=SNAPSHOT&target=qualcommax%2Fipq807x&id=xiaomi_ax9000

would this image have all the patches?
(only need to make the "board-2.bin" patch to fix the Wifi radio?)

unfortunately I can't seem to add the package "kmod-hwmon-emc2305" on the online firmware selector, can't add any Package, I'm getting error:

STDERR
make: *** No rule to make target 'info'. Stop.

I'm pretty much talking to myself here, haha

I fixed the text link on ther router info page to generate the board-2.bin file: https://paste-bin.xyz/8141125

I've made a new image with imagebuilder, I created the alpine-fan packages and added these packages to enable fan control:
alpine-fan-control
luci-app-alpine-fan-control
kmod-hwmon-core
kmod-thermal
kmod-regmap-i2c
kmod-i2c-core
kmod-regmap-core
kmod-hwmon-emc2305
lm-sensors
lm-sensors-detect

so if I install the image with these packages the fan control will work?

I received this messages at the end of the build:
ubinize: volume size was not specified in section "kernel", assume minimum to fit image
-> should I specify the volume size of the kernel?

If I understand correctly if we use the latest snapshots, we won't have NSS support, if that's prefered we need to install "openwrt-ipq qualcommax-6.x-nss-wifi", I'm trying to build that image now, not sure which kernel is that? hopefully not based on SNAPSHOTS or the packages to configure the fan will be offline? gettting a lot of 404 / offline links during the build, so not sure what will come out...

1 Like

If I may add something, my previous account on the forum was deleted, but I bought the equipment and I am following the ax9000 thread. I have read probably everything over the last 2 years and I dare say that the main user involved in fully unlocking the device abandoned the project. Probably because of a newer device or family situation. So, Master, we will not achieve anything here.

Seems quiet here yes...

Well I was able to compile the NSS version of the firmware (=openwrt-ipq), this time as non-root user I think it went smooth, added the packages for the fan support, only couldn't incorporate the two Alpine fan packages, so will install manually afterwards.

It compiles with the latest snapshot kernel, so quite nice. Currently traveling but will try to install it next week.

If anybody is interested I can share this Firmware. Please feel free to let me know.

Cheers,
M

4 Likes

Well that sounds great !

I think there are a lot of people (count me in) waiting for this test, I cannot do it myself since I don't have a spare unit, but will be suscribed to any new :smiley:

i wanna test, but compile to upgrade from luci layout thanks

1 Like

Hello. I’m very interested in the question about the fan—did you manage to fix it or not?

1 Like

I have OpenWrt 23.05.5 r24106-10cc5fcd00 / LuCI openwrt-23.05 branch git-24.264.56413-c7a3562 installed . what needs to be installed for the fan to work

Alpine fan packages says MasterM, he have working ver but he is in travel. We must waiting.

1 Like

Can anyone get any of the DFS channels to work on radio1, radio2, or radio3? (i.e. the IPQ8074 or the QCA9074 radios)

DFS channels are channels 52 to 144.