I've done some testing with the only other wifi device I have: a wifi hotspot on a Samsung Galaxy J7. The results are distressing. I am connected via my mac to the serial console to do this test.
Test 0: a working example using no encryption, which is literally the only way I can make it work:
root@Omega-76EB:/# cat /etc/config/wireless
config wifi-device 'ra0'
option type 'ralink'
option mode '9'
option channel 'auto'
option txpower '100'
option ht '20'
option country 'US'
option disabled '0'
config wifi-iface
option device 'ra0'
option network 'wlan'
option mode 'ap'
option encryption 'psk2'
option key '12345678'
option ssid 'Omega-76EB'
option ApCliSsid 'ma3a'
option ApCliEnable '1'
root@Omega-76EB:/# wifi
[ 602.092577] br-wlan: port 2(ra0) entered disabled state
[ 604.932461] EEPROM:Read from [factory] offset 0x0,length 0x400.
[ 607.378514] ch4 bssid=4c:5e:0c:a5:9d:c9
[ 607.382514] ch4 bssid=4e:5e:0c:a5:9d:c9
[ 607.386493] ch4 bssid=fc:3f:db:e0:7c:9d
[ 607.390503] ch6 bssid=ec:1a:59:2f:33:0c
[ 607.394483] ch11 bssid=14:ed:bb:ae:06:c2
[ 607.398570] ch11 bssid=a0:cb:fd:e6:05:d4
[ 607.402632] =====================================================
[ 607.408830] Channel 1 : Dirty = 72, False CCA = 0, Busy Time = 5309, Skip Channel = FALSE
[ 607.417121] Channel 2 : Dirty = 104, False CCA = 0, Busy Time = 18298, Skip Channel = FALSE
[ 607.425615] Channel 3 : Dirty = 120, False CCA = 0, Busy Time = 4822, Skip Channel = FALSE
[ 607.434020] Channel 4 : Dirty = 258, False CCA = 0, Busy Time = 4725, Skip Channel = FALSE
[ 607.442415] Channel 5 : Dirty = 128, False CCA = 0, Busy Time = 6423, Skip Channel = FALSE
[ 607.450809] Channel 6 : Dirty = 164, False CCA = 0, Busy Time = 4858, Skip Channel = FALSE
[ 607.459203] Channel 7 : Dirty = 144, False CCA = 0, Busy Time = 3109, Skip Channel = FALSE
[ 607.467581] Channel 8 : Dirty = 136, False CCA = 0, Busy Time = 2203, Skip Channel = FALSE
[ 607.475975] Channel 9 : Dirty = 80, False CCA = 0, Busy Time = 3525, Skip Channel = FALSE
[ 607.484281] Channel 10 : Dirty = 84, False CCA = 0, Busy Time = 3475, Skip Channel = FALSE
[ 607.492676] Channel 11 : Dirty = 160, False CCA = 0, Busy Time = 3693, Skip Channel = FALSE
[ 607.501151] =====================================================
[ 607.507331] Rule 1 CCA value : Min Dirtiness (Include extension channel) ==> Select Channel 1
[ 607.516070] Min Dirty = 72
[ 607.518826] ExChannel = 0 , 0
[ 607.521832] BW = 20
[ 607.859245] br-wlan: port 2(ra0) entered forwarding state
[ 607.864758] br-wlan: port 2(ra0) entered forwarding state
[ 609.858484] br-wlan: port 2(ra0) entered forwarding state
setting apcli
[ 614.543000] !!! APCLI LINK UP - IF(apcli0) AuthMode(0)=OPEN, WepStatus(1)=NONE!
Hey, I have internet. Let's test:
root@Omega-76EB:/# oupgrade
> Device Firmware Version: 0.1.9 b149
> Checking latest version online...
> Repo Firmware Version: 0.1.9 b149
> Comparing version numbers
> Device firmware is up to date!
It works! So I clear out the stuff in the /etc/config/network related to my AP and start from this:
root@Omega-76EB:/# cat /etc/config/wireless
config wifi-device 'ra0'
option type 'ralink'
option mode '9'
option channel 'auto'
option txpower '100'
option ht '20'
option country 'US'
option disabled '0'
config wifi-iface
option device 'ra0'
option network 'wlan'
option mode 'ap'
option encryption 'psk2'
option key '12345678'
option ssid 'Omega-76EB'
option ApCliEnable '1'
Now I use 'wifi-setup' to configure:
root@Omega-76EB:/# wifisetup
Onion Omega Wifi Setup
Select from the following:
1) Scan for Wifi networks
2) Type network info
q) Exit
Selection: 1
Scanning for wifi networks...
Select Wifi network:
1) foo
2) bar
3) DIRECT-9C-HP ENVY 7640 series
4) aviary
5) ATT5evH34Z
6) ma3a
Selection: 6
Network: ma3a
Authentication type: NONE
> Restarting wifimanager for changes to take effect
Here's what wifisetup did:
root@Omega-76EB:/# cat /etc/config/wireless
config wifi-device 'ra0'
option type 'ralink'
option mode '9'
option channel 'auto'
option txpower '100'
option ht '20'
option country 'US'
option disabled '0'
config wifi-iface
option device 'ra0'
option network 'wlan'
option mode 'ap'
option encryption 'psk2'
option key '12345678'
option ssid 'Omega-76EB'
option ApCliEnable '1'
config wifi-config
option ssid 'ma3a'
option encryption 'NONE'
Wifi doesn't work. What is the purpose of the wifi-config section if it doesn't actually make it work?
If I add back ApCliSsid 'ma3a', I can connect to my open hotspot.
root@Omega-76EB:/# wifi
[ 2092.302361] br-wlan: port 2(ra0) entered disabled state
[ 2095.943286] EEPROM:Read from [factory] offset 0x0,length 0x400.
[ 2098.399172] ch4 bssid=fa:8f:ca:82:e6:b0
[ 2098.403170] ch4 bssid=4c:5e:0c:a5:9d:c9
[ 2098.407151] ch4 bssid=4e:5e:0c:a5:9d:c9
[ 2098.411160] ch4 bssid=fc:3f:db:e0:7c:9d
[ 2098.415143] ch6 bssid=ec:1a:59:2f:33:0c
[ 2098.419140] ch11 bssid=a0:cb:fd:e6:05:d4
[ 2098.423211] ch11 bssid=14:ed:bb:ae:06:c2
[ 2098.427272] =====================================================
[ 2098.433470] Channel 1 : Dirty = 96, False CCA = 0, Busy Time = 8690, Skip Channel = FALSE
[ 2098.441770] Channel 2 : Dirty = 132, False CCA = 0, Busy Time = 17458, Skip Channel = FALSE
[ 2098.450272] Channel 3 : Dirty = 152, False CCA = 0, Busy Time = 30105, Skip Channel = FALSE
[ 2098.458796] Channel 4 : Dirty = 338, False CCA = 0, Busy Time = 31654, Skip Channel = FALSE
[ 2098.467284] Channel 5 : Dirty = 160, False CCA = 0, Busy Time = 23102, Skip Channel = FALSE
[ 2098.475766] Channel 6 : Dirty = 192, False CCA = 0, Busy Time = 4840, Skip Channel = FALSE
[ 2098.484165] Channel 7 : Dirty = 168, False CCA = 0, Busy Time = 4927, Skip Channel = FALSE
[ 2098.492560] Channel 8 : Dirty = 156, False CCA = 0, Busy Time = 14866, Skip Channel = FALSE
[ 2098.501036] Channel 9 : Dirty = 80, False CCA = 0, Busy Time = 3522, Skip Channel = FALSE
[ 2098.509340] Channel 10 : Dirty = 84, False CCA = 0, Busy Time = 3505, Skip Channel = FALSE
[ 2098.517718] Channel 11 : Dirty = 160, False CCA = 0, Busy Time = 4942, Skip Channel = FALSE
[ 2098.526192] =====================================================
[ 2098.532384] Rule 1 CCA value : Min Dirtiness (Include extension channel) ==> Select Channel 9
[ 2098.541118] Min Dirty = 80
[ 2098.543861] ExChannel = 0 , 0
[ 2098.546865] BW = 20
[ 2099.050186] br-wlan: port 2(ra0) entered forwarding state
[ 2099.055724] br-wlan: port 2(ra0) entered forwarding state
[ 2101.049001] br-wlan: port 2(ra0) entered forwarding state
setting apcli
root@Omega-76EB:/# [ 2106.504778] !!! APCLI LINK UP - IF(apcli0) AuthMode(0)=OPEN, WepStatus(1)=NONE!
Test 1: Same wifi hotspot, with WPA2 PSK enabled with password 'onioneer':
root@Omega-76EB:/# wifisetup
Onion Omega Wifi Setup
Select from the following:
1) Scan for Wifi networks
2) Type network info
q) Exit
Selection: 1
Scanning for wifi networks...
Select Wifi network:
1) foo
2) bar
3) DIRECT-9C-HP ENVY 7640 series
4) aviary
5) ma3a
6) ATT5evH34Z
Selection: 5
Network: ma3a
Authentication type: WPA2PSK
Enter password: onioneer
> Restarting wifimanager for changes to take effect
root@Omega-76EB:/#
root@Omega-76EB:/# [ 2301.775800] br-wlan: port 2(ra0) entered disabled state
[ 2303.481382] EEPROM:Read from [factory] offset 0x0,length 0x400.
[ 2305.937279] ch4 bssid=fa:8f:ca:82:e6:b0
[ 2305.941352] ch4 bssid=4c:5e:0c:a5:9d:c9
[ 2305.945333] ch4 bssid=4e:5e:0c:a5:9d:c9
[ 2305.949344] ch4 bssid=fc:3f:db:e0:7c:9d
[ 2305.953324] ch6 bssid=a0:cb:fd:e6:05:d4
[ 2305.957321] ch6 bssid=ec:1a:59:2f:33:0c
[ 2305.961295] =====================================================
[ 2305.967493] Channel 1 : Dirty = 96, False CCA = 0, Busy Time = 5501, Skip Channel = FALSE
[ 2305.975784] Channel 2 : Dirty = 152, False CCA = 0, Busy Time = 4922, Skip Channel = FALSE
[ 2305.984176] Channel 3 : Dirty = 176, False CCA = 0, Busy Time = 4949, Skip Channel = FALSE
[ 2305.992572] Channel 4 : Dirty = 366, False CCA = 0, Busy Time = 6759, Skip Channel = FALSE
[ 2306.000979] Channel 5 : Dirty = 192, False CCA = 0, Busy Time = 6697, Skip Channel = FALSE
[ 2306.009374] Channel 6 : Dirty = 282, False CCA = 0, Busy Time = 7005, Skip Channel = FALSE
[ 2306.017768] Channel 7 : Dirty = 160, False CCA = 0, Busy Time = 5408, Skip Channel = FALSE
[ 2306.026146] Channel 8 : Dirty = 136, False CCA = 0, Busy Time = 5476, Skip Channel = FALSE
[ 2306.034539] Channel 9 : Dirty = 48, False CCA = 0, Busy Time = 5635, Skip Channel = FALSE
[ 2306.042845] Channel 10 : Dirty = 40, False CCA = 0, Busy Time = 9320, Skip Channel = FALSE
[ 2306.051234] Channel 11 : Dirty = 0, False CCA = 0, Busy Time = 11808, Skip Channel = FALSE
[ 2306.059622] =====================================================
[ 2306.065802] Rule 1 CCA value : Min Dirtiness (Include extension channel) ==> Select Channel 11
[ 2306.074630] Min Dirty = 0
[ 2306.077292] ExChannel = 0 , 0
[ 2306.080297] BW = 20
[ 2306.587848] br-wlan: port 2(ra0) entered forwarding state
[ 2306.593363] br-wlan: port 2(ra0) entered forwarding state
[ 2308.587124] br-wlan: port 2(ra0) entered forwarding state
[ 2341.249786] br-wlan: port 2(ra0) entered disabled state
[ 2344.979038] EEPROM:Read from [factory] offset 0x0,length 0x400.
[ 2347.434903] ch4 bssid=fa:8f:ca:82:e6:b0
[ 2347.438901] ch4 bssid=4c:5e:0c:a5:9d:c9
[ 2347.442882] ch4 bssid=4e:5e:0c:a5:9d:c9
[ 2347.446891] ch4 bssid=fc:3f:db:e0:7c:9d
[ 2347.450874] ch6 bssid=a0:cb:fd:e6:05:d4
[ 2347.454869] ch6 bssid=ec:1a:59:2f:33:0c
[ 2347.458850] ch11 bssid=14:ed:bb:ae:06:c2
[ 2347.462912] =====================================================
[ 2347.469110] Channel 1 : Dirty = 96, False CCA = 0, Busy Time = 7008, Skip Channel = FALSE
[ 2347.477416] Channel 2 : Dirty = 152, False CCA = 0, Busy Time = 5304, Skip Channel = FALSE
[ 2347.485810] Channel 3 : Dirty = 176, False CCA = 0, Busy Time = 5908, Skip Channel = FALSE
[ 2347.494188] Channel 4 : Dirty = 366, False CCA = 0, Busy Time = 5759, Skip Channel = FALSE
[ 2347.502600] Channel 5 : Dirty = 192, False CCA = 0, Busy Time = 6998, Skip Channel = FALSE
[ 2347.510989] Channel 6 : Dirty = 282, False CCA = 0, Busy Time = 6481, Skip Channel = FALSE
[ 2347.519383] Channel 7 : Dirty = 180, False CCA = 0, Busy Time = 4578, Skip Channel = FALSE
[ 2347.527777] Channel 8 : Dirty = 160, False CCA = 0, Busy Time = 5486, Skip Channel = FALSE
[ 2347.536170] Channel 9 : Dirty = 76, False CCA = 0, Busy Time = 4558, Skip Channel = FALSE
[ 2347.544517] Channel 10 : Dirty = 72, False CCA = 0, Busy Time = 5259, Skip Channel = FALSE
[ 2347.552915] Channel 11 : Dirty = 70, False CCA = 0, Busy Time = 5693, Skip Channel = FALSE
[ 2347.561297] =====================================================
[ 2347.567490] Rule 1 CCA value : Min Dirtiness (Include extension channel) ==> Select Channel 11
[ 2347.576318] Min Dirty = 70
[ 2347.579061] ExChannel = 0 , 0
[ 2347.582066] BW = 20
[ 2348.095648] br-wlan: port 2(ra0) entered forwarding state
[ 2348.101164] br-wlan: port 2(ra0) entered forwarding state
[ 2350.094773] br-wlan: port 2(ra0) entered forwarding state
root@Omega-76EB:/# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
ping: sendto: Network unreachable
So we're not connected. Let's check the config:
root@Omega-76EB:/# cat /etc/config/wireless
config wifi-device 'ra0'
option type 'ralink'
option mode '9'
option channel 'auto'
option txpower '100'
option ht '20'
option country 'US'
option disabled '0'
config wifi-iface
option device 'ra0'
option network 'wlan'
option mode 'ap'
option encryption 'psk2'
option key '12345678'
option ssid 'Omega-76EB'
option ApCliSsid 'ma3a'
option ApCliPassWord 'onioneer'
option ApCliAuthMode 'WPA2PSK'
option ApCliEnable '0'
config wifi-config
option ssid 'ma3a'
option encryption 'WPA2PSK'
option key 'onioneer'
It set ApCliEnable to 0.. but... wait? It added all the ApCli options, which it didn't do before with the open wifi network?
Let's see what happens now:
root@Omega-76EB:/# wifi
[ 2436.278165] br-wlan: port 2(ra0) entered disabled state
[ 2437.680479] EEPROM:Read from [factory] offset 0x0,length 0x400.
[ 2440.129597] ch4 bssid=fa:8f:ca:82:e6:b0
[ 2440.133597] ch4 bssid=4c:5e:0c:a5:9d:c9
[ 2440.137576] ch4 bssid=4e:5e:0c:a5:9d:c9
[ 2440.141588] ch4 bssid=fc:3f:db:e0:7c:9d
[ 2440.145569] ch6 bssid=ec:1a:59:2f:33:0c
[ 2440.149570] ch6 bssid=a0:cb:fd:e6:05:d4
[ 2440.153544] =====================================================
[ 2440.159743] Channel 1 : Dirty = 96, False CCA = 0, Busy Time = 6267, Skip Channel = FALSE
[ 2440.168034] Channel 2 : Dirty = 152, False CCA = 0, Busy Time = 4228, Skip Channel = FALSE
[ 2440.176427] Channel 3 : Dirty = 176, False CCA = 0, Busy Time = 5831, Skip Channel = FALSE
[ 2440.184821] Channel 4 : Dirty = 366, False CCA = 0, Busy Time = 6312, Skip Channel = FALSE
[ 2440.193215] Channel 5 : Dirty = 192, False CCA = 0, Busy Time = 7106, Skip Channel = FALSE
[ 2440.201624] Channel 6 : Dirty = 282, False CCA = 0, Busy Time = 12547, Skip Channel = FALSE
[ 2440.210109] Channel 7 : Dirty = 160, False CCA = 0, Busy Time = 8690, Skip Channel = FALSE
[ 2440.218487] Channel 8 : Dirty = 136, False CCA = 0, Busy Time = 5071, Skip Channel = FALSE
[ 2440.226882] Channel 9 : Dirty = 48, False CCA = 0, Busy Time = 4535, Skip Channel = FALSE
[ 2440.235189] Channel 10 : Dirty = 40, False CCA = 0, Busy Time = 7257, Skip Channel = FALSE
[ 2440.243587] Channel 11 : Dirty = 0, False CCA = 0, Busy Time = 5416, Skip Channel = FALSE
[ 2440.251885] =====================================================
[ 2440.258062] Rule 1 CCA value : Min Dirtiness (Include extension channel) ==> Select Channel 11
[ 2440.266890] Min Dirty = 0
[ 2440.269553] ExChannel = 0 , 0
[ 2440.272558] BW = 20
[ 2440.781649] br-wlan: port 2(ra0) entered forwarding state
[ 2440.787205] br-wlan: port 2(ra0) entered forwarding state
[ 2442.779429] br-wlan: port 2(ra0) entered forwarding state
setting apcli
root@Omega-76EB:/#
root@Omega-76EB:/# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
ping: sendto: Network unreachable
Gutter ball!
Is anyone from Onion watching this thread? I want to help diagnose this problem but all we have so far in this thread is conjecture.