I'm using my GL-MT3000 as a wifi repeater.
right now it is on Version 4.6.8 and at every login it suggests to upgrade to 4.7.0.
The download & verification seems fine - the device reboots but it stays on 4.6.8.
I also tried downloaded FW openwrt-mt3000-4.7.0-1205-1733363917.tar and even openwrt-mt3000-4.6.9-1030-1730284273.tar - still the same effect.
In case it's required I have bound my device in GoodCloud already.
A hint how/where to find the upgrade log is very appreciated.
Try to do the upgrade within Uboot environment: Debrick via Uboot - GL.iNet Router Docs 4
But before try to activate openWRT debug with that instructions: [OpenWrt Wiki] Logging messages and try again to upgrade within GL.Inet interface.
Thank you Rubén,
Before I go for hard methods like flashing with Uboot, I tried to understand what's going on:
I logged in with SSH,
downloaded latest fw file openwrt-mt3000-4.7.0-1205-1733363917.tar to /tmp
run /rom/sbin/sysupgrade -v openwrt-mt3000-4.7.0-1205-1733363917.tar
the last lines I saw before ssh disconnected (and the router rebooted):
...
etc/xattr.conf
etc/uhttpd.key
etc/uhttpd.crt
Cannot parse config file '/etc/fw_env.config': No such file or directory
Fri Dec 13 12:36:15 CET 2024 upgrade: Commencing upgrade. Closing all shell sessions.
after the reboot, I checked - that file does not exist.
it is also not in openwrt-mt3000-4.7.0-1205-1733363917.tar\sysupgrade-glinet_gl-mt3000\root\etc
I learned this file is generated by /etc/uci-defaults/30_uboot-envtools
30_uboot-envtools does not exist on my GL-MT3000 - but it is in openwrt-mt3000-4.7.0-1205-1733363917.tar\sysupgrade-glinet_gl-mt3000\root\etc\uci-defaults\
checking that file, my error message comes somewhere inside ubootenv_add_app_config
my problem seem to be the file /sys/module/boot_param/parameters/env_part
is empty.
- that matches somehow
dmesg | grep "Kernel command line" [ 0.000000] Kernel command line: console=ttyS0,115200n1 loglevel=8 earlycon=uart8250,mmio32,0x11002000
I can resolve
find_mtd_index ubi
6
and the ubi devices all exist:
ls -la /dev/ubi*
crw------- 1 root root 248, 0 Jan 1 1970 /dev/ubi0
crw------- 1 root root 248, 1 Jan 1 1970 /dev/ubi0_0
crw------- 1 root root 248, 2 Jan 1 1970 /dev/ubi0_1
crw------- 1 root root 248, 3 Jan 1 1970 /dev/ubi0_2
crw------- 1 root root 10, 62 Jan 1 1970 /dev/ubi_ctrl
brw------- 1 root root 253, 0 Jan 1 1970 /dev/ubiblock0_1
nand_find_ubi ubi
ubi0
nand_find_volume
doesn ot return anything, as I don't know the suggested content of env_part
.
/sys/devices/virtual/ubi/ubi0/ubi0*/name gives this mapping:
ubi0 | name |
---|---|
ubi0_0 | kernel |
ubi0_1 | rootfs |
ubi0_2 | rootfs_data |
unfortunately, ubootenv is empty:
ls -la /etc/config/ubootenv
-rw-r--r-- 1 root root 0 Aug 11 2023 /etc/config/ubootenv
but I would bet it should point to mtd2 ?
cat /proc/mtd
dev: size erasesize name
mtd0: 10000000 00020000 "spi0.0"
mtd1: 00100000 00020000 "BL2"
mtd2: 00080000 00020000 "u-boot-env"
mtd3: 00200000 00020000 "Factory"
mtd4: 00200000 00020000 "FIP"
mtd5: 00040000 00020000 "log"
mtd6: 0f640000 00020000 "ubi"
the partition seems to be quite ... empty?
hexdump /dev/mtd2
0000000 0000 0000 0000 0000 0000 0000 0000 0000
*
0080000
It seems I have found a lot of pieces, but missing some help bringing them together.
With all the analysis above, I created the file /etcfw_env.config*:
cat /etc/fw_env.config
/dev/mtd2 0x0000 0x80000 0x80000
and now fw_printenv at least provides defaults (the CRC error is due to the empty partition which might be fine, as long as no additional values are written. - that's at least my hope! )
fw_printenv
Warning: Bad CRC, using default environment
bootcmd=bootp; setenv bootargs root=/dev/nfs nfsroot=${serverip}:${rootpath} ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off; bootm
bootdelay=5
baudrate=115200
running sysupgrade again led to a slightly different output:
...
etc/xattr.conf
etc/uhttpd.key
etc/uhttpd.crt
Warning: Bad CRC, using default environment
Fri Dec 13 15:39:39 CET 2024 upgrade: Commencing upgrade. Closing all shell sessions.
and after the reboot, the FW is now 4.7.0.
!!! I would NOT recommend my modification unless someone with more knowledge approves it. !!!
I've got the same issue on my MT2500.
Cannot upgrade from 4.6.8 to 4.7.0
Tried app
Tried notification
Tried local update
All don't take and I'm returned to 4.6.8 and a upgrade available notification.
@berx I will create a new thread.
Looks like we both have had the same issue over similar devices.