Belkin RT3200/Linksys E8450 WiFi AX discussion

It's all about the LEDs actually. And I bought a refurbished one from woot.com at $14. I just love the LEDs :slight_smile:
And I am happy I will simply upload my backup configs to it.

1 Like

Well, in that case, then enjoy. :slight_smile: Good deal, too, but be ready - If it's listed as used, be warned that it may have suffered from issues and may not be able to boot thanks to the flash issues that caused OKD. You might need to connect a serial console and perform a bit of recovery work. The good news is that the routers are rock solid aside from a flaky flash chip, and they recover easily.

Yes, the black shell, blue plates, and blue LEDs do make for a more attractive and eye-catching device. The simple white is quite plain.

1 Like

I think someone even photographed the inside of the Belkin variant, and the motherboard still has the same contacts the Linksys variant uses for its additional LEDs, they are just unpopulated. (claimed but w/o photo) In theory you could add your own, but that would be quite a project to make nice-looking holes in the case for them to be visible.

I would disagree about the attractiveness, but it is amusing you mention "eye-catching"; I intentionally sought out the Belkin variant to make it blend in on a white shelf. Fortunately it was also noticeably cheaper at the time.

2 Likes

A few additional issues I'd like to raise:

  1. I have enabled WED, but querying its status does not yield what's expected:
root@Belkin-RT3200:~# cat /sys/module/mt7915e/parameters/wed_enable
Y
root@Belkin-RT3200:~# cat /sys/kernel/debug/mtk_ppe/bind
cat: can't open '/sys/kernel/debug/mtk_ppe/bind': No such file or directory

Is this information from https://openwrt.org/toh/linksys/e8450#verifying_that_wed_is_enabled still accurate for v24.10.0? In my case, the file is not just empty. It does not exist. And empty is not expected for a NATting router.

  1. Referring to https://openwrt.org/toh/linksys/e8450#optionally_enable_hardware_flow_offloading, the luci option needs to be edited to include how it's now done for v24.10.0, which is about 'select from the dropdown' as opposed to "check the box".
  1. We'll need to wait on someone else with more knowledge of how WED operates to answer this. It's not a feature I've ever used.
  2. Agreed. The behavior and appearance of this feature has changed, so someone with the ability and time to edit the wiki page should update it accordingly.
2 Likes

Change to:

cat /sys/kernel/debug/ppe/bind

Wiki is old. For a long time it is just ppe. I saw no problems with WED since early RC.

1 Like

So on my router, there is no such directory as /sys/kernel/debug/ppe/, but there is /sys/kernel/debug/ppe0/.
cat /sys/kernel/debug/ppe0/bind gives nothing. File is empty.
However cat /sys/kernel/debug/ppe0/entries has entries such as:

036dc UNB IPv4 5T orig=192.168.69.112:11914->31.13.71.1:443 new=0.0.0.0:0->0.0.0.0:0 eth=00:00:00:00:00:00->00:00:00:00:00:00 etype=0000 vlan=0,0 ib1=100002e2 ib2=00000000 packets=0 bytes=0

The wiki refers to /sys/kernel/debug/ppe0/ under development snapshots. So there again, because the development snapshots now became v24.10.0, maybe it should be edited again to say that from v24.10.0, the data is actually contained in /sys/kernel/debug/ppe0/entries.

Wiki should be updated all the time since it's the primary source of truth.

If you see lines only in entries but not in bind this is because no flows are being offloaded. Make sure to enable hardware flow offloading in the firewall configuration.

I was with installer v1.0.0 UBI layout and 23.05.4.
I just did the sysupgrade with installer v1.1.4 and then did a sysupgrade to 24.10.0 as described in the procedure.
Everything is working well by now.

By reading the procedure I know that after running the installer the router reboot in recovery environment but I didn't see any evidence that I was in recovery. So my question, just for my better understanding, is: how to distinguish when the router is in recovery environment and when in in normal environment?

I have started to measure WDS AP(GL-MT6000) to WDS client(E8450).
The speed from GL to E8450 is faster than from E8450 to GL.
Both of them are [openwrt-23.05 branch (git-24.264.56413-c7a3562)].

Is that ok from your point of view??

Yes, this is OK.

Linksys E8450, when sending, is limited by its weak CPU to something like 450 Mbit/s. You can work around this to some degree by running iperf3 -P 2 (or even -P 4).

A proper test would be between two wired devices connected to the WDS AP and client.

P.S. Try swapping the devices (i.e., make E8450 the main WDS AP and Flint 2 the client), as this would unlock the 160 MHz 2x2 MIMO mode on the E8450, which might be faster than the 80 MHz 4x4 MIMO mode that you are using now.

1 Like

Thanks for the hints @patrakov.

I have that enabled, or so I think:

root@Belkin-RT3200:~# head -n 10 /etc/config/firewall

config defaults
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option synflood_protect '1'
        option flow_offloading '1'
        option flow_offloading_hw '1'

config zone
root@Belkin-RT3200:~#

Is there some number of connections on the 5GHz band that is required before WED checks in? Seeing as most of my devices used the 2.4GHz band, maybe that's the reason the file is empty? Or something else I am missing.

Thanks

WED only applies to 5 GHz

As soon as you access Luci (192.168.1.1), you should see a yellow banner telling the system is running in a initramfs environment.

1 Like

Explains why I don't see anything in the file with only about 5 devices connecting to the 5GHz SSID.

Thank you.

Try doing a speedtest or download a large file on a client connected via 5 GHz, and then you should see records for that in /sys/kernel/debug/ppe0/bind.

Unfortunately I didn't pay attention to this Luci banner.

After ran

sysupgrade -n -F openwrt-24.10.0-mediatek-mt7622-linksys_e8450-ubi-initramfs-recovery-installer.itb

the router rebooted and I just did this checks from terminal

root@OpenWrt:~# cat /etc/openwrt_release 
DISTRIB_ID='OpenWrt'
DISTRIB_RELEASE='24.10.0'
DISTRIB_REVISION='r28427-6df0e3d02a'
DISTRIB_TARGET='mediatek/mt7622'
DISTRIB_ARCH='aarch64_cortex-a53'
DISTRIB_DESCRIPTION='OpenWrt 24.10.0 r28427-6df0e3d02a'
DISTRIB_TAINTS=''

root@OpenWrt:~# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00080000 00020000 "bl2"
mtd1: 07f80000 00020000 "ubi"

root@OpenWrt:~# grep "(release)" /dev/mtd0ro
v2.10.0	(release):OpenWrt v2024.01.17~bacca82a-3 (mt7622-snand-ubi-1ddr)
v2.10.0	(release):OpenWrt v2024.01.17~bacca82a-3 (mt7622-snand-ubi-1ddr)
v2.10.0	(release):OpenWrt v2024.01.17~bacca82a-3 (mt7622-snand-ubi-1ddr)
v2.10.0	(release):OpenWrt v2024.01.17~bacca82a-3 (mt7622-snand-ubi-1ddr)

root@OpenWrt:~# mount
tmpfs on / type tmpfs (rw,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime)
tmpfs on /dev type tmpfs (rw,nosuid,noexec,noatime,size=512k,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,noatime,mode=600,ptmxmode=000)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,noatime)
bpffs on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,noatime,mode=700)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,noatime)

maybe something in the mount output show that I was in the recovery environment but I don't know what to check that indicate the router was really in recovery environment.

One big clue here should be that you don't have an /overlay mount entry. Sadly, there's no clear notice (to my knowledge) from the command line; That only shows when connecting via luci.

1 Like

Would it be possible to have a script run on login to check this, the same way fortune runs on some systems; like how mail on OS X only shows something if there is new mail present. Though recovery is a bad sign, so maybe call it misfortune.bash?
Does the kernel have an echo $0 equivalent?


More generally, is recovery === initramfs?

I think there are/were backup instructions somewhere (wiki? GitHub? forum post?) that seemed to suggest that certain openwrt images could be livecd-style booted even with the OEM web updater.
Is that true, and is that the same file as the recovery image?
Is the difference that recovery mode is a fallback to a backup partition whereas the OEM upgrade process is basically rebooting into RAM?

Maybe, since the UBI installer requires careful attention to which images are being used the wiki should have a section or link to clarification of what squashfs and initramfs images mean. Not to sound too much like a broken record but I think our instructions really do not do enough explaining what the files we are telling people to work with are; far to often it is just "grab the one ending in this series of letters and numbers".

A point of confusion for me, for example, is that the UBI conversion -installer images are also labelled initramfs, while our general help pages say is for operation that will not touch the NAND flash.


A further aside, it would probably do a world of good to make clear where is the point of no return during a UBI conversion is.

My best guess is that after you press upload on the -installer image, once the router begins its reboot you are committed, because I assume the UBI conversion takes place first thing after the kernel loads?

What I am even less clear on, is what this intermediate state looks like before full installation with a squashfs-sysupgrade image. Is a recovery image already on the NAND at this point, or is a loss of power fatal (to the normal user i.e. serial cable required) until that next flashing since no OS is present except in RAM?