commaai / agnos-builder

Build AGNOS, the operating system for your comma 3/3X
32 stars 52 forks source link

Wi-Fi networks with WPA3 are not supported #171

Open MarcoTheDingo opened 2 years ago

MarcoTheDingo commented 2 years ago

Wi-Fi networks using only the WPA3 security protocol are showing the 🚫 symbol next to them, and cannot be joined.

See the network "DingoAteYourBaby" in the attached screenshot, which is only using WPA3. The IOT network current connected, has the exact same settings, on the same Access Point, except it is using WPA2. Comma_WPA3

nelsonjchen commented 2 years ago

https://github.com/commaai/openpilot/blob/f6398ea7864779f621f84df65ded7ee083e72c09/selfdrive/ui/qt/offroad/wifiManager.cc#L147-L149

Probably just needs an extra flag added here.

I would also say this issue probably only applies to networks with WPA3 only.

adeebshihadeh commented 2 years ago

Great, want to open a PR and test it?

MarcoTheDingo commented 2 years ago

I am by no means a developer, but I did fork and add the flag in both networkmanager.h & wifiManager.cc. https://github.com/TheOfficialJosh/openpilot/tree/wifi-wpa3

It sees the network and allows me to type in the password, but it does not actually connect.

Accidentally closed this

MarcoTheDingo commented 2 years ago

Tested with two different Wi-Fi networks using only WPA3. It only saves the password, but never connects. Going to guess there's something more than these two lines.

Is there a log file I can provide to help with figuring it out?

incognitojam commented 2 years ago

I can replicate this on my comma three, and looking at the system logs doesn't give much information. I think we might just have to update the network manager package, which is already on the latest release available in apt for Ubuntu 20.04/agnos...

EDIT: If anyone wants to try and solve this I expect you'll need to temporarily add the jammy (22.04) package list to apt sources and upgrading network manager (remount / as rw and ro again after, and be warned upgrading any package might break your agnos! just try upgrading network manager alone)

adeebshihadeh commented 2 years ago

We build ModemManager from source, might have to do the same for NetworkManager.

adeebshihadeh commented 1 month ago

@andiradulescu you know if 24.04 fixes this for free?

andiradulescu commented 1 month ago

As it is, I kind of doubt it. I need to test - switching my router to WPA3 only - let's see what happens when I try to connect from 24.04.

andiradulescu commented 1 month ago

The WPA3 network appears in the list grayed out with a "forbidden" icon to the left of the right signal icon. I think I need to patch this in https://github.com/commaai/openpilot/pull/27824.

selfdrive/ui/qt/network/wifi_manager.cc: Unsupported network! sflag: 1, wpaflag: 0, rsnflag: 1160
andiradulescu commented 1 month ago

Patched wifi_manager.cc to be able to connect to my WPA3 SSID but it doesn't work:

selfdrive/ui/qt/network/wifi_manager.cc: DBus call error: "Did not receive a reply. Possible causes include: the remote
 application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the
 network connection was broken."

also tried with nmcli 1.46.0 in Ubuntu 24.04:

nmcli -v
nmcli tool, version 1.46.0

nmcli conn show
NAME                           UUID                                  TYPE      DEVICE
...
openpilot connection **redacted-ssid**  e5aea78d-42bb-4082-b4b8-d978c24098c9  wifi      --

ifconfig wlan0
wlan0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 00:0a:f5:90:e8:d4  txqueuelen 3000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

