Belkin RT3200/Linksys E8450 WiFi AX discussion

Something like this:
(I made just minimal change and even left the if clause)

root@router4:~# cat /etc/toggle_bootcmd
#!/bin/sh
#
# This script can change the bootcmd in the u-boot bootloader 
# of E8450 / RT3200 UBI variant to boot either into
# * initramfs recovery if pstore crash logs are detected (default)
# * main OpenWrt despite the crash log files in pstore

cur_bootcmd=$(fw_printenv -n bootcmd)
echo "Current setting:  bootcmd=$cur_bootcmd"

echo -e "\nOptions:\n" \
        "-i   Boot into initramfs if crash files are present\n" \
        "-o   Boot always into normal OpenWrt\n"

if [ "$1" = "-i" ]
then
        echo "Set bootcmd to use initramfs if pstore files present"
        fw_setenv bootcmd "if pstore check ; then run boot_recovery ; else run boot_ubi ; fi"
elif [ "$1" = "-o" ]
then
        echo "Set bootcmd to always boot into normal OpenWrt"
        fw_setenv bootcmd "if pstore check ; then run boot_ubi ; else run boot_ubi ; fi"
else
        echo -e "\nNo operation selected"
fi

sync

fw_printenv bootcmd
2 Likes

I generally like the idea, but it should be in /sbin rather than /etc (which contains configuration rather than executable stuff).
Maybe it could even be integrated with luci-app-advanced-reboot so we won't need an additional package for that.

1 Like

It might be better to be e8450 specific and in the main OpenWrt repo, so that it could be included in the default images.

(Advanced-reboot is principally about the Linksys dual-boot toggling, somewhat different, and isn't included by default by any device)

2 Likes

Hey @hnyman thanks so much. Last night I left the build running following your simple build instructions, however it was too late here and I fell asleep. It worked fine. Yes, my build also shows the problem has been fixed. Thanks for sharing your diffconfig. I didn't know that the build comes straightforward without any configuration file.

https://lists.openwrt.org/pipermail/openwrt-devel/2022-March/038170.html

good evening ! on March 20 will take place the freezing of the next release but paul says that it takes more time before the officialization 22.03
my question may be stupid but how long do you think thank you in advance

2 Likes

10 posts were split to a new topic: E8450/RT3200 gigabit speeds tweaking?

Sounds like the first 22.03.0-rc1 version might be built in early April

See http://lists.openwrt.org/pipermail/openwrt-devel/2022-February/038037.html

Around 20. March 2022 we plan to branch off the next major release and
would prepare for a first release candidate about 1 week later.

5 Likes

Can you share your exact settings or?

He already did it in the right thread: E8450/RT3200 gigabit speeds tweaking? - #70 by JimmyValentine

1 Like

Maybe you can try iptables-nft with those commands?

Or disable the built in dns server and put the adblocking one directly on port 53.
Or config the built in dns server to use the adblock as the upstream dns server. I setup DHCP on my router to hand out pihole as DNS1 and the routers DNS as DNS2 if pihole/server would go down for some reason.

1 Like

Realized my setup was actually adding an additional hop by forwarding all the traffic from 53 to 5353. Ended up finding the official documentation (https://openwrt.org/docs/guide-user/services/dns/adguard-home) which basically just says to move DNSMasq to 5353 and run AdGuard native on 53. Been working amazingly so far. 4ms average processing time. This router is a beast. :slight_smile:

2 Likes

Raised it just now, as it looks like it was not raised by anyone so far. https://github.com/openwrt/openwrt/issues/9420#issue-1161938817

To resolve it temporarily for me, I've interposed a dumb gbps switch between the E8450 and the slow devices, so the router only sees gbps ethernet ports now. That resolved the issue for me and allows me to track snapshot builds until a real bug fix is found for the original commit's error.

2 Likes

I am on a Snapshot from earlier this year (beginning of january). It has been very solid for me and normally i have no reason to update. Unfortunately there is a major CVE in the Linux kernel. I am not certain if this CVE compromises my system, but better safe than sorry...

I tried to sysupgrade, but it is giving me the following error: opkg_install_cmd: Cannot install package iptables.

What should i do? Build from latest snapshot and reflash?

Yes.
The default firewall has changed since then. And the old iptables has been renamed as iptables-legacy.

If you have snapshot from January and want to install firewall related packages, you need to sysupgrade to the current snapshots first.

Ok. Just to clarify. I build from last snapshot on my linux system and flash via Flash new firmware image. Do i have to enter recovery mode or flash the "recovery firmware" before flashing the firmware like when i did the first install?

What happens to my settings and installed packages when i flash the self-build firmware?

No need to go back to the recovery mode. Just sysupgrade from the normal OpenWrt.

Settings can be kept in sysupgrade, but packages need to be reinstalled if they are not built into your image.

Hi Everyone,

I just wanted to share a recent experience I had with the RT3200 that might be of use. I have been using openwrt on this Belkin since Jan2022. I used the guide from dangowrt and all seemed well until yesterday. Comcast service went down for a few hours in the morning. When it came back up my 5ghz radio was down. Everything in luci appeared to be normal. So I did a reboot through the GUI. When the router came back up it was in recovery mode. I tried to upload a new snapshot with no luck it would always boot into recovery. I went back to the install and tried the suggestion to ssh into the router to remove /sys/fs/pstore*. This also removed the luci GUI so after reinstalling it did boot into production.

I'm not sure why this happened I've had other outages and reboots over time with no issues. Maybe this was known on older snapshots ot a fluke but I thought it someone else comes across this it might help.

Thanks,
Jason

1 Like

hi -
i just got one of these (belkin rt3200).
i tried following the instructions at
https://github.com/dangowrt/linksys-e8450-openwrt-installer .

my first step was to install openwrt-mediatek-mt7622-linksys_e8450-ubi-initramfs-recovery-installer.itb from the stock firmware. it appears that this has installed an openwrt initramfs flat image.
i saved the mtd0,mtd1 mtd2, mtd3 images from this flash.
reading through the guide, it is later suggested to do a full backup by flashing openwrt-mediatek-mt7622-linksys_e8450-ubi-initramfs-recovery.itb from stock. however, it appears that the 4 mtd files that i saved from after my first openwrt flash are not really the original mtd - it appears that i should have first flashed the second file (recovery.itb, not recovery-installer.itb)
is there any hope for restoring original firmware now?

if not - i'll just proceed

suggest - to @daniel (dangowrt) - to reword the instructions jsut a little?? thanks - im looking forward to proceeding

The instructions could be slightly more polished, as they remind a spaghetti code, but if you read carefully, then all the steps are properly in order.

  1. Revert back to old firmware.
  2. Install recovery image (not installer). This image is required only for backup/restore the original rom.
  3. using ssh create a dump of the 4 mtd partitions. DO NOT USE LUCI!!!!! most probably those files will be corrupted. Do not take the risk and use the ssh method. Actually that feature should be removed from the luCI interface as it is not working good.
  4. scp from your computer to extract the files, type reboot from ssh to return to the original firmware.
  5. Back in the original firmware, flash the recovery-installer image and reboot.
  6. In the installer image, now you can flash the sysupgrade image and you are all done.
  7. I advice to update to the latest snapshot after flashing the image.

I had no trouble with the instructions, but I agree they could be more user friendly, it can be a little scary for people not used to deal with hardware, firmware, bricks, etc...

Actually, steps 2, 3 and 4 are required to create a backup of the original from in case you want to revert to the original ROM structure. If you are no interested in that, then you can jump from step 1 to step 5, however you should keep a copy of the original ROM, at least while the hardware is under warranty.

2 Likes

Once you run the installer, it will have automatically created backup files which you can copy off the device. This backup (called minimal backup in the README.md of the installer project on github) is enough to go back to the vendor bootchain, you will just need to also flash the firmware itself as well.
A full backup (which you don't have now) can help you in the extremely unlikely event (which hasn't happened yet for anyone afaik) of something going wrong during installation (but then you will still need to open the device, connect to serial port or even JTAG, ...). Having the full backup also makes restoring to stock a bit easier, as you don't need to download and flash the main firmware itself as well.

1 Like