OpenWrt support for Linksys MX4200

Still seeing random crashes. This time after about 5d uptime

Every once in a while my connection freezes. Unfreezes in about 30-50 sec. Nothing in the system log. Anybody sees this?

Also, for the different device, I see this.

Fri Aug 23 15:45:37 2024 daemon.notice hostapd: phy2-ap2: AP-STA-DISCONNECTED [MAC]
Fri Aug 23 15:45:42 2024 daemon.info hostapd: phy2-ap2: STA [MAC] IEEE 802.11: authenticated
Fri Aug 23 15:45:42 2024 daemon.info hostapd: phy2-ap2: STA [MAC] IEEE 802.11: authenticated
Fri Aug 23 15:45:42 2024 daemon.info hostapd: phy2-ap2: STA [MAC] IEEE 802.11: authenticated
Fri Aug 23 15:45:42 2024 daemon.info hostapd: phy2-ap2: STA [MAC] IEEE 802.11: authenticated
Fri Aug 23 15:45:42 2024 daemon.info hostapd: phy2-ap2: STA [MAC] IEEE 802.11: authenticated
Fri Aug 23 15:45:42 2024 daemon.info hostapd: phy2-ap2: STA [MAC] IEEE 802.11: authenticated
Fri Aug 23 15:45:42 2024 daemon.info hostapd: phy2-ap2: STA [MAC] IEEE 802.11: authenticated
Fri Aug 23 15:45:42 2024 daemon.info hostapd: phy2-ap2: STA [MAC] IEEE 802.11: authenticated
Fri Aug 23 15:45:42 2024 daemon.info hostapd: phy2-ap2: STA [MAC] IEEE 802.11: authenticated
Fri Aug 23 15:45:42 2024 daemon.notice hostapd: phy2-ap2: AP-STA-CONNECTED [MAC] auth_alg=open
Fri Aug 23 15:45:42 2024 daemon.info hostapd: phy2-ap2: STA [MAC] WPA: pairwise key handshake completed (RSN)
Fri Aug 23 15:45:42 2024 daemon.notice hostapd: phy2-ap2: EAPOL-4WAY-HS-COMPLETED [MAC]

AP still going about 17 days. Also replaced my main router with another mx4300 recently that's been running for almost 5.

Please use @lytr's build. This one

So now that it is flashed, how do i set up the radios? How to I enable access from outside of the lan ports? I cannot access it from anything that has internet access and there is no wireless. I am completely lost here, I could really use some more direction.

I had some challenges figuring it out as this was my first time using OpenWRT. I found that if I followed the set up guides, using the SSH/UCI command line steps got me up and running, until I could get LuCI up (the web interface). Here's the link you're looking for:
https://openwrt.org/docs/guide-quick-start/basic_wifi

Just live with it. It already runs at the lowest frequency at idle (schedutil governor).

I'm unable to install luci-proto-wireguard due to the following error:
"The installed version of package kernel is not compatible, require 6.6.47~57f181d0…-r1 while 6.6.43~7726768d…-r1 is installed."

I'm also unable to perform sysupgrade with the error " Unsupported profile: linksys,mx4300".

I'm new to OpenWRT so forgive me if this is something obvious, or if I just need to be patient for the development process to be complete.

edit: resolved, solution at end

I got the provided 2540ea6 build working on an MX4300, but I then did an incredibly dumb thing where I did fw_setenv auto_recovery no which with the provided bootcmd does bootipq: bootcmd=if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi.

How do I recover my device? It's not booting anymore, but I'm not exactly sure what bootipq is waiting for.

edit: I got out of my mess by just hooking up a serial console; the device boots into a console. then you can use setenv and saveenv to get yourself out of this mess. If somebody else runs into this situation here's my log of what gets output on the serial port before it dumps you into a prompt: https://pastebin.com/FhP0Vumf

Thanks, LuCI's been installed for a while and I got the radio on, but that was and is sort of the secondary problem to the main issue: I cannot access this from the "wan side" or access the "was side" from the "lan side" of the now-AP.

I'm not entirely new to OpenWRT and certianly not linux CLI, but the main and maddening frustration is not being able to access the internet and the device from the same machine. I solved this physically by putting a switch between the router and the AP, connecting the latter via a LAN port and then connecting my server to the switch. 192.168.1.120 gets routed to the AP and everything else gets routed to the internet.

