OpenWrt One has become fragile

I bought an OpenWrt One late last year. It seems to have functioned well until now. Sometime last month, it seems to have become very fragile, going into a reboot loop with no excuse at all. Each time it does so, I can only get it to stop by dropping into the U-Boot menu, and reinstalling OpenWrt firmware. After booting the freshly installed firmware (I've tried 24.10.0 and 24.10.1), the One goes into a boot loop after seemingly innocuous commands. This is a capture from the USB serial console, the end of a boot of freshly-installed firmware, and the commands that trigger a reboot loop:

[   21.955229] mtk_soc_eth 15100000.ethernet eth1: entered allmulticast mode
[   21.962188] mtk_soc_eth 15100000.ethernet eth1: entered promiscuous mode
[   22.092796] mtk_soc_eth 15100000.ethernet eth0: PHY [mdio-bus:0f] driver [Airoha EN8811H] (irq=53)
[   22.111510] mtk_soc_eth 15100000.ethernet eth0: configuring for phy/2500base-x link mode
[   25.093615] mtk_soc_eth 15100000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx



BusyBox v1.36.1 (2025-04-13 16:38:32 UTC) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt 24.10.1, r28597-0425664679
 -----------------------------------------------------
=== WARNING! =====================================
There is no root password defined on this device!
Use the "passwd" command to set up a new password
in order to prevent unauthorized SSH logins.
--------------------------------------------------
root@OpenWrt:~# /etc/init.d/firewall stop
root@OpenWrt:~# root@OpenWrt:~# /etc/init.d/firewall disable
root@OpenWrt:~# uci set wireless.radio0.country='US'
root@OpenWrt:~# uci set wireless.radio1.country='US'
root@OpenWrt:~# uci set wireless.radio0.disabled='0'
root@OpenWrt:~# uci set wireless.radio1.disabled='0'
root@OpenWrt:~# uci commit wireless
root@OpenWrt:~# wifi reload
root@OpenWrt:~# [  820.045969] br-lan: port 2(phy0-ap0) entered blocking state
[  820.051667] br-lan: port 2(phy0-ap0) entered disabled state
[  820.057294] mt798x-wmac 18000000.wifi phy0-ap0: entered allmulticast mode
[  820.064369] mt798x-wmac 18000000.wifi phy0-ap0: entered promiscuous mode
[  820.201643] br-lan: port 2(phy0-ap0) entered blocking state
[  820.207236] br-lan: port 2(phy0-ap0) entered forwarding state

root@OpenWrt:~# [  820.365789] br-lan: port 3(phy1-ap0) entered blocking state
[  820.371467] br-lan: port 3(phy1-ap0) entered disabled state
[  820.377088] mt798x-wmac 18000000.wifi phy1-ap0: entered allmulticast mode
[  820.384197] mt798x-wmac 18000000.wifi phy1-ap0: entered promiscuous mode
[  820.391164] br-lan: port 3(phy1-ap0) entered blocking state
[  820.396752] br-lan: port 3(phy1-ap0) entered forwarding state

F0: 102B 0000
FA: 1040 0000
FA: 1040 0000 [0200]
F9: 0000 0000
V0: 0000 0000 [0001]
00: 0000 0000
BP: 2400 0041 [0000]
G0: 1190 0000
EC: 0000 0000 [1000]
T0: 0000 0244 [010F]
Jump to BL

NOTICE:  BL2: v2.10.0	(release):OpenWrt v2024.01.17~bacca82a-3 (mt7981-spim-nand-ubi-ddr4)
NOTICE:  BL2: Built : 08:16:16, Oct 22 2024
NOTICE:  WDT: Cold boot
NOTICE:  WDT: disabled
NOTICE:  EMI: Using DDR4 settings
NOTICE:  EMI: Detected DRAM size: 1024MB
NOTICE:  EMI: complex R/W mem test passed
NOTICE:  CPU: MT7981 (1300MHz)
NOTICE:  SPI_NAND parses attributes from parameter page.
NOTICE:  SPI_NAND Detected ID 0xef
NOTICE:  Page size 2048, Block size 131072, size 268435456
NOTICE:  UBI: scanning [0x100000 - 0x10000000] ...
NOTICE:  UBI: scanning is finished
NOTICE:  UBI: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
NOTICE:  UBI: VID header offset: 2048 (aligned 2048), data offset: 4096
NOTICE:  UBI: Volume fip (Id #2) size is 960697 bytes
NOTICE:  BL2: Booting BL31
NOTICE:  BL31: v2.10.0	(release):OpenWrt v2024.01.17~bacca82a-3 (mt7981-spim-nand-ubi-ddr4)
NOTICE:  BL31: Built : 08:16:16, Oct 22 2024

What in the sam scratch is going on?

It is worth checking your complete config to start:

Please connect to your OpenWrt device using ssh and copy the output of the following commands and post it here using the "Preformatted text </> " button:
grafik
Remember to redact passwords, MAC addresses and any public IP addresses you may have:

ubus call system board
cat /etc/config/network
cat /etc/config/wireless
cat /etc/config/dhcp
cat /etc/config/firewall

I showed what happened on the first boot from freshly installed 24.10.1 firmware - no config changes, except the /etc/init.d/firewall stop and the uci commands that trigger the reboot.

Beyond that, I can't show you the config - it becomes unbootable after that. I have to drop into the "factory" firmware, or the U-Boot monitor. I can only do a fresh firmware install, and the One goes into a boot loop if I sneeze (metaphorically).

Can you boot into initramfs and then sysupgrade from there?

Just to exclude it: your power supply fits the router? You have double checked that?

I am using the power supply that came in the box with the OpenWrt One. I did change out the USB-C cable for a longer one. That was a generic cable from Amazon. I changed to a more robust USB-C cable and that seemed to have fixed things.

Thank you for getting me to try a different power cable.

2 Likes