linux icon indicating copy to clipboard operation
linux copied to clipboard

brcmfmac drops low-ACK IoT clients (Eve Outdoor Cam) in AP bridge mode – hostapd disassoc loop

Open GillesWi opened this issue 2 months ago • 0 comments

Describe the bug

When the built-in Broadcom Wi-Fi (brcmfmac) on Raspberry Pi is used as an access point in bridge mode (br0), low-power clients like the Eve Outdoor Cam (HomeKit) associate successfully but disconnect after ~3–5 s, repeating indefinitely. All hostapd tuning options (disassoc_low_ack=0, beacon_int=200, dtim_period=3, etc.) have no effect. This happens reliably on every Pi with brcmfmac, but not with external USB Wi-Fi adapters (Realtek/Mediatek).

Hardware / OS / Software • Device: Raspberry Pi (integrated Broadcom Wi-Fi) • Kernel driver: brcmfmac (modules seen: brcmfmac, brcmutil, cfg80211) • hostapd used via RaspAP • hostapd config (the actual file used is included below) • avahi/Bonjour is running on the Pi (used for HomeKit mDNS) • Example affected device: Eve Outdoor Cam (HomeKit) • Observed interface used for AP: wlan0 (built-in)

Tried every hostapd.conf

driver=nl80211 ctrl_interface=/var/run/hostapd ctrl_interface_group=0 auth_algs=1 wpa_key_mgmt=WPA-PSK beacon_int=200 disassoc_low_ack=0 ssid=Secret channel=6 hw_mode=g ieee80211n=0 wmm_enabled=1 wpa_passphrase=secret interface=wlan0 bridge=br0 wpa=2 wpa_pairwise=CCMP country_code=BE ignore_broadcast_ssid=0 deny_mac_file=/etc/hostapd.deny dtim_period=3

Steps to reproduce the behaviour

Steps to reproduce

Start from a fresh RaspAP installation on a Raspberry Pi (Pi 4 or 5). In RaspAP → Networking → Bridged AP mode, bridge the built-in Wi-Fi (wlan0) to the main router interface (eth0) so you have br0. Use default hostapd.conf Make sure mDNS (Avahi) is running (HomeKit depends on it). Reboot the Pi, confirm the AP is active (sudo systemctl status hostapd). On an Apple Home hub (iPhone, iPad, or HomePod), connect to the wifi SSID. Power on an Eve Outdoor Cam and add it via the Home app. Watch the live log: sudo journalctl -fu hostapd → You’ll see the camera associate successfully, then disassociate 3–5 s later, and this repeats indefinitely.

Device (s)

Raspberry Pi 5

System

Raspberry PI OS bookworm (up to date)

Logs

sudo journalctl -u hostapd --no-pager -n 500 sudo dmesg -T | grep brcmfmac uname -a

The camera associates and then disassociates every 3–5 s:

wlan0: STA 00:0c:6c:11:37:e6 IEEE 802.11: associated wlan0: STA 00:0c:6c:11:37:e6 IEEE 802.11: disassociated

Additional context

✅ Expected behavior

Low-power clients should remain connected when disassoc_low_ack=0 is set.

lsmod | grep brcmfmac brcmfmac_wcc 49152 0 brcmfmac 376832 1 brcmfmac_wcc brcmutil 49152 1 brcmfmac cfg80211 1032192 1 brcmfmac

GillesWi avatar Oct 27 '25 19:10 GillesWi