Xiaomi WiFi Router 3G

@LESHIY_ODESSA
Thanks, I tried but it does not work because i already have 40 mhz

I am still slow and I have checked channel overlap, etc. Still getting about 15 - 40 down on both 2.5 and 5ghz. The other wireless A/P that I replaced was getting about 100 down on 2.4 and 190+ on 5ghz so something is up. Here is my config:

config wifi-device 'radio0’
option noscan '1’
option type 'mac80211’
option channel '11’
option hwmode '11g’
option path 'pci0000:00/0000:00:00.0/0000:01:00.0’
option htmode 'HT40’
option ht_coex '1’
option country ‘00’

config wifi-iface 'default_radio0’
option device 'radio0’
option network 'lan’
option mode 'ap’
option ssid 'miwireless’
option encryption 'psk2+ccmp’
option key ‘it is a secret’

config wifi-device 'radio1’
option type 'mac80211’
option channel '36’
option hwmode '11a’
option path 'pci0000:00/0000:00:01.0/0000:02:00.0’
option htmode 'VHT80’
option country ‘00’

config wifi-iface 'default_radio1’
option device 'radio1’
option network 'lan’
option mode 'ap’
option ssid 'miwireless_5G’
option encryption 'psk2+ccmp’
option key ‘it is a secret’

Set tx power to a fixed value, not auto

@hammer @LESHIY_ODESSA @dissent1
I think that the problem for 2.4 GHz is this
40mhz

All devices ALWAYS connect 20 MHz RX and 40MHz TX
Is definitely a bug, tried also with option noscan 1 but I repeat next to me theren't 2.4 GHz wireless networks.

That's actually proper behavior because you are mislead by RX and TX. Those values are represented router wise, so what's for a router is TX for you and your client device is RX.
So when you are downloading smth routers TX (yours RX) switches to 40mhz, but routers RX (yours TX) stays intact, because you are not uploading smth.

Try to upload smth and watch the behavior.

ok will give that a shot. I will try 14. Had it set at one point in time on an earlier build. Will see if that helps. Thanks.

Edit - interesting results:

5ghz - changed to channel 44 and set txpower to 20 and I am hitting 150 down now - so better. I did get close to 200 on another router.

2.4ghz - just set txpower to 20 and now getting 25 and other router was close to 100.

Still more room for improvement but much better. The tx power did make a difference and the channel change on 5ghz also made a difference.

Edit - my wireless speed is fluctuating a bit - now only getting 20 -40 on 5ghz and about that 2ghz. Very strange and inconsistent results is what I am seeing. My upload speed is sometimes even higher than my download speed. I also moved the router this morning to see if something was blocking the signal as I had it next to a tv - that did not help.

Thanks for your pacience, I tried everything but the RX is blocked at 20 MHz.
Same thing even with the DIR-860L it also uses mt76.

The problem is with six devices and not one, all compatible with 40 MHz channel width

This crash is definitely not limited to the Xiaomi router. I just had the same crash with a Linksys WRT3200ACM running LEDE Reboot SNAPSHOT r5432-2f1c05bb80 / LuCI Master (git-17.316.07773-4891dea). Crashed after five days uptime trying to access LuCI over wifi. Normally, I access it wired.

<1>[348667.887132] Unable to handle kernel paging request at virtual address 00060004
<1>[348667.894475] pgd = c0004000
<1>[348667.897279] [00060004] *pgd=00000000
<0>[348667.900966] Internal error: Oops: 817 [#1] SMP ARM
<4>[348667.905860] Modules linked in: nf_conntrack_ipv6 iptable_nat ipt_REJECT ipt_MASQUERADE xt_time xt_tcpudp xt_tcpmss xt_statistic xt_state xt_recent xt_nat xt_multiport xt_mark xt_mac xt_limit xt_length xt_hl xt_helper xt_ecn xt_dscp xt_conntrack xt_connmark xt_connlimit xt_connbytes xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_HL xt_DSCP xt_CLASSIFY nf_reject_ipv4 nf_nat_redirect nf_nat_masquerade_ipv4 nf_conntrack_ipv4 nf_nat_ipv4 nf_nat nf_log_ipv4 nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_rtcache nf_conntrack mwifiex_sdio mwifiex iptable_mangle iptable_filter ipt_ECN ip_tables hid evdev input_core mwlwifi mac80211 cfg80211 compat xt_set ip_set_list_set ip_set_hash_netiface ip_set_hash_netport ip_set_hash_netnet ip_set_hash_net ip_set_hash_netportnet ip_set_hash_mac ip_set_hash_ipportnet ip_set_hash_ipportip
<4>[348667.978295]  ip_set_hash_ipport ip_set_hash_ipmark ip_set_hash_ip ip_set_bitmap_port ip_set_bitmap_ipmac ip_set_bitmap_ip ip_set nfnetlink ip6t_REJECT nf_reject_ipv6 nf_log_ipv6 nf_log_common ip6table_mangle ip6table_filter ip6_tables x_tables regmap_mmio ecb cmac uhci_hcd ohci_platform ohci_hcd
<4>[348668.003468] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.9.65 #0
<4>[348668.009498] Hardware name: Marvell Armada 380/385 (Device Tree)
<4>[348668.015527] task: c0608cc0 task.stack: c0602000
<4>[348668.020164] PC is at detach_if_pending+0x44/0x8c
<4>[348668.024887] LR is at try_to_del_timer_sync+0x3c/0x58
<4>[348668.029957] pc : [<c006fffc>]    lr : [<c0070134>]    psr: 20000193
<4>[348668.029957] sp : c0603cc0  ip : d4f32c7c  fp : da09b0ac
<4>[348668.041656] r10: 00011050  r9 : 00001000  r8 : 00000000
<4>[348668.046987] r7 : 00000000  r6 : d4f32d00  r5 : d4f32d7c  r4 : dfbd02c0
<4>[348668.053626] r3 : 00060000  r2 : 00000001  r1 : d4f32c7c  r0 : d4f32d7c
<4>[348668.060267] Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment none
<4>[348668.067604] Control: 10c5387d  Table: 156d404a  DAC: 00000051
<0>[348668.073458] Process swapper/0 (pid: 0, stack limit = 0xc0602210)
<0>[348668.079574] Stack: (0xc0603cc0 to 0xc0604000)
<0>[348668.084036] 3cc0: dfbd02c0 c0070134 d4f32d7c 40000113 d4f32d00 d4f32d7c d4440000 c0070184
<0>[348668.092334] 3ce0: d4f32d00 c03d383c d4442400 d4440000 d4f32d00 d4440000 00000000 c03d3a88
<0>[348668.100633] 3d00: d4f32d00 d9868540 d4442400 c03e9f18 d4f32d00 c0603d1f 0000001a 01607690
<0>[348668.108931] 3d20: 00000000 00000000 00000008 d98685ec 00000000 c03892e0 c0603d40 d9868540
<0>[348668.117228] 3d40: d4f32d00 d4440064 da09b098 00000000 d4440000 00000001 00000000 c03e8f30
<0>[348668.125526] 3d60: 00000001 d5020002 dde5f59c c0603dac c0603dac c0603dcc d9868540 000001c6
<0>[348668.133824] 3d80: c0603dac 00000005 c0603dac d9868540 c0495fa0 c0607690 00000000 00000000
<0>[348668.142123] 3da0: 00000008 d98685ec 00000000 c03c8c30 d9868540 00000098 de7e9000 da09b000
<0>[348668.150422] 3dc0: 00000000 c03c90a4 00000008 00000001 80000000 c03c8e02 de7e9000 00000000
<0>[348668.158721] 3de0: 00000000 c0628380 d5668980 c03c8b70 d9868540 c03c930c 00000880 00000000
<0>[348668.167019] 3e00: 80000000 00000702 de7e9000 00000000 00000000 c0628380 d57cf4c0 c03c8c78
<0>[348668.175317] 3e20: d9868540 c0607c10 c03c90b4 de7e9000 d9868540 c0396734 d744d900 de7e905c
<0>[348668.183615] 3e40: e1580000 bf183fc4 00000002 d9868540 00000000 dfbd3830 00000001 00000002
<0>[348668.191913] 3e60: dfbd3788 00000000 00000040 c0603eb0 00000040 c0398a50 dfbd3830 dfbd3780
<0>[348668.200211] 3e80: c0601780 1f5d2000 00000001 c0603ea8 c0603eb0 c0399144 0000012c 02139e9c
<0>[348668.208509] 3ea0: c0604d00 c0606670 c0603ea8 c0603ea8 c0603eb0 c0603eb0 c0604080 c0602000
<0>[348668.216808] 3ec0: 40000003 00000008 c062e9c0 00000003 c0604080 c060408c 00000100 c002d364
<0>[348668.225106] 3ee0: df408000 c0602000 00200100 00000009 02139e9b c0603ee0 00000004 c0604d00
<0>[348668.233405] 3f00: ded3a160 00000000 00000000 c05ff088 0000002e df408000 c0602000 c0603fb8
<0>[348668.241702] 3f20: 00000001 c002d71c 00000000 c0061fc4 e0802100 c0605ae0 c0603f60 c0614f00
<0>[348668.250000] 3f40: e0803100 c0009428 c000f80c 60000013 ffffffff c0603f94 c0600168 c0012c8c
<0>[348668.258298] 3f60: 00000001 00000000 00000000 c001b1a0 00000000 c0602000 c0604fe4 00000001
<0>[348668.266596] 3f80: c0600168 00000000 c0603fb8 00000001 dfbd5c03 c0603fb0 c000f808 c000f80c
<0>[348668.274894] 3fa0: 60000013 ffffffff 00000051 00000000 00000000 c005b314 c062df40 00000000
<0>[348668.283193] 3fc0: 00000000 c05bec50 ffffffff ffffffff 00000000 c05be66c 00000000 c05eda28
<0>[348668.291491] 3fe0: c062e194 c0604fdc c05eda24 c0609db8 0000406a 0000807c 00000000 00000000
<4>[348668.299793] [<c006fffc>] (detach_if_pending) from [<c0070134>] (try_to_del_timer_sync+0x3c/0x58)
<4>[348668.308702] [<c0070134>] (try_to_del_timer_sync) from [<c0070184>] (del_timer_sync+0x34/0x54)
<4>[348668.317353] [<c0070184>] (del_timer_sync) from [<c03d383c>] (inet_csk_reqsk_queue_drop+0x9c/0x27c)
<4>[348668.326438] [<c03d383c>] (inet_csk_reqsk_queue_drop) from [<c03d3a88>] (inet_csk_complete_hashdance+0x6c/0xdc)
<4>[348668.336570] [<c03d3a88>] (inet_csk_complete_hashdance) from [<c03e9f18>] (tcp_check_req+0x304/0x394)
<4>[348668.345828] [<c03e9f18>] (tcp_check_req) from [<c03e8f30>] (tcp_v4_rcv+0x364/0x968)
<4>[348668.353603] [<c03e8f30>] (tcp_v4_rcv) from [<c03c8c30>] (ip_local_deliver_finish+0xc0/0x108)
<4>[348668.362163] [<c03c8c30>] (ip_local_deliver_finish) from [<c03c90a4>] (ip_local_deliver+0xb8/0xc8)
<4>[348668.371159] [<c03c90a4>] (ip_local_deliver) from [<c03c930c>] (ip_rcv+0x258/0x2b8)
<4>[348668.378850] [<c03c930c>] (ip_rcv) from [<c0396734>] (__netif_receive_skb_core+0x608/0x6dc)
<4>[348668.387237] [<c0396734>] (__netif_receive_skb_core) from [<c0398a50>] (process_backlog+0x7c/0x11c)
<4>[348668.396321] [<c0398a50>] (process_backlog) from [<c0399144>] (net_rx_action+0xe8/0x2ac)
<4>[348668.404448] [<c0399144>] (net_rx_action) from [<c002d364>] (__do_softirq+0xd0/0x204)
<4>[348668.412311] [<c002d364>] (__do_softirq) from [<c002d71c>] (irq_exit+0x94/0xb8)
<4>[348668.419653] [<c002d71c>] (irq_exit) from [<c0061fc4>] (__handle_domain_irq+0x90/0xb4)
<4>[348668.427603] [<c0061fc4>] (__handle_domain_irq) from [<c0009428>] (gic_handle_irq+0x50/0x94)
<4>[348668.436076] [<c0009428>] (gic_handle_irq) from [<c0012c8c>] (__irq_svc+0x6c/0x90)
<4>[348668.443675] Exception stack(0xc0603f60 to 0xc0603fa8)
<4>[348668.448834] 3f60: 00000001 00000000 00000000 c001b1a0 00000000 c0602000 c0604fe4 00000001
<4>[348668.457133] 3f80: c0600168 00000000 c0603fb8 00000001 dfbd5c03 c0603fb0 c000f808 c000f80c
<4>[348668.465429] 3fa0: 60000013 ffffffff
<4>[348668.469022] [<c0012c8c>] (__irq_svc) from [<c000f80c>] (arch_cpu_idle+0x2c/0x38)
<4>[348668.476541] [<c000f80c>] (arch_cpu_idle) from [<c005b314>] (cpu_startup_entry+0xf0/0x19c)
<4>[348668.484846] [<c005b314>] (cpu_startup_entry) from [<c05bec50>] (start_kernel+0x398/0x41c)
<0>[348668.493145] Code: e5903000 e5901004 e3530000 e5813000 (15831004)
<4>[348668.499350] ---[ end trace 5cdc9992b41c9eb0 ]---

Thanks but this is another problem.
With previous version of mt76 router reboots 4 times in 30 minutes without using LuCI.

Has anyone tested this commit?

Yes, running from 8h without kernel warnings and problems (Only 2.4 GHz RX 40 MHz channel width).
For now it is stable...

1 Like

So, is this commit will be included in tomorrow's snapshot release?

Just joined this club.:grin: (though had been lurking for quite a while)

Would like to add another confirmation that 2.4G 40MHz width not working. 5.8G all widths are ok for me.
Tested with Wifi Analyzer on Xiaomi Redmi Note 3 SD. (r5446-aec1b6b)

Thanks for your feedback at least I'm not alone :wink:

Probably not, the snapshots for this model hasn't built correctly for the last two weeks.

Since 22.11.17. there has not been a sucesfull build.
http://phase1.builds.lede-project.org/builders/ramips%2Fmt7621

It gets stuck on RE350 v1

Somebody has to make a bug report at least

Maybe I don't understand something (I just started to learn), but when I build manually from source I get images without any warning.
Or they are faulty? (I did not tried to flash them).
Buildbot doing something different?

Nope, it's because buildbot tries to build snapshots for entire arch/subarch (ramips/mt7612 in our case) and failure in build sequence for one device (RE350 in our case) affects (stops) snapshot generation for entire subarch. Quite annoying but we'll have to wait for devs to figure it out if we want download snapshots instead of building them by ourselves.

EDIT: I'm unsure where to submit buildbot errors (if there is any way to do it)

You can post them in LEDE-dev mailing list.
I will try building for RE350 and see where it fails in order to fix it

Manually building RE350 works without issues.
I dont know on what does buildbot fail then

1 Like

@nbd have fixed snapshot generation with this commit. Yay.

2 Likes