[Cudy WR3000P] Unexpected reboots

Hello, everyone! I am using a Cudy WR3000P (WR3000P_EU V1.0) with the official OpenWRT 24.10.5 firmware.

Once in a while, the router may suddenly restart. At one point, I connected a UART adapter to the router and started collecting logs. I got something like this:
Full log here (pastebin.com)

[1538963.980332] mt798x-wmac 18000000.wifi: Retry message 00005aed (seq 4)
[1538975.976034] mt798x-wmac 18000000.wifi: Retry message 00005aed (seq 1)
[1538991.492225] mt798x-wmac 18000000.wifi: Retry message 00005aed (seq 5)
[1539003.969142] mt798x-wmac 18000000.wifi: Retry message 00005aed (seq 6)
[1539006.058646] mt798x-wmac 18000000.wifi: Message 00005aed (seq 6) timeout
[1539006.460387] mt798x-wmac 18000000.wifi: HW/SW Version: 0x8a108a10, Build Time: 20240823161240a
[1539006.460387]
[1539006.502479] mt798x-wmac 18000000.wifi: WM Firmware Version: ____000000, Build Time: 20240823161304
[1539006.602032] mt798x-wmac 18000000.wifi: WA Firmware Version: DEV_000000, Build Time: 20240823161841
[1539009.634947] ieee80211 phy0: Hardware restart was requested
[1539009.640655] ieee80211 phy1: Hardware restart was requested
[1539012.047183] mt798x-wmac 18000000.wifi: Retry message 000026ed (seq 13)
[1539014.126634] mt798x-wmac 18000000.wifi: Message 000026ed (seq 13) timeout
[1539014.399272] mt798x-wmac 18000000.wifi: HW/SW Version: 0x8a108a10, Build Time: 20240823161240a
[1539014.399272]
[1539014.426232] mt798x-wmac 18000000.wifi: WM Firmware Version: ____000000, Build Time: 20240823161304
[1539014.469617] mt798x-wmac 18000000.wifi: WA Firmware Version: DEV_000000, Build Time: 20240823161841
[1539017.306834] ieee80211 phy0: Hardware restart was requested
[1539017.315979] ieee80211 phy1: Hardware restart was requested
[1539017.416507] Unable to handle kernel paging request at virtual address aaaaaa2aaebd6728

This problem is either with the router's hardware or its driver? Unfortunately, I don't know how to reproduce this error again, and I was only able to get the current one after 15 days uptime, so I would like to know what you think about this.

Firmware Version: OpenWrt 24.10.5 r29087-d9c5716d1d / LuCI openwrt-24.10 branch 25.340.26705~d88390b

Did you plug the cable in the port lan3 or it is already doomed by the time first messages in the log appear?

It's not broken, but I often do things with my home network, so it's possible that I could have touched it somewhere.

lan3 is my home computer, and it switches port modes when rebooting (as an example).

1 Like

Sounds reasonable.... Lets see if something dangerous is lurking around....

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 (red circle; this works best in the 'Markdown' composer view in the blue oval):

Screenshot 2025-10-20 at 8.14.14 PM

Remember to redact passwords, VPN keys, 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
root@OpenWrt:~# ubus call system board
{
        "kernel": "6.6.119",
        "hostname": "OpenWrt",
        "system": "ARMv8 Processor rev 4",
        "model": "Cudy WR3000P v1",
        "board_name": "cudy,wr3000p-v1",
        "rootfs_type": "squashfs",
        "release": {
                "distribution": "OpenWrt",
                "version": "24.10.5",
                "revision": "r29087-d9c5716d1d",
                "target": "mediatek/filogic",
                "description": "OpenWrt 24.10.5 r29087-d9c5716d1d",
                "builddate": "1766005702"
        }
}
root@OpenWrt:~# cat /etc/config/network

config interface 'loopback'
        option device 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fd7e:8d2f:cab::/48'
        option packet_steering '1'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'lan1'
        list ports 'lan2'
        list ports 'lan3'
        list ports 'lan4'

config interface 'lan'
        option device 'br-lan'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

config interface 'wan'
        option device 'wan'
        option proto 'dhcp'
        option metric '10'
        option dns_metric '10'

config interface 'wan6'
        option device 'wan'
        option proto 'dhcpv6'
        option reqaddress 'try'
        option reqprefix 'auto'
        option norelease '1'
        option metric '10'
        option dns_metric '10'

config interface 'wwan'
        option proto 'dhcp'
        option metric '20'
        option dns_metric '20'

config interface 'cloudsdale0'
        option proto 'wireguard'
        option private_key 'XXXXXXXXX'
        option listen_port '27424'
        list addresses '10.107.32.1/24'

config wireguard_cloudsdale0
        option description 'Ponywka - Workbook'
        option public_key 'XXXXXXXXX'
        list allowed_ips '10.107.32.100/32'

config wireguard_cloudsdale0
        option description 'Ponywka - Pixel 7 Pro'
        option public_key 'XXXXXXXXX'
        list allowed_ips '10.107.32.101/32'

config wireguard_cloudsdale0
        option description 'OwlClare - iPad'
        option public_key 'XXXXXXXXX'
        list allowed_ips '10.107.32.102/32'

config wireguard_cloudsdale0
        option description 'Ponywka - MacBook'
        option public_key 'XXXXXXXXX'
        list allowed_ips '10.107.32.103/32'

config wireguard_cloudsdale0
        option description 'Liski - Router'
        option public_key 'XXXXXXXXX'
        list allowed_ips '10.107.32.2/32'
        list allowed_ips '192.168.2.0/24'
        option endpoint_host '80.82.46.97'
        option endpoint_port '27424'

config wireguard_cloudsdale0
        option description 'Voronezh - Router'
        option public_key 'XXXXXXXXX'
        list allowed_ips '10.107.32.3/32'
        list allowed_ips '192.168.3.0/24'

config wireguard_cloudsdale0
        option description 'Otech - Router'
        option public_key 'XXXXXXXXX'
        list allowed_ips '10.107.32.4/32'
        list allowed_ips '192.168.4.0/24'

config wireguard_cloudsdale0
        option description 'OwlClare - Router'
        option public_key 'XXXXXXXXX'
        list allowed_ips '10.107.32.5/32'
        list allowed_ips '192.168.5.0/24'

config device
        option name 'wan'
        option macaddr 'xx:xx:xx:xx:xx:xx'

config route
        option interface 'cloudsdale0'
        option target '192.168.2.0/24'

config route
        option interface 'cloudsdale0'
        option target '192.168.3.0/24'

config route
        option interface 'cloudsdale0'
        option target '192.168.4.0/24'

config route
        option interface 'cloudsdale0'
        option target '192.168.5.0/24'

config interface 'work0'
        option proto 'none'
        option device 'tun0'

config route
        option interface 'work0'
        option target '172.25.0.0/29'

config route
        option interface 'work0'
        option target '172.27.1.0/24'

config device
        option name 'singtun0'

config interface 'singtun0'
        option proto 'none'
        option device 'singtun0'

config interface 't2s0'
        option proto 'none'
        option device 't2s0'

config device
        option name 't2s0'

config device
        option name 't2s1'

config interface 't2s1'
        option proto 'none'
        option device 't2s1'

config route
        option target 'X.X.X.X/32'
        option gateway '192.168.199.1'
        option disabled '1'

root@OpenWrt:~# cat /etc/config/wireless

config wifi-device 'radio0'
        option type 'mac80211'
        option path 'platform/soc/18000000.wifi'
        option band '2g'
        option channel '1'
        option htmode 'HT20'
        option cell_density '0'

config wifi-iface 'default_radio0'
        option device 'radio0'
        option network 'lan'
        option mode 'ap'
        option ssid 'PonyTheBest'
        option encryption 'sae-mixed'
        option key 'XXXXXXXXX'
        option ocv '0'

config wifi-device 'radio1'
        option type 'mac80211'
        option path 'platform/soc/18000000.wifi+1'
        option band '5g'
        option channel '36'
        option htmode 'HE80'
        option cell_density '0'

config wifi-iface 'default_radio1'
        option device 'radio1'
        option network 'lan'
        option mode 'ap'
        option ssid 'PonyTheBest'
        option encryption 'sae-mixed'
        option key 'XXXXXXXXX'
        option ocv '0'

config wifi-iface 'wifinet2'
        option device 'radio0'
        option mode 'sta'
        option network 'wwan'
        option ssid 'PonyTheBest-4G'
        option encryption 'psk2'
        option key 'XXXXXXXXX'

root@OpenWrt:~# cat /etc/config/dhcp
ewall
config dnsmasq
        option domainneeded '1'
        option localise_queries '1'
        option rebind_protection '0'
        option local '/lan/'
        option domain 'lan'
        option expandhosts '1'
        option cachesize '1000'
        option authoritative '1'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option localservice '1'
        option ednspacket_max '1232'
        option noresolv '1'
        list server '127.0.0.1#5354'

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'
        option dhcpv6 'server'
        option ra 'server'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'

config dhcp 'wan'
        option interface 'wan'
        option ignore '1'

config odhcpd 'odhcpd'
        option maindhcp '0'
        option leasefile '/tmp/hosts/odhcpd'
        option leasetrigger '/usr/sbin/odhcpd-update'
        option loglevel '4'
        option piofolder '/tmp/odhcpd-piofolder'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        option ip '192.168.1.100'
        list tag 'Ponywka - PC (LAN)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        option ip '192.168.1.101'
        list tag '-Home - Nightstar (LAN)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        option ip '192.168.1.102'
        list tag '-Home - Klipper (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        option ip '192.168.1.103'
        list tag '-Home - Home Assistant (via Nightstar)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        option ip '192.168.1.104'
        list tag '-Home - QIDI Q1 Pro'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        option ip '192.168.1.111'
        list tag '-Home - LicheerVN KVM (LAN)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        option ip '192.168.1.158'
        list tag '-Home - Xiaomi Mijia Robot Vacuum Mop 3C+ (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        option ip '192.168.1.159'
        list tag '-Home - Viomi Smart Dishwasher (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag '-Home - DD-WRT Dev Router'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag '-Home - DELL WD19-2250 Dock (LAN)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag '-Home - MITV'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag '-Home - OpenWRT Dev Router'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag '-Home - PMC-5017WIFI (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag '-Home - Yandex Mini 2 (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag 'OwlClare - Honor (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag 'OwlClare - iPad (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag 'OwlClare - Pixel 6 (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag 'Ponywka - Elitebook (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag 'Ponywka - iPad (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag 'Ponywka - Pixel 2 (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag 'Ponywka - Pixel 7 Pro (Wi-Fi)'
        option ip '192.168.1.99'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag 'Ponywka - Quest 3 (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag 'Ponywka - WorkLaptop (Wi-Fi)'

config host
        list mac 'xx:xx:xx:xx:xx:xx'
        list tag 'Ponywka - Xiaomi Redmi 4X (Wi-Fi)'

config domain
        option name 'qbittorrent.home'
        option ip '192.168.1.101'

config domain
        option name 'nextcloud.home'
        option ip '192.168.1.101'

config domain
        option name 'homeassistant.home'
        option ip '192.168.1.103'

config host
        option name 'Keenetic-7846'
        option ip '192.168.1.142'
        list mac 'xx:xx:xx:xx:xx:xx'

Not a cause of crash but select country on wifi radios to get (usually) better power.

Can you send syslog to other device or permanenly log logread -f on the console to see some configs/restarts caught before the crash?

1 Like

Okay, I launched it on my home server. But then we'll have to wait until next month for the log.

OK, I put a reminder, It is not normal router crashing, it should be working steady for years (unless you install some memory leak package)

It's happened again when I tried to play Quest 3 over Virtual Desktop (means high-bitrate video streaming going from PC to VR headset over Wi-Fi).

logread -f + dmesg: https://pastebin.com/ZTmvuJm6

P.s. Yep, I set my region at Wi-Fi driver

2 Likes

Wait for somebody smarter, I am out of ideas....

Currently I tried to change my AC-DC adapter from Cudy's original to original adapter of Keenetic KN-1012 (mid-range routers in Russia; they doesn't skimp on the little things)

2 Likes

At the moment, I have almost 12 days of uptime, so most likely it was a power shortage (or a poor-quality original AC adapter) that caused the driver to crash. For now, I will mark this as a solution, and if it happens again in the future, I will come back to it.

1 Like

It's sad to realize that it happened again. I haven't figured it out yet, because it's 5:21 AM and I want to sleep, but I'll leave the log below.

But the router didn't reboot immediately. At first, the newly connected Wi-Fi devices simply didn't work, and then, after attempts to set up a cable connection (after changing the operating frequency), it finally crashed.

Just for context:
[1221972.519998] Computer turned off; put into WoL standby mode
Here I realized that Wi-Fi was not working on my phone and laptop (other devices like IoT what has been connected before driver crash still has access to the internet)
[1222250.943755] Computer turned on
[1222286.825028] Operating system loaded on computer
After that I tried to restart wireless network / change the operating frequency and after this the driver crashed finally.

The problem recurs when you put a load on the WAN (at least on the Internet). When you run iperf within the local network (br-lan), everything works fine.

Over the weekend, I'll try to rework the network and place one of the iperf behind the WAN (I have a MikroTik there, so everything will be within the local network) to check this.

Are you using power over Ethernet?

No. It's just that at the time of purchase, this router was available for purchase and I didn't see any better deals. PoE is just an optional feature that I don't use. Currently, the router is powered by a Keenetic AC adapter with 12V 2.5A (compared to the included Cudy AC adapter with 12V 1.5A, which also had problems).

1 Like

Also, the P version has 2.5 Gbps and USB. :wink:

OK, cool - I was suspecting PoE.

Some additional information:

  • The AC adapter is not related.
  • The 2.5 Gbps port is not related either. The issue still reproduces even if one of the 1 Gbps ports (under the same bridge) is configured as WAN.
  • After installing a router with similar hardware and software (Cudy WBR3000UAX + OpenWrt 24.10.5) and copying the configuration from the main router, the problem persisted.
  • The problem appears if an iperf server is placed behind the WAN and tested from a computer using "iperf3 -c 192.168.88.50 -P 16 -t 1200 --bidir" while simultaneously trying to use Wi-Fi. I assume that due to NAT + Firewall processing the CPU reaches 100% load (indirectly confirmed by the fact that in br-lan the speed stays around 800 Mbps, while on WAN it drops to ~200 Mbps).

Two possibilities remain:

  • The MTK driver in OpenWrt has bugs when the CPU is at 100% load;
  • Cost-cutting on hardware design by Cudy across the router lineup.

I will try installing alternative firmware on the Cudy WBR3000UAX (including OpenWrt forks as well as non-OpenWrt firmware). I want to know if the problem reproduces on them.

Update:
ImmortalWrt (Cudy WBR3000UAX) works fine - iperf shows high performance, Wi-Fi doesn't die under load, but god, what is that a terrible firmware... Right after installation, it downloads something from GitHub, and in some places it outputs stack traces due to some internal utilities, not to mention that UI was spoiled by gradients. (Upd. Looks like I just downloaded a dirty compiled snapshot with someone authored changes)

I wonder if there are any OpenWrt forks that focus exclusively on providing proprietary drivers?

This is potentially fix:

uci set firewall.cfg01e63d.flow_offloading='1'
uci set firewall.cfg01e63d.flow_offloading_hw='1'

At least, the problem does not reproducing under heavy load. I will continue testing.