dmesg -w
...
[ 1819.334487] R0: [soft_irq][35058324353] [09:07:21.967314]  wlan: [0:E :SME] sme_8023_multicast_list: Invalid session: 0
[ 1819.339776] R0: [soft_irq][35058426523] [09:07:21.972635]  wlan: [0:E :SME] sme_8023_multicast_list: Invalid session: 0
[ 1836.334879] R0: [cds_mc_thread][35384732358] [09:07:38.967482]  wlan: [45934:E :SME] csr_get_active_scan_entry: 4978: Active list Empty scanId: 0
[ 1845.045532] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
compared to a connecting to a WPA2 wifi afterwards ``` [ 1882.834414] R0: [soft_irq][36277523518] [09:08:25.466340] wlan: [0:E :SME] sme_8023_multicast_list: Invalid session: 0 [ 1882.839890] R0: [soft_irq][36277628633] [09:08:25.471815] wlan: [0:E :SME] sme_8023_multicast_list: Invalid session: 0 [ 1882.903422] R0: [wpa_supplicant][36278848348] [09:08:25.535340] wlan: [3591:I :HDD] hdd_sme_roam_callback: 5141: Disabling queues [ 1882.903621] R0: [wpa_supplicant][36278852290] [09:08:25.535546] wlan: [3591:E :SME] csr_send_join_req_msg: 15855: Connecting to ssid:systeam bssid: 5c:02:14:b0:21:e2 rssi: -46 channel: 1 country_code: RO [ 1882.905370] R0: [cds_mc_thread][36278885837] [09:08:25.537293] wlan: [45934:I :WMI] send_vdev_start_cmd_tlv: vdev_id 0 freq 2412 chanmode 5 ch_info: 0x5 is_dfs 0 beacon interval 100 dtim 1 center_chan 2412 center_freq2 0 reg_info_1: 0x140000 reg_info_2: 0x1400, req->max_txpow: 0x14 Tx SS 2, Rx SS 2, ldpc_rx: 0 [ 1883.037358] R0: [cds_mc_thread][36281420020] [09:08:25.669280] wlan: [45934:I :WMA] wma_send_peer_assoc: vdev_id 0 associd 1 peer_flags 219006 nss 2 phymode 5 ht_caps 1ed [ 1883.037372] R0: [soft_irq][36281420316] [09:08:25.669295] wlan: [0:I :TRX] ol_txrx_enqueue_rx_frames: 5519: Data on the peer before it is registered bufq->curr 0 bufq->drops 0 [ 1883.044946] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready [ 1883.067431] R0: [soft_irq][36281997446] [09:08:25.699354] wlan: [0:E :SME] sme_8023_multicast_list: Invalid session: 0 [ 1883.072234] wlan: 00:0a:f5:90:e8:d4 connected to 5c:02:14:b0:21:e2 [ 1883.072298] R0: [cds_mc_thread][36282090912] [09:08:25.704221] wlan: [45934:I :HDD] hdd_send_peer_status_ind_to_oem_app: 716: OEM app is not registered(0) or pid is invalid(0) [ 1883.109110] R0: [wpa_supplicant][36282797636] [09:08:25.741030] wlan: [3591:I :HDD] hdd_print_netdev_txq_status: 18808: netdev tx queue[0] state: 0x0 [ 1883.109134] R0: [wpa_supplicant][36282798178] [09:08:25.741058] wlan: [3591:I :HDD] hdd_print_netdev_txq_status: 18808: netdev tx queue[1] state: 0x0 [ 1883.109154] R0: [wpa_supplicant][36282798556] [09:08:25.741077] wlan: [3591:I :HDD] hdd_print_netdev_txq_status: 18808: netdev tx queue[2] state: 0x0 [ 1883.109204] R0: [wpa_supplicant][36282798925] [09:08:25.741097] wlan: [3591:I :HDD] hdd_print_netdev_txq_status: 18808: netdev tx queue[3] state: 0x0 [ 1883.109224] R0: [wpa_supplicant][36282799904] [09:08:25.741148] wlan: [3591:I :HDD] hdd_print_netdev_txq_status: 18808: netdev tx queue[4] state: 0x0 [ 1883.109284] R0: [wpa_supplicant][36282801045] [09:08:25.741207] wlan: [3591:I :HDD] __wlan_hdd_cfg80211_disconnect: 18909: Disconnect request from user space with reason: 2 (WLAN_REASON_PREV_AUTH_NOT_VALID) internal reason code: 3 [ 1883.109334] R0: [wpa_supplicant][36282802027] [09:08:25.741258] wlan: [3591:I :HDD] wlan_hdd_disconnect: 18665: Disabling queues [ 1883.114688] R0: [cds_mc_thread][36282904744] [09:08:25.746608] wlan: [45934:W :WMA] wma_delete_bss: 5564: Outstanding msdu packets: 0 [ 1883.114861] R0: [cds_mc_thread][36282908133] [09:08:25.746785] wlan: [45934:E :WMA] Invalid wma_cli_set vdev command/Not yet implemented 0x75 [ 1883.128876] R0: [cds_mc_thread][36283177186] [09:08:25.760797] wlan: [45934:I :WMA] wma_remove_peer_by_reference: 1846: Deleting peer 5c:02:14:b0:21:e2 vdev id 0 [ 1883.128984] R0: [cds_mc_thread][36283179280] [09:08:25.760907] wlan: [45934:I :TRX] ol_txrx_peer_detach:peer fffffff77fedb800 (5c:02:14:b0:21:e2) [ 1883.144061] R0: [cds_mc_thread][36283468761] [09:08:25.775983] wlan: [45934:E :PE ] pe_delete_session: 683: session is not valid [ 1883.144316] R0: [cds_mc_thread][36283473675] [09:08:25.776239] wlan: [45934:I :HDD] hdd_dis_connect_handler: 1651: Disabling queues [ 1883.144473] R0: [cds_mc_thread][36283476684] [09:08:25.776396] wlan: [45934:E :QDF] cds_dump_current_concurrency: 3331: unexpected num_connections value 0 [ 1883.144496] R0: [cds_mc_thread][36283477107] [09:08:25.776418] wlan: [45934:E :QDF] cds_current_concurrency_is_mcc: 2145: unexpected num_connections value 0 [ 1883.144585] R0: [cds_mc_thread][36283478820] [09:08:25.776507] wlan: [45934:I :HDD] hdd_send_peer_status_ind_to_oem_app: 716: OEM app is not registered(0) or pid is invalid(0) [ 1883.145890] R0: [cds_mc_thread][36283503900] [09:08:25.777814] wlan: [45934:E :SME] sme_8023_multicast_list: Invalid session: 0 [ 1883.146291] R0: [cds_mc_thread][36283511585] [09:08:25.778214] wlan: [45934:E :WMA] vdev 0 is not up skipping limit_off_chan_param [ 1884.482324] R0: [wpa_supplicant][36309163332] [09:08:27.114223] wlan: [3591:I :HDD] hdd_sme_roam_callback: 5141: Disabling queues [ 1884.482635] R0: [wpa_supplicant][36309169372] [09:08:27.114537] wlan: [3591:E :SME] csr_send_join_req_msg: 15855: Connecting to ssid:systeam bssid: 5c:02:14:b0:21:e2 rssi: -47 channel: 1 country_code: US [ 1884.484246] R0: [cds_mc_thread][36309200267] [09:08:27.116146] wlan: [45934:I :WMI] send_vdev_start_cmd_tlv: vdev_id 0 freq 2412 chanmode 5 ch_info: 0x5 is_dfs 0 beacon interval 100 dtim 1 center_chan 2412 center_freq2 0 reg_info_1: 0x160000 reg_info_2: 0x1600, req->max_txpow: 0x16 Tx SS 2, Rx SS 2, ldpc_rx: 0 [ 1884.556783] R0: [cds_mc_thread][36310592959] [09:08:27.188681] wlan: [45934:I :WMA] wma_send_peer_assoc: vdev_id 0 associd 1 peer_flags 219006 nss 2 phymode 5 ht_caps 1ed [ 1884.559268] wlan: 00:0a:f5:90:e8:d4 connected to 5c:02:14:b0:21:e2 [ 1884.559332] R0: [cds_mc_thread][36310641980] [09:08:27.191235] wlan: [45934:I :HDD] hdd_send_peer_status_ind_to_oem_app: 716: OEM app is not registered(0) or pid is invalid(0) [ 1884.606551] R0: [wpa_supplicant][36311548510] [09:08:27.238449] wlan: [3591:W :SME] sme_ft_update_key: 359: Unhandled state: 0 [ 1884.607072] R0: [wpa_supplicant][36311558581] [09:08:27.238973] wlan: [3591:W :SME] sme_ft_update_key: 359: Unhandled state: 0 [ 1884.607309] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 1884.638117] R0: [cds_mc_thread][36312153935] [09:08:27.269981] wlan: [45934:I :SME] sme_ps_enable_auto_ps_timer: 1052: Start auto_ps_timer for 5000 ms [ 1884.638169] R0: [cds_mc_thread][36312155638] [09:08:27.270070] wlan: [45934:I :SME] ########### Set Key Complete ############# [ 1884.638558] R0: [cds_mc_thread][36312163114] [09:08:27.270459] wlan: [45934:I :WMI] send_per_roam_config_cmd_tlv: 12423: per roam enable=3, vdev=0 [ 1884.638881] R0: [cds_mc_thread][36312169300] [09:08:27.270781] wlan: [45934:I :WMI] send_roam_scan_offload_rssi_change_cmd_tlv: 12484: roam_scan_rssi_change_thresh=5, bcn_rssi_weight=14 [ 1884.638902] R0: [cds_mc_thread][36312169716] [09:08:27.270803] wlan: [45934:I :WMI] send_roam_scan_offload_rssi_change_cmd_tlv: 12486: hirssi_delay_btw_scans=15000 [ 1884.639014] R0: [cds_mc_thread][36312171877] [09:08:27.270916] wlan: [45934:I :WMI] WMI --> WMI_ROAM_AP_PROFILE and other parameters [ 1884.639055] R0: [cds_mc_thread][36312172655] [09:08:27.270956] wlan: [45934:I :WMI] 2412, [ 1884.639195] R0: [cds_mc_thread][36312175345] [09:08:27.271096] wlan: [45934:I :WMI] LFR3:OKC enabled [ 1884.639215] R0: [cds_mc_thread][36312175743] [09:08:27.271117] wlan: [45934:I :WMI] LFR3:PMKSA caching enabled [ 1884.648229] R0: [cds_mc_thread][36312347993] [09:08:27.280088] wlan: [45934:I :SME] sme_ps_enable_auto_ps_timer: 1052: Start auto_ps_timer for 5000 ms [ 1884.648263] R0: [cds_mc_thread][36312349384] [09:08:27.280161] wlan: [45934:E :QDF] qdf_mc_timer_start: Cannot start timer in state = 21 [ 1884.648291] R0: [cds_mc_thread][36312349917] [09:08:27.280188] wlan: [45934:W :SME] sme_ps_enable_auto_ps_timer: 1059: auto_ps_timer is already started [ 1884.648344] R0: [cds_mc_thread][36312350967] [09:08:27.280243] wlan: [45934:I :SME] ########### Set Key Complete ############# [ 1884.648741] R0: [cds_mc_thread][36312358585] [09:08:27.280640] wlan: [45934:E :WMA] Unhandled WMA message of type 4209 [ 1885.009332] R0: [networkctl][36319281910] [09:08:27.641224] wlan: [57654:E :HDD] hdd_is_rcpi_applicable: 4948: mac addr is different from bssid connected [ 1885.031507] R0: [NetworkManager][36319707668] [09:08:27.663399] wlan: [3560:E :HDD] hdd_is_rcpi_applicable: 4948: mac addr is different from bssid connected [ 1885.077194] R0: [iwconfig][36320584860] [09:08:27.709085] wlan: [57665:W :HDD] __hdd_ioctl: 7734: unknown ioctl 35587 [ 1885.090181] R0: [iwconfig][36320834205] [09:08:27.722072] wlan: [57665:W :HDD] __hdd_ioctl: 7734: unknown ioctl 35593 [ 1886.795832] R0: [cds_mc_thread][36353581139] [09:08:29.427616] wlan: [45934:I :HDD] hdd_local_unsafe_channel_updated: 8267: unsafe chan list same [ 1889.029450] R0: [NetworkManager][36396467816] [09:08:31.661265] wlan: [3560:E :HDD] hdd_is_rcpi_applicable: 4948: mac addr is different from bssid connected [ 1901.029431] R0: [NetworkManager][36626867499] [09:08:43.661072] wlan: [3560:E :HDD] hdd_is_rcpi_applicable: 4948: mac addr is different from bssid connected [ 1907.029880] R0: [NetworkManager][36742075895] [09:08:49.661420] wlan: [3560:E :HDD] hdd_is_rcpi_applicable: 4948: mac addr is different from bssid connected [ 1913.029222] R0: [NetworkManager][36857263587] [09:08:55.660690] wlan: [3560:E :HDD] hdd_is_rcpi_applicable: 4948: mac addr is different from bssid connected ```

So, it still doesn't work also in Ubuntu 24.04 with Network Manager 1.46.0