Hass.io Access Point
Create an access point on your Raspberry Pi (and potentially) other devices from HAOS. Useful for off-grid & standalone installations, or areas without Wi-Fi coverage.
This was initially a fork of a hassio-hostapd but the PR is still pending, so I created this new add-on with some extra features.
Please note: I occasionally install and test this addon, but I don’t currently use it regularly. I don’t have any features I’m planning to add. If you’re interested in adding to and becoming a maintainer for this addon, please get in touch.
There are a few similar addons with more active development (one example from @joaofl GitHub - joaofl/hassio-addons: More add-ons for your Hass.io.) which could also be developed in favour of mine/or our efforts merged.
Main features:
- Create an access point with built-in or external WiFi (USB) cards (using hostapd)
- Hidden or visible SSIDs
- Optional: DHCP server (using dnsmasq)
- Optional: MAC address filtering (allow/deny)
- Optional: Override hostapd config options
- Optional: Internet routing for clients
- Optional: Override DNS servers for clients (requires DHCP)
Installation
Use the instructions here to add the repo:
https://github.com/mattlongman/Hassio-Access-Point
Example config
"ssid": "AP-NAME",
"wpa_passphrase": "AP-PASSWORD",
"channel": "6",
"address": "192.168.10.1",
"netmask": "255.255.255.0",
"broadcast": "192.168.10.255",
"interface": "wlan0",
"hide_ssid": "1",
"dhcp": "1",
"dhcp_start_addr": "192.168.10.10",
"dhcp_end_addr": "192.168.10.20",
"allow_mac_addresses": [],
"deny_mac_addresses": ['ab:cd:ef:fe:dc:ba'],
"debug": "0",
"hostapd_config_override": [],
"client_internet_access": '1',
"client_dns_override": ['1.1.1.1', '8.8.8.8']
Disclaimer
This is quite a niche use-case, so I wasn’t planning on posting this here, but it looks like some people are still getting stuck with the previous version, so wanted to at least provide this as an option. However, it’s worth pointing out that I’m not very familiar with hostapd and dnsmasq, so if you think you see some kind of vulnerability or error in the way I’ve configured things, you’re probably right. Any suggestions on improving it would be greatly appreciated!