Internal Wi-Fi card not detected / No Wi-Fi driver?

Hello! I’m new to HA; hope this is the right place to ask for help.

I installed the generic HA image on an old Toshiba Laptop. It runs great, but Wi-Fi does not work. I really want to use it, but it’s not detected.

I tried Ubuntu 21.10 and Wi-Fi works out of the box. Fn + F12 toggles Wi-Fi and a red LED indicator on/off, so I made sure it is turned on.

  • ‘netstat -i’ shows: wlp1s0, enp2s0 and lo

In HA all terminal commands show the Ethernet card, but the Wireless card is not detected. The key combo also works here and it’s turned on.

  • ‘ha network info’ shows only Ethernet
  • ‘ha hardware info’ shows this (pastebin)
  • ‘nestat -i’ shows: docker0, enp2s0, hassio, lo and 6 times ‘veth____’
  • ‘nmcli radio’ shows everything is enabled
  • ‘nmcli device wifi rescan’ finds no device
  • ‘nmcli con show’ shows the connection I set up in the config file (and the Ethernet connection)

I got more information while running Ubuntu:

Edit: I also tried running HA as a VM in Ubuntu and bridging WiFi. It works, but it gets disconnected after 30-40 minutes for some reason.

I guess HA doesn’t have the driver I need? I don’t really know how drivers work in Linux. Is it possible to install it? Can I copy some files from Ubuntu to enable it?

I appreciate any piece of advice and I hope this thread will be helpful to other people too.

What Linux are you using under the generic HA image?

➜ ~ cat /etc/*-release

3.14.3
NAME=“Alpine Linux”
ID=alpine
VERSION_ID=3.14.3
PRETTY_NAME=“Alpine Linux v3.14”
HOME_URL=“https://alpinelinux.org/
BUG_REPORT_URL=“https://bugs.alpinelinux.org/

Shouldn’t this be the same for everybody?

Alpine Linux seems to include the Atheros drivers in the kernel, so there should be no extra files needed.

I was asking about the Linux distro, because some run a docker on a debian or ubuntu and then I might know what is going on.
Alpine Linux is a not a mainstream Linux and I am a bit lost then.

I hope someone else can help you, otherwise I suggest you go for a debian or ubuntu and then install a core or docker on top of that.

1 Like

Thanks for replying!

I will do some more research, then I will try the alternative installation methods, on top of Debian.

I will update if it goes well. Thank you!

What can you see when you run dmesg | grep ath ?
That should show driver registering interface
Mine shows up as follows:

marcin@Inspiron3521:~$ dmesg | grep ath
[    3.269085] systemd[1]: Reached target Paths.
[    4.721759] ath: phy0: WB335 1-ANT card detected
[    4.721763] ath: phy0: Set BT/WLAN RX diversity capability
[    4.781589] ath: phy0: Enable LNA combining
[    4.783080] ath: phy0: ASPM enabled: 0x43
[    4.783085] ath: EEPROM regdomain: 0x60
[    4.783086] ath: EEPROM indicates we should expect a direct regpair map
[    4.783089] ath: Country alpha2 being used: 00
[    4.783091] ath: Regpair used: 0x60
[    4.948077] ath9k 0000:08:00.0 wlp8s0: renamed from wlan0
[    5.104546] usbcore: registered new interface driver ath3k

I have then wlp8s0 interface created which is wireless.
In linux distributions based on debian you need to install firmware-atheros package to get this running, I believe.

I don’t know alpine linux and can’t find atheros on pkgs webpage. Perhaps you ask on alpine forums. If you are not using alpine for a specific purpose I would recommend you install debian / ubuntu, as there is plenty of documentation on setting up things and debian is quite commonly used for server applications.

I am new to home assistant and I installed supervised mode starting from minimal debian installation. Pretty straightforward based on guides you can find online.

I am using dell laptop for home assistant and found a problem with wifi too. Wpa_supplicant created issues on reboot, which I was unable to fully work out. I decided to switch to ethernet and I would recommend it too - zero network connectivity problems since then

1 Like

Thank you for the input!

Running the command shows nothing relevant.

➜  ~ dmesg | grep ath
[    2.381242] systemd[1]: Reached target Paths.
➜  ~ dmesg | grep interface
[    0.253228] usbcore: registered new interface driver usbfs
[    0.253249] usbcore: registered new interface driver hub
[    0.253309] mc: Linux media interface: v0.10
[    0.253325] videodev: Linux video capture interface: v2.00
[    0.823127] Linux agpgart interface v0.103
[    0.931859] usbcore: registered new interface driver usblp
[    0.933781] usbcore: registered new interface driver usb-storage
[    0.935720] usbcore: registered new interface driver usbserial_generic
[    1.001749] usbcore: registered new interface driver usbhid
[    3.366066] usbcore: registered new interface driver uvcvideo

I am not using Alpine intentionally. It’s just the generic HA OS image.

Will try Supervised on Debian soon!

Supervised on Debian was not hard to set up.

Wi-Fi works out of the box and it survived the night without disconnecting!

Thanks everybody!! Wish you well

I am in much the same boat. I have an HP t620 Thin Client and I have installed the INTEL NUC version - everything seems to be working - except WiFi. Apparently the WiFi card in it is BROADCOM Model BCM943228HMB (which has Bluetooth as well).

If I install Ubuntu 20.04 to this same box - WiFi and Bluetooth both work out of the box after install.

I am not a Linux Guru :frowning_face (but I can follow directions - well).

I did a dmesg command form the SSH Terminal that I have enabled in the Hass.io software - and I can see the Bluetooth - but not the WiFi.

using the nmcli radio command – I get this, which would indicate it is there, but nmcli device wifi yields the (second image) - Nothing returned

nmcli_radio

nmcli_device_wifi

Then the nmcli device rescan - yields this:

nmcli_device_wifi_rescan

Linux Version:
Alpine_Linux

1 Like

If it works well on Ubuntu, just follow the instructions of installing Home Assistant Supervised.

Many firmwares for WIFI and BT modules are not distributed through the install medias due to copyrights issues.
You then need to install them manually at some point in the install process or as a post installation.

https://wiki.debian.org/wl

@WallyR

Thank You for this – this is kinda what I was looking for, but I really, really, really do not want to install Debian, then install HA on top of that. When the installation of the Intel NUC - has everything the OS, the Supervisor and the Core installed.

The Linux version which is part of that package appears to be

Alpine_Linux

Question is - how would I get the needed drivers for it - and then get them installed. Does not appear to be setup like a standard Linux installation. Many commands (of the ones that I know for Linux) do nothing.

I would really like to get this working with just Hass.io installation.

Curtis

1 Like

@andrei-lazarov

I considered that - but I do not know that Debian has the drivers. I have never installed Debian on any system…I would need to find out which version I need and make a USB Drive installer.

I really do not want to take this path - I would rather figure out “HOW” to make the Hass.io installation do this.

Curtis

I do not know much to Hass.io, but here is what I could find on Alpine Linux.
Wi-Fi - Alpine Linux

Ubuntu is based on Debian; usually what works on one will also work on the other. I really think it has the drivers out-of-the-box.

Maybe linux-hardware.org can help you somehow?
Part 1, part 2, probe 1, probe 2, probe 3

@WallyR

This is a very interesting option… So I tried to follow the steps – and this is what I get (see image). The WIFI card in the ThinClient - is a Broad

I was for-sure thinking this was the 'fix" - :frowning_face:

OK – I figured out the error here – I had a misspelled aports (there was an ‘i’ in there).

So I went back through the process - but it fails as it states that I am logged in as ‘root’ – cannot figure out how to login as another user. I tried the ‘su - {usernamme}’ screen filled up with … (I had to reboot to get out of this).

Did you try to run the commands with sudo?

It doers not like that… It appears that the TERMINAL – you are in the DOCKER.

In Docker… you are ‘root’. Every time that I try and change to another user – system freaks out.

Maybe try to use “su -c” instead?