On a laptop running Linux Mint, I can run these commands to stand up a WiFi hotspot:
nmcli con add type wifi ifname [interface name] con-name test_ssid autoconnect yes ssid test_ssid
nmcli con modify test_ssid 802-11-wireless.mode ap ipv4.method shared
nmcli con modify test_ssid wifi-sec.key-mgmt wpa-psk
nmcli con modify test_ssid 802-11-wireless-security.pairwise ccmp
nmcli con modify test_ssid 802-11-wireless-security.group ccmp
nmcli con modify test_ssid wifi-sec.psk [password]
The resulting test_ssid
can be joined by iPhone, Windows, and even Intel MacBook Pros running macOS 12.6. But it can't be joined by an M1 MacBook Pro running macOS 13.0. Does anyone know why, or if there's a way to get M1 Macs to join Linux WiFi hotspots, or if there's a way to get debug output from the connection attempt? When I try to join the network from the M1 MBP, it says The Wi-Fi network "test_ssid" requires a WPA3 Personal.
, which is odd.
Additional context from my SuperUser post:
I've checked the logs at /var/log/wifi.log
which weren't helpful, nor were the diagnostics as far as I could tell, but I did find more useful logs by running log stream --predicate '(processImagePath contains "airportd")'
. Viewing that output while attempting to join the network, I see messages like Failed to associate to Wi-Fi network test_ssid on interface en0, returned error code -3906
. Looking at CoreWLANTypes.h
, I see that -3906 is kCWUnspecifiedFailureErr
.
In the comments of that same header file, kCWUnspecifiedFailureErr
is described as Access point did not specify a reason for authentication/association failure
. So I figured I'd check the access point end of things. If I tail -f /var/log/syslog
on the Linux machine/hotspot, I can see when other clients associate/disassociate, but nothing happens at all when the M1 MBP tries to join.