Belkin RT3200/Linksys E8450 WiFi AX discussion

anyone have any luck enabling 160mhz for the 5ghz interface?

Yes. Read the thread! Set channel to 36 and it works. But throughput seems no better and mesh doesn't work.

meh that's disappointing. 160 on unused spectrum would be lovely.

1 Like

You could just change the u-boot bootcmd parameter to not boot into recovery, I.e. don’t check for pstore contents.

1 Like

Dear @daniel @hnyman,

My replacement arrived. I have rebooted many times and no issues. So really does seem like the issue was some form of hardware failure, albeit I wonder if perhaps it still could have been managed in software if chip could have been powered down and back up in software.

For those of you asking about using 160MHz on the low interference channels --

I'm running 160MHZ on the DFS channel block (100-166) with the following configuration and it's working great with two RT3200s (one as a router and the other as a wired AP) both on the same channel with DAWN. Stability is good and both 2.4Ghz and 5Ghz channels are using the same SSID and my devices seem to roam ok. I've only had it up for 2 days though and I have yet to migrate my IoT devices over from my old network so I can't say how it will hold up in the long run.

config wifi-device 'radio0'
        option type 'mac80211'
        option path 'platform/18000000.wmac'
        option channel '1'
        option band '2g'
        option htmode 'HT20'
        option cell_density '0'
        option country 'US'
        option txpower '13'
        option disabled '0'

config wifi-device 'radio1'
        option type 'mac80211'
        option path '1a143000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0'
        option band '5g'
        option hwmode '11a'
        option channels '36-52, 100-166'
        option ht_capab 'ieee80211h'
        option cell_density '0'
        option htmode 'HE160'
        option channel '112'
        option country 'US'
        option disabled '0'

config wifi-iface 'default_radio1'
        option device 'radio1'
        option network 'lan'
        option mode 'ap'
        option encryption 'sae-mixed'
        option ieee80211k '1'
        option ieee80211v '1'
        option skip_inactivity_poll '1'
        option ieee80211r '1'
        option ft_over_ds '1'
        option ft_psk_generate_local '1'
        option ieee80211w '1'
        option key 'xxxxxxxx'
        option ssid 'xxxxxxxx'
        option disabled '0'

config wifi-iface 'wifinet2'
        option device 'radio0'
        option mode 'ap'
        option network 'lan'
        option encryption 'sae-mixed'
        option ieee80211k '1'
        option ieee80211v '1'
        option ieee80211r '1'
        option ft_over_ds '1'
        option ft_psk_generate_local '1'
        option ieee80211w '1'
        option key 'xxxxxxx'
        option ssid 'xxxxxxxx'
        option disabled '0'

The only test that I did was to connect one RT3200 as a client to the other on a 160MHz wide channel since I don't have any AX-enabled devices. Throughput was around 500-600Mbps which seems higher than what I can usually achieve out of 802.11ac 80MHz (~400-500Mbps)

1 Like

One of my routers started playing up, just saw the following in the logs:

Oct  6 15:39:49 router-mesh kernel: [ 1476.190032] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000053
Oct  6 15:39:49 router-mesh kernel: [ 1476.198853] Mem abort info:
Oct  6 15:39:49 router-mesh kernel: [ 1476.201655]   ESR = 0x96000005
Oct  6 15:39:49 router-mesh kernel: [ 1476.204700]   EC = 0x25: DABT (current EL), IL = 32 bits
Oct  6 15:39:49 router-mesh kernel: [ 1476.210002]   SET = 0, FnV = 0
Oct  6 15:39:49 router-mesh kernel: [ 1476.213054]   EA = 0, S1PTW = 0
Oct  6 15:39:49 router-mesh kernel: [ 1476.216188] Data abort info:
Oct  6 15:39:49 router-mesh kernel: [ 1476.219060]   ISV = 0, ISS = 0x00000005
Oct  6 15:39:49 router-mesh kernel: [ 1476.222895]   CM = 0, WnR = 0
Oct  6 15:39:49 router-mesh kernel: [ 1476.225865] user pgtable: 4k pages, 39-bit VAs, pgdp=0000000041722000
Oct  6 15:39:49 router-mesh kernel: [ 1476.232322] [0000000000000053] pgd=0000000000000000, p4d=0000000000000000, pud=0000000000000000

Only remedy is a reboot.
Im running OpenWrt SNAPSHOT r17677-f82c93b93c, I was running one or 2 builds before this one and decided to upgrade to see if the problem would stop.
Managed to get a week without any issue but looks like there's something else going on.
Anything I can grab that could help in troubleshooting?

Edit: I have 2 routers and just realised both are doing this.
Edit2: Just saw these have been reported before ( I search for mem abort info and that's why I haven't seen it).

I'm seeing the same thing, don't have any logs unfortunately, but with hardware flow offloading enabled there are one or two crashes a day, with hardware flow offloading disabled (software flow still enabled) there aren't any crashes.

Is there any reason not to modify the logic of u-boot boodcmd’s parameters to ignore the content of pstore?

My RT3200 also boots into recovery about every three days and I’m not always available to fix it.

Well, the current behaviour (of booting into recovery if pstore present) is @daniel 's explicit choice for this router. It may well be suited for development, debugging & error reporting in the development phase, but it may be strange for end-users who merely wish that the router recovers automatically. Personally I am not sure if that should remain the default when the router gets into the next release...

To my knowledge there is no real reason not to simplify the bootcmd, and daniel himself mentions the possibility in

1 Like

When data is stored in pstore and pstore isn’t being checked by u-boot, if there is another crash, what happens to the previous files stored in pstore?

I don’t want to lose the pstore data because it likely contains some valuable debug data, but I can’t keep having the router boot into recovery mode when I’m not home to fix it (I don’t live alone)

It would be gone, clobbered by the new data.

PSTORE has several slots for logs to be stored, so up to a certain point they would accumulate (represented as files in /sys/fs/pstore/).


As I understand it, ramoops are implemented with a ciruclar buffer design. The mt7622 DTS is configured with a 64KiB buffer, and with an average dmesg log taking around 10Kib?, it probably can take 6 kernel panics before any over-writing will occur.

I'm having issues installing the non-UBI on a Belkin RT3200 running the stock firmware ( I install the firmware via the WEB API - I've downloaded snapshot r17688-d69bf6601e - but the upgrade always fails.
On the terminal I see:

[    0.984606] nand: found bad block 0x3b
[    0.988477] nand: found bad block 0x3c
[    0.992223] nand: FATAL ERR: too many bad blocks!!
[    0.997199] 12 fixed-partitions partitions found on MTD device 1100d000.snfi
[    1.004246] Creating 12 MTD partitions on "1100d000.snfi":
[    1.009734] 0x000000000000-0x000000080000 : "Preloader"
[    1.015802] 0x000000080000-0x0000000c0000 : "ATF"
[    1.020999] 0x0000000c0000-0x000000140000 : "u-boot"
[    1.026692] 0x000000140000-0x0000001c0000 : "u-boot-env"
[    1.032717] 0x0000001c0000-0x0000002c0000 : "factory"
[    1.039002] 0x000000300000-0x000000320000 : "devinfo"
[    1.044395] 0x000000320000-0x000000340000 : "senv"
[    1.049542] 0x000000360000-0x000000380000 : "bootseq"
[    1.054923] 0x000000500000-0x000002300000 : "firmware1"
[    1.090070] read error in "firmware1" at offset 0x0
[    1.094946] 0x000002300000-0x000004100000 : "firmware2"
[    1.130222] 0x000004100000-0x000005a00000 : "data"
[    1.160100] 0x000005a00000-0x000006e00000 : "mfg"

Followed by:

[    2.163017] UBI error: no valid UBI magic found inside mtd10
[    2.169384] Waiting 1 sec before mounting root device...
[    3.208742] /dev/root: Can't open blockdev
[    3.212832] VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
[    3.220316] Please append a correct "root=" boot option; here are the available partitions:
[    3.228673] 1f00             512 mtdblock0 
[    3.228675]  (driver?)
[    3.235198] 1f02             256 mtdblock1 
[    3.235199]  (driver?)
[    3.241726] 1f04             512 mtdblock2 
[    3.241728]  (driver?)
[    3.248251] 1f06             512 mtdblock3 
[    3.248253]  (driver?)
[    3.254780] 1f08            1024 mtdblock4 
[    3.254782]  (driver?)
[    3.261309] 1f0a             128 mtdblock5 
[    3.261311]  (driver?)
[    3.267833] 1f0c             128 mtdblock6 
[    3.267835]  (driver?)
[    3.274366] 1f0e             128 mtdblock7 
[    3.274368]  (driver?)
[    3.280894] 1f10           30720 mtdblock8 
[    3.280896]  (driver?)
[    3.287418] 1f12           30720 mtdblock9 
[    3.287420]  (driver?)
[    3.293949] 1f14           25600 mtdblock10 
[    3.293951]  (driver?)
[    3.300564] 1f16           20480 mtdblock11 
[    3.300566]  (driver?)
[    3.307175] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

It does this three times followed by a reboot and eventually reverts to the manufacturer firmware.
The AP hasn't been meddled with in any way (other than opening the case to add a serial connection :wink:
Any suggestions please?

Today my router crashed in the middle of a videocall, I had to power cycle it to continue the call so I was unable to gather the logs.

IIRC it had 4 days of uptime.

PD: Also waiting for mt76 update on OpenWrt master.

where are you gents getting your e8450/rt3200s from and what did everyone pay for them may i ask? I see a few 3200s on ebay just shy of $100, and E8450s on amazon for $150.

I got my two RT3200 directly from Belkin for $99 ($100 for free shipping).

I used coupons to reduce the price, but all were 10%, so I added cheap stuff to get the total to $100 instead of paying the $10 for shipping.

Updated to snapshot r17688-d69bf6601e and no longer have my 5ghz radio. What's the procedure?