How to provide missing brcmsmac firmware (bcm43xx-0.fw) on Home Assistant OS 18.1 x86_64?

Hello,

I have been trying to get the internal Wi-Fi adapter working on Home Assistant OS and I have reached the point where I need advice from someone familiar with HAOS internals.

System

  • Home Assistant OS 18.1
  • Home Assistant Core 2026.7.1
  • x86_64
  • Installed on an Acer Aspire One 756 (internal SSD)

Wi-Fi adapter

Broadcom BCM4313

PCI ID:
14e4:4727

Driver:
brcmsmac

Current issue

The driver loads correctly but fails because the firmware cannot be found.

dmesg reports:

Direct firmware load for brcm/bcm43xx-0.fw failed with error -2

What I already checked

  • The Broadcom device is correctly detected.
  • The brcmsmac driver is loaded.
  • I downloaded the official firmware files:
    • bcm43xx-0.fw
    • bcm43xx_hdr-0.fw
  • The firmware files are accessible from a mounted USB stick.
  • Home Assistant OS root filesystem is read-only, so copying them into /lib/firmware/brcm is not possible.
  • Boot partition is mounted on /mnt/boot.
  • cmdline.txt exists.
  • GRUB is used during boot.

My question

I understand that Home Assistant OS is intentionally read-only, so I am not looking for unsupported hacks.

Is there an officially supported way to provide additional kernel firmware for brcmsmac on Home Assistant OS 18.x?

For example:

  • firmware_class.path
  • persistent firmware directory
  • bind mount
  • another supported mechanism

Or is BCM4313 simply unsupported because additional firmware cannot be installed?

If someone has successfully made a BCM4313 (PCI ID 14e4:4727) work on recent Home Assistant OS, I would really appreciate knowing how.

Thank you.

You may find this interesting - GitHub - home-assistant/buildroot: Buildroot fork with patches for Home Assistant OS · GitHub

Thanks for the suggestion. I’ll inspect the Home Assistant Buildroot configuration to see whether bcm43xx-0.fw is intentionally excluded or whether there is a supported way to include it. I’ll report back what I find.

Considering your inquiry is regarding Broadcom firmware, I would imagine it’s by careful design. Broadcom is extremely protective over their proprietary firmwares and they keep their blobs on 24/7 lockdown. It’s next to impossible to reverse-engineer them. I know this because I use OpenWrt and have seen many router boards get the cold shoulder because they use Broadcom chips. But if you can patch it in and get it to successfully work on your board, you’ll be able to request official support and have it added in.

Generally speaking, using WIFI on a server is discouraged anyway. HA is a server.
Something about it being better to have 24-7 uptime instead of interruptions due to beaming and RF interference, timeouts, and interference from competing nodes.
I guess nothing real important.