What I've realized is that I need to post my own thread as that's really not the topic of this one.

1 Like

Back on sale at woot for $15 now! Grabbing a couple more.

1 Like

I took one for $25, one for $20 and this one for $15. Why do i keep doing this? :slight_smile:

The power adapter and Ethernet cable alone would run someone $15 if they badly needed it. I opened one of this up (since I had it bricked). And people talk about how good ASUS router are. But I was thoroughly impressed by this Linksys unit, the construction of the housing, the PCB, the passive cooling with all that metal for heat sink, and the Qualcomm SoC. Just the COGS (cost of goods) alone to build this thing together would be easily $15 let alone delivered for free if you Prime at the same price. TL;DR - you and I keep doing it because it’s a steal!

1 Like

I made a mistake and flashed the wrong firmware to the MX4300. I still have the other partition working and can boot to it. Anyone know how to restore the stock firmware to the broken partition?

I just deployed mine and don't currently have access to my spares but I'd imagine you just:

fw_printenv -n boot_part

to get the partition you have openwrt on currently. If this is 1, openwrt is on kernel; if it is 2, openwrt is on alt_kernel. Assuming openwrt is on alt_kernel (assuming that you got 2 as the output from the earlier command), you can flash OEM back to kernel with mtd -e kernel -n write FW_MX4300_1.0.4.215382_prod.img kernel where the image is available from Linksys at https://downloads.linksys.com/support/assets/firmware/FW_MX4300_1.0.4.215382_prod.img (linked to from https://store.linksys.com/support-article?articleNum=48204 )

Hi team,
Maybe I'm doing it wrong. I don't know why none of my Linksys LN1301 Tri-Band MAX4300 are able to install OpenWRT firmware. I tried everything from here: https://github.com/asd333111/openwrt/releases/tag/qualcommax-fd13d50. . I tried everything, but nothing worked. I use the same method and am able to install DD-WRT (https://ftp.dd-wrt.com/dd-wrtv2/downloads/betas/2024/08-16-2024-r57956/linksys-mx4300/dd-wrt-webflash.bin), but I'm not a fan of it. As soon as the firmware flashing router is not booting, it will not give me any IP addresses even I assign static IP.
image
image

that's a homeWRK build. you want this one: https://github.com/testuser7/openwrt/releases/tag/qualcommax-2540ea6

(reference: OpenWrt support for Linksys MX4200 - #1256 by asd111333)

1 Like

Shouldn't it be this : https://github.com/testuser7/openwrt/releases/tag/qualcommax-ff1e1aa the latest build ?

that file has homeWRK in the name, so color me a bit dubious

Yes you are right.. I think they pushed this one to help someone who got homewrk....

The one you mentioned is the correct one I guess

Woot now has the LN1301 aka MX4300 for $15 with code GEARUP4FALL (only good for one).

https://computers.woot.com/offers/linksys-ln1301-wifi-6-router-5

3 Likes

I've got two MX4300 units with Openwrt (thanks @lytr). I've been testing different wireless options and I notice that if I set either of the 5GHz bands to a width of 160MHz they don't work. Here's the system log once I change the bandwidth:

Tue Aug 27 09:19:01 2024 daemon.notice wpa_supplicant[1945]: Set new config for phy phy2
Tue Aug 27 09:19:01 2024 daemon.notice hostapd: Set new config for phy phy2: /var/run/hostapd-phy2.conf
Tue Aug 27 09:19:01 2024 daemon.notice hostapd: Restart interface for phy phy2
Tue Aug 27 09:19:01 2024 daemon.notice hostapd: Remove interface 'phy2'
Tue Aug 27 09:19:01 2024 daemon.notice hostapd: phy2-ap0: interface state ENABLED->DISABLED
Tue Aug 27 09:19:01 2024 daemon.notice hostapd: phy2-ap0: AP-DISABLED
Tue Aug 27 09:19:01 2024 daemon.notice hostapd: phy2-ap0: CTRL-EVENT-TERMINATING
Tue Aug 27 09:19:01 2024 daemon.err hostapd: rmdir[ctrl_interface=/var/run/hostapd]: Permission denied
Tue Aug 27 09:19:01 2024 daemon.notice hostapd: nl80211: deinit ifname=phy2-ap0 disabled_11b_rates=0
Tue Aug 27 09:19:01 2024 kern.info kernel: [10361.553084] ath11k c000000.wifi phy2-ap0: left allmulticast mode
Tue Aug 27 09:19:01 2024 kern.info kernel: [10361.553143] ath11k c000000.wifi phy2-ap0: left promiscuous mode
Tue Aug 27 09:19:01 2024 kern.info kernel: [10361.558276] br-lan: port 6(phy2-ap0) entered disabled state
Tue Aug 27 09:19:01 2024 daemon.notice netifd: Network device 'phy2-ap0' link is down
Tue Aug 27 09:19:01 2024 daemon.notice hostapd: Configuration file: data: driver=nl80211 logger_syslog=127 logger_syslog_level=2 logger_stdout=127 logger_stdout_level=2 hw_mode=a beacon_int=100 chanlist=173 tx_queue_data2_burst=2.0 #num_global_macaddr=1 ieee80211n=1 ht_coex=0 ht_capab=[HT40+][LDPC][SHORT-GI-20][SHORT-GI-40][TX-STBC][RX-STBC1][MAX-AMSDU-7935][DSSS_CCK-40] ieee80211ac=1 vht_oper_chwidth=2 vht_oper_centr_freq_seg0_idx=163 vht_capab=[RXLDPC][SHORT-GI-80][TX-STBC-2BY1][SU-BEAMFORMER][SU-BEAMFORMEE][MU-BEAMFORMER][MU-BEAMFORMEE][RX-ANTENNA-PATTERN][TX-ANTENNA-PATTERN][RX-STBC-1][SOUNDING-DIMENSION-4][BF-ANTENNA-4][MAX-MPDU-11454][MAX-A-MPDU-LEN-EXP7] ieee80211ax=1 he_oper_chwidth=2 he_oper_centr_freq_seg0_idx=163 he_su_beamformer=1 he_su_beamformee=1 he_mu_beamformer=1 he_bss_color=128 he_spr_sr_control=3 he_default_pe_duration=4 he_rts_threshold=1023 he_mu_edca_qos_info_param_count=0 he_mu_edca_qos_info_q_ack=0 he_mu_edca_qos_info_queue_request=0 he_mu_edca_qos_info_txop_request=0 he_mu_edca_ac_be_aifsn=8 he_mu_edc
Tue Aug 27 09:19:01 2024 daemon.notice netifd: Wireless device 'radio2' is now up
Tue Aug 27 09:19:01 2024 kern.info kernel: [10361.894436] br-lan: port 6(phy2-ap0) entered blocking state
Tue Aug 27 09:19:01 2024 kern.info kernel: [10361.894479] br-lan: port 6(phy2-ap0) entered disabled state
Tue Aug 27 09:19:01 2024 kern.info kernel: [10361.898856] ath11k c000000.wifi phy2-ap0: entered allmulticast mode
Tue Aug 27 09:19:01 2024 kern.info kernel: [10361.904704] ath11k c000000.wifi phy2-ap0: entered promiscuous mode
Tue Aug 27 09:19:01 2024 kern.info kernel: [10361.910818] br-lan: port 6(phy2-ap0) entered blocking state
Tue Aug 27 09:19:01 2024 kern.info kernel: [10361.916895] br-lan: port 6(phy2-ap0) entered forwarding state
Tue Aug 27 09:19:01 2024 daemon.notice hostapd: phy2-ap0: interface state UNINITIALIZED->HT_SCAN
Tue Aug 27 09:19:02 2024 daemon.err hostapd: nl80211: kernel reports: (extension) channel is disabled
Tue Aug 27 09:19:02 2024 daemon.err hostapd: Could not set channel for kernel driver
Tue Aug 27 09:19:02 2024 daemon.err hostapd: Interface initialization failed
Tue Aug 27 09:19:02 2024 daemon.notice hostapd: phy2-ap0: interface state HT_SCAN->DISABLED
Tue Aug 27 09:19:02 2024 daemon.notice hostapd: phy2-ap0: AP-DISABLED
Tue Aug 27 09:19:02 2024 kern.info kernel: [10362.682467] br-lan: port 6(phy2-ap0) entered disabled state