OpenWrt support for Linksys MX4200

Sorry, I meant ath10k but typoed it... but yeah, still nice to know that older chip revs supported this and :crossed_fingers: that ath11k could/might at some point too!

on the newbuild, anything new/better that was tangible (keeping aside this behavior you have highlighted) .

It looks to be very stable and the wireless mesh speeds a tad bit higher. Also, there was an update to the wpad-mesh-openssl package and maybe it helped a bit, imo. I removed the collectd package as its useless to me.

1 Like

@gtxent, this is the repo, right? https://github.com/gtxaspec/openwrt-mx4300/releases/tag/qualcommax-foss-35c3a6a. And if we need to build it, we should use this one: https://github.com/gtxaspec/openwrt-mx4300/tree/35c3a6ae76db58c0954e9505c4acd8a4886d18d3, correct? Also we could flash sys.upgrade if we are on arix00 build?

Correct, since in a mesh setup all nodes are connecting to one another and you could have an instance where traffic hops through another node. That tx-checksumming occurring with NSS enabled could corrupt UDP packet.

2 Likes

yes, thats what I did. i flashed over the arix00 build: I cloned his repo and just added a single patch to enable AP/VLAN on ath11k, then ran the github CI to generate images, same process @arix uses. Maybe @arix could add it until it makes it into master? If not I could always have it in my fork.

Thanks and appreciate the info. Btw, is putting that one-liner is enough (as shown in the screenshot) or do we have to write to the file (/etc/hotplug.d/iface/50-mesh-tx-offload)? Once you write to that file, that file persists and am not sure why we are writing to that file every time after a reboot? Just a clarification please.

image

@qosmio Can you please comment on this? Is this how it's supposed to work with no data on the RX and TX Rates? If I restart the Mesh Point, then it starts showing up. I am guessing it's a bug in Luci as the mesh works even when there is no data. Just curious.

You need to put it in a hotplug script since it's based on when an interface goes up/down vs. local startup (/etc/rc.local) which only runs once on startup.

Also, don't put it under iface put it under net so you can filter by interface name and when it actually comes up.

Example:
/etc/hotplug.d/net/99-mesh-chksum-off

#!/bin/sh

if [ "$ACTION" = "add" ] && [ "$INTERFACE" = "phy2-mesh0" ]; then
    ethtool -K "$INTERFACE" tx off
fi

To verify it works.
Enable tx checksumming and verify it's on. (Note: Capital '-K' sets value vs '-k' reads value.)
1.) ethtool -K "phy2-mesh0" tx on
2.) ethtool -k "phy2-mesh0" | grep tx-checksumming

tx-checksumming: on

Reload wifi
3.) wifi up radio2
Verify after reloading the script is executing and tx checksum is off.
4.) ethtool -k "phy2-mesh0" | grep tx-checksumming

tx-checksumming: off

It's a known bug in NSS firmware and happens sporadically for some folks. Haven't been able to consistently get it working driver side.

2 Likes

Wonderful! Thanks again and appreciate all your help!

1 Like

Even reboots are not bringing the data back. I guess will have to live with it as it's not a deal breaker as it's only cosmetic.

Btw, if I remove or comment out the line that has "luci-app-statistics" from config-nss.seed and copy it over and build it, it will remove the collectd and the other dependent packages?

You can try reloading wifi altogether. It's speculated it could be some race condition between wifi and when NSS comes up.

Reload wifi:

wifi up

Correct

1 Like

@qosmio: can you please check this:

Having problem building hostapd as this patch fails to apply.

Wow, it works! I put it in rc.local (wifi up) and voila, the rates are showing up after a reboot! Wonderful and thanks a ton!

1 Like

Hi, can anyone help me please setup this router?
I installed openwrt using THIS and when I get the router booted, I navigate to wireless to setup the Wifi, I hit modify I get this error:

RPC call to luci/getFeatures failed with error -32000: Object not found

It's most likely timeout issue. Can you login to router using ssh and check the timeout value in /etc/config/luci?

Set this in luci config file and test:
option sessiontime '0'
option timeout '15'

I have been getting this error after installing both @lytr's and @arix's latest built that I rebuilt with my own package selection on github. But at least for me this error does not seem to matter -- the router works and luci pages that I tried load (maybe slower than I expect, I am not sure). Since my wifi was already configured I have not tried to make changes, so maybe this error does prevent one from making changes in LUCI.

Since everything works, configuring WiFi from the command line should work (though it is, of course, less user friendly). Alternatively, if you install one of the earlier builds that are linked upthread -- they will probably work without errors.

P.S. Strangely enough, I have no problem with @lytr's latest version that was rebuilt on my laptop rather than on github. A couple of packages in my github and laptop builds differ so maybe this is the reason.

This did not help in my case. The full error (again, in my case) is:

RPC call to luci/getFeatures failed with error -32000: Object not found
  at handleCallReply (https://hw-ap2.hw/luci-static/resources/rpc.js?v=24.259.78333~5a30e6c:11:3)


I'm still getting the same error.

Wifi reload definitely fixed the RX//TX Rate fields.

Btw, I see that the hosts fields are empty in the nodes but they show up correctly on the parent. I set the "Use Custom DNS Servers" to 192.168.192.1 (default gateway) on the nodes and disabled DHCP and ODHCP on the nodes as well.

Node:
image

I am looking at MAC and checking my notes to see which devices are connected to a particular node and that is very cumbersome.

Any ideas how to get the hostnames to show up or even ip addresses on the hosts column under Associated Stations?

Node: