Belkin RT3200/Linksys E8450 WiFi AX discussion

24.10 was branched from master recently, and FIB on UBI definition in the DTS was done sometime in Feb 2024, which is before the branch of 24.10, so yeah, in order to run 24.10 builds, RT3200/E8450 need to convert to FIB on UBI scheme by running installer 1.1.3.

1 Like

Confirmed. The RT3200 / e8450 does require the repartitioning via installer v1.1.3 or newer. Running with the 23.x or older partitioning is not supported.

https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob;f=package/boot/uboot-mediatek/patches/410-add-linksys-e8450.patch;h=8768879d94756e8a1967db31129615a52168fd0b;hb=refs/tags/v24.10.0-rc1

arch/arm/dts/mt7622-linksys-e8450-ubi.dts
...
 276 +&snand {
 277 +       pinctrl-names = "default";
 278 +       pinctrl-0 = <&snfi_pins>;
 279 +       status = "okay";
 280 +       quad-spi;
 281 +
 282 +       partitions {
 283 +               compatible = "fixed-partitions";
 284 +               #address-cells = <1>;
 285 +               #size-cells = <1>;
 286 +
 287 +               partition@0 {
 288 +                       label = "bl2";
 289 +                       reg = <0x0 0x80000>;
 290 +               };
 291 +
 292 +               partition@80000 {
 293 +                       label = "ubi";
 294 +                       reg = <0x80000 0x7f80000>;
 295 +                       compatible = "linux,ubi";
 296 +               };
 297 +       };
 298 +};

https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob_plain;f=target/linux/mediatek/image/mt7622.mk;hb=refs/tags/v24.10.0-rc1

 228 define Device/linksys_e8450-ubi
...
 253   DEVICE_COMPAT_VERSION := 2.0
 254   DEVICE_COMPAT_MESSAGE := SPI-NAND flash layout changes require bootloader update. Please run the UBI installer version 1.1.0+ (unsigned) first.

Yeah, I answered too quickly and wrongly.
23.05 users need an installer to upgrade to 24.10, but I am not sure if there will be a separate 24.10 installer, as the installer 1.1.3 has been available already since August 2024.

1 Like

So, for those who're currently on 23.05.x

  1. Download https://github.com/dangowrt/owrt-ubi-installer/releases/download/v1.1.3/openwrt-mediatek-mt7622-linksys_e8450-ubi-initramfs-recovery-installer_signed.itb (or the unsigned version?)
  2. Flash the above file under OpenWrt (keep settings?)
  3. Flash 24.10.x builds (can keep settings?)

Right?

Cheers.

If you're already on OpenWRT, the unsigned version is the correct one to use. The signed version is only needed when converting from protected versions of the stock firmware to OpenWRT.

If you want to keep your settings, you have to download the settings before running the installer and then restore them once the new version of OpenWRT is fully installed. The installer cannot keep settings. In addition, you'll need to manually update the compat_version flag in /etc/config/system or you'll end up with an error the next time you try to perform a sysupgrade.

2 Likes

I think consider waiting for an updated installer or word from @daniel, as I think he indicated earlier in this thread that a new one would be put together for 24.XX.

2 Likes

From installer perspective, there is not much difference, as the August installer 1.1.3 based on main/master uses pretty much the same main/master OpenWrt code as the 24.10 release branched in October. It is branded as snapshot, not 24.10, but functionally not much difference.

That OpenWrt initramfs image is only used on the fallback recovery initramfs mode, which is only used for flashing the normal sysupgrade image. Not for normal operations.
Having either August code there or late October code makes no difference as long as the sysupgrade flashing works.

Installer's main functionality is to modify the UBI partitioning, and to get the initramfs flashed as the recovery image.

It is possible that @daniel creates a new "24.10" installer, maybe just for clarity, or at least makes the 1.1.3 more visible on his download site and modifies its explanation to clearly cover 24.10.

1 Like

The 1.1.3 installer is fine. I've been running main snapshots for a couple of months and now I'm on 24.10-SNAPSHOT just fine.

I'm waiting for OWUT or the Firmware Selector to work fine to go to 24.10.0-rc1 because right now, they can't build anything custom. Even the Image Builder is not working properly.

Is this OK from 23.05 or better to start from scratch? I wonder if we move old legacy stuff into the new environment and overwrite new files and new settings in a bad way. Don’t think we get opportunity to merge changes in.


Any reports - good or bad - of anyone retaining settings from 23.05 during upgrade to 24?

There are always risks when you restore settings into a version for which they were not designed. It may work, and it may not. Some people on some platforms have even ended up with soft-bricked devices by doing so. Daniel does an amazing job at keeping the e8450 configs stable, but there's no telling what cruft might build up over time or what the software package updates might change or break. That said, I do recommend starting from scratch on a new major version unless you have something complex that can't easily be rebuilt.

2 Likes

Of course it's best to do a clean install and configure the router from scratch, but coming from 23.05.x is not that complex because there aren't dealbreaking changes between the config of 23.05 and 24.10.0.rc1/SNAPSHOT/24.10-SNAPSHOT.

The procedure would be the following:

  1. SSH into the router and execute uci set system.@system[0].compat_version=2.0 and uci commit.
  2. Make a backup of said configuration on System > Backup/Flash Firmware.
  3. Delete the following files from the backup file:
  • /etc/config/ubootenv
  • /etc/fw_env.config
  1. Flash the unsigned 1.1.3 installer and uncheck to keep settings and force upgrade. Get it from the Github page.
  2. The router will reboot on a recovery environment, so go to System > Backup/Flash firmware and flash the desired sysupgrade image that you have previously downloaded (main snapshot, 24.10-snapshot or 24.10.0-rc1). Again, don't keep settings.
  3. The router will reboot on the desired image and you can restore your backup just fine or configure from scratch using the backup file as reference if you want.
  4. Profit!

If you don't delete the files from the backup, you need to SSH into the router and edit those files:

  • /etc/fw_env.config
/dev/ubi0_2 0x0 0x1f000 0x1f000 1
/dev/ubi0_3 0x0 0x1f000 0x1f000 1
  • /etc/config/ubootenv
config ubootenv
        option dev '/dev/ubi0_2'
        option offset '0x0'
        option envsize '0x1f000'
        option secsize '0x1f000'
        option numsec '1'

config ubootenv
        option dev '/dev/ubi0_3'
        option offset '0x0'
        option envsize '0x1f000'
        option secsize '0x1f000'
        option numsec '1'

This info was provided to me here: Belkin RT3200/Linksys E8450 WiFi AX discussion - #5950 by fda

As of today, I don't recommend going to 24.10.0-rc1 because it has a bug in its files for when you intend to upgrade via OWUT or even the firmware selector doesn't work properly. RC2 is just around the corner for this.

Save this instructions for when RC2 drops.

The point of keeping settings from 23.05 is that you already have aditional packages installed, and therefore, you might have wanted to generate a custom image via the Firmware Selector, auc, or even the Image Builder. If you're using the default sysupgrade image, it's best to configure from scratch. 24.10.0-rc1 images can't be generated right now on the ASU server.

Cheers!

13 Likes

Fantastic post Sir. This is the sort of hidden gem buried in these forums that ought to be put into the wiki for future prosperity. Else like the knowledge of the ancient Egyptians, it’ll all get lost in the sands of time.

Which makes me wonder how long we’ll have our RT3200’s for? My three have been rock solid and I wonder if I might have them another five years.

1 Like

Thanks for those really useful instructions. Maybe you can suggest me the best way to proceed with my installa: I had a snapshot (UBI) installed waiting for the RC to come out. Just installed the RC now and everything seems fine.

My goal is to arrive to the stable version with less problems possible. With snapshots every upgrade results in a lost of all packages. With RC it will be the same?

I wanted to stay with stable 23 but i bought the router used with already the snapshot installed...

Second question: I flashed only the sysupgrade. I have to flash something else too like the uboot?

You shouldn't have lost any packages between snapshots. That's what's OWUT is for, or even the Firmware Selector if you customize a build with your installed packages. Of course the main snapshot right now uses APK instead of OPKG, and some tweaks had to be made, but overall, it should be painless.

When RC2 oe 24.10 stable drops, you should execute owut upgrade and the router will do the rest. Or install luci-app-attendedsysupgrade and do it on the GUI. The hard part was to be on the all UBI snapshots and you are past that.

1 Like

Thanks!
so no Uboot flash needed at my point ?
Never used owut as it's really short time that I use Openwrt as my main router (before thet I had only dumb aps or secondary routers) but i saw that is what i need.

About apks: I used that in snapshots but i saw that in RC1 we are back to opkg.

U-Boot is the bootloader and you don't have no business there unless you're know what you're doing (I do not). You already are running the all UBI flash layout, so you don't need to run the installer again, unless a new version is released and Daniel instructs us to do so.

Yeah, APK was meant to be used on 24.10, but there are many issues pending, so it's pushed to a future 24.x release or maybe 25.x next year. It's still used on MAIN snapshots because it needs a lot of testing, but in the meantime, we still have OPKG.

Cheers!

2 Likes

Have tried to recover my dead e8450 whichg died when i upgraded to 24.10.
I got such log. Can You please help to get working device back


        ( ( ( OpenWrt ) ) )       U-Boot 2022.01-OpenWrt-r19777-2853b6d652 (Oct 
      1. Run default boot command.
      2. Boot system via TFTP.
      3. Boot production system from flash.
      4. Boot recovery system from flash.
      5. Load production system via TFTP then write to flash.
      6. Load recovery system via TFTP then write to flash.
      7. Load BL31+U-Boot FIP via TFTP then write to flash.
      8. Load BL2 preloader via TFTP then write to flash.
      9. Reboot.
      a. Reset all settings to factory defaults.
      0. U-Boot console


  Press UP/DOWN to move, ENTER to select, ESC to quit
Using ethernet@1b100000 device
TFTP from server 192.168.1.254; our IP address is 192.168.1.1
Filename 'openwrt-mediatek-mt7622-linksys_e8450-ubi-preloader.bin'.
Load address: 0x48000000
Loading: #####
         2.4 MiB/s
done
Bytes transferred = 67445 (10775 hex)
Erasing 0x00000000 ... 0x0007ffff (4 eraseblock(s))
Writing 131072 byte(s) (64 page(s)) at offset 0x00000000
Writing 131072 byte(s) (64 page(s)) at offset 0x00020000
Writing 131072 byte(s) (64 page(s)) at offset 0x00040000
Writing 131072 byte(s) (64 page(s)) at offset 0x00060000
Press ENTER to return to menu

        ( ( ( OpenWrt ) ) )       U-Boot 2022.01-OpenWrt-r19777-2853b6d652 (Oct 
      1. Run default boot command.
      2. Boot system via TFTP.
      3. Boot production system from flash.
      4. Boot recovery system from flash.
      5. Load production system via TFTP then write to flash.
      6. Load recovery system via TFTP then write to flash.
      7. Load BL31+U-Boot FIP via TFTP then write to flash.
      8. Load BL2 preloader via TFTP then write to flash.
      9. Reboot.
      a. Reset all settings to factory defaults.
      0. U-Boot console


  Press UP/DOWN to move, ENTER to select, ESC to quit
resetting ...

F0: 102B 0000
F6: 0000 0000
V0: 0000 0000 [0001]
00: 0000 0000
BP: 0400 0041 [0000]
G0: 1190 0000
T0: 0000 02AD [000F]
Jump to BL

NOTICE:  BL2: v2.4(release):OpenWrt v2021-05-08-d2c75b21-3 (mt7622-snand-1ddr)
NOTICE:  BL2: Built : 02:55:34, Sep  3 2022
NOTICE:  SPI-NAND: FM35Q1GA (128MB)
ERROR:   BL2: Failed to load image id 3 (-2)

Can anyone confirm that the documented revert-to-stock procedure still works on devices that were flashed to a stable release and then upgraded to a snapshot?

Or: can anyone on snapshot examine the output of:

ls -l /dev/mtdblock*

...and confirm that there are still only four of them?

Ideally, also please paste the output of

cat /proc/partitions

I still have the mtd0..mtd3 files having the original bootchain.

Those running snapshots builds after Feb 2024 successfully should only have 2 MTD partitions.

1 Like

Thanks for the fast reply.

It confirms that the instructions for reverting DO NOT WORK (they assume four MTD devices) and must be marked as such or fixed.

@daniel Could you please add the correct instructions to https://github.com/dangowrt/owrt-ubi-installer?tab=readme-ov-file#restoring-the-vendorofficial-firmware ?

2 Likes