iodeOS wifi connection issues

I am unable to provide you details on the running kernel of the Cap XL.
I do know that RouterOS has a new WiFi stack (wifi-qcom-ac) which was not applied/installed during upgrade, so requires a manual migration of the configuration.
I’ll test it out as soon as I have some cycles.
As long as family is here, I can’t disrupt the WiFi for obivous reasons (kids :} ).

1 Like

in your case it was a wrong setting, if you want MAC filtering you have to disable the randomisation of MAC in the phone but this will expose your hardware MAC, all other people have a genuine problem that hasn’t been resolved yet

1 Like

I’m not sure if this has been covered, but it may be useful in narrowing down the source of the issue.

I took another mobile (Calyx OS) which was successfully connected to my router and selected the QR code on that device, to “share” the connection with the Brax3. The Brax3 accepted the QR code, and promptly fully connected to the RT-AC5300 router’s wifi. Then within seconds the Brax3 went from connected, to disconnected and reported the “check password” message.

I also found that the wifi extender method of connection to the router’s wifi only remains connected when the Brax3 is in range of the extender. Moving the device closer to the actual router and away from the extender causes the device to “handoff” the connection to the router successfully, whereupon it promptly disconnects with the same “check password” message.

2 Likes

*** UPDATING this comment continuously***

I suspect that the problem is in the calculation of the Master & Transient key and the checksum (MIC) in the 4-way handshake,

  1. this is from Huawei’s article, “Understanding WLAN Security Policies”, it explains the 2nd EAP message frame

“The STA calculates the PTK based on its own MAC address, MAC address of the AP, PMK, ANonce, and supplicant nonce (SNonce). Then the STA sends an EAPOL-Key frame to the AP. This frame carries the SNonce, robust security network element (RSNE), and message integrity code (MIC). The AP then calculates the PTK using its own MAC address, MAC address of the STA, PMK, ANonce, and SNonce, and validates the MIC to determine whether the STA’s PMK is the same as its own PMK.”

  1. those calculations are done by the “wpa_supplicant_8” daemon

https://gitlab.iode.tech/os/public/lineage/hardware_mediatek/-/tree/v6-staging/wpa_supplicant_8_lib

  1. this is a Python code for calculating those values

https://gist.github.com/c4mx/0f8eacea356ca01fc8315483ba348b23

3 Likes

Updated Brax phone with the August 3 and then the August 11 updates. Could not connect to Smart RG SR516ac router using WPA or WPA2 with either update. Thanks.

2 Likes

Looks like this is still an issue. I am dealing with the same issue. I suppose I will be waiting for the update with the bug fix.

1 Like

Can not connect with SFR box NB6VAC-FXC-r2, WPA/WPA2 ( TKIP et AES ) but I can connect on my dell PC hotspot.

1 Like

Then it’s ok with:
Cudy AX3000 router
2.4GHZ
WPA-PSK/WPA2-PSK
hidden SSID

Sorry, I was wrong: it was ok because SSID stopped to be hidden.
BraX3 still doesn’t see my hidden wifi.

Can you check your logs for wrong or invalid MIC ?

Also, ckeck whether you have a “PMK caching” setting and switch it to test whether it connects.

If the data sent in the 2nd handshake message is wrong then the router abandons the negotiation and you never go beyond the 2nd message.

Also, check for a setting “disable-pmkid”, change it and test again for connection.

1 Like

There is no caching option to set.

Already did. no change.

One of the guys from Mikrotik answered my mail and asked me to try out the wifi-qcom-ac package - as that is the current one. The Wireless package is the legacy one (old stuff).
I’ll need to check when I’ll find the time for that.

2 Likes

The ASUS RP-AC56 Wireless-AC1200 Dual-Band Access Point / Repeater / Media Bridge connects to the Brax3 without issue.

2 Likes

This is the first ASUS device reported as working. Can you give the version number (hopefully with build date) of the firmware? It could be that as it is an AP not a full fledged router that it is in a bit different category, but still nice to see one actually working :slight_smile:

1 Like

Certainly the errors we see are from wpa_supplicant in the debug logs we have been able to obtain.

But I am confused as to the original source for this, as the link you share is just a standalone file:

I believe this is the starting point to look at wpa_supplicant, I would like to see a bit more on the commit history with relation to what version is included at what kernel version, etc. but as a userspace app that means maybe it isn’t tied to the kernel itself.

And then we get back to this pernicious bug of LunarOS (A14 base) working whereas iodéOS doesn‘t (A15 base), even though the kernel is identical. So it goes in circles enough that I am just confused (but again I am not a developer at this level either :slight_smile: )

I am confused. For a “hidden wifi” you need to manually enter the SSID, so you mean when you do this then it isn’t found? This seems like a different issue.

To clarify, if the SSID is visible, then you can authenticate and use wifi normally?

The device is set to act as an access point.
Firmware 3.0.0.4.378_6797-g13c513d
Dated 2019/02/14

1 Like

https://www.asus.com/supportonly/rpac56/helpdesk_knowledge/
https://www.bhphotovideo.com/c/product/1196841-REG/asus_rp_ac56_wireless_ac1200_dual_band_access.html

Surprisingly, I got back to one of my Mikrotik devices, a RouterBOARD cAP 2nD access point, and it is working fine with the brax3, and I did not flash this one to OpenWRT, it is on stock RouterOS firmware, v6.42.12. I am just running it in bridge mode (no nat, no dhcp server, etc).

It is the new devices with new routeros using the old wireless package, that do not work.
Using the routeros-7.19.4-arm.npk + wifi-qcom-ac-7.19.4-arm.npk works connecting the brax3 just fine.

You just don’t have the old easy ap-bridge setup anymore. I’ll see how I’ll handle that part.

The specific mediatek_driver_cmd_nl80211.c file and its header mediatek_driver_nl80211.h sets some parameters for Mediatek, if you check the include files, the whole wpa_supplicant is assembled by various files in the external directory and the Linux kernel tree, this daemon is an essential part of the Linux system.

#include "netlink/genl/genl.h"

#include "common.h"
#include "config.h"
#include "driver_nl80211.h"
#include "linux_ioctl.h"
#include "wpa_supplicant_i.h"
#ifdef ANDROID
#include "android_drv.h"
#endif

#include "driver_i.h"
#include "mediatek_driver_nl80211.h"
#include "p2p/p2p_i.h"