This repo provides tools to install the latest version of Home Assistant. (2024.3.x) on a system with OpenWrt 23.05+ installed. It provides the reduced version of HA with only minimal list of components included. Additionally, it keeps MQTT, ESPHome, and ZHA components as they are widely used with smart home solutions.
It is distributed with a shell script that downloads and installs everything that required for a clean start.
- 256 MB storage space
- 256 MB RAM
- OpenWrt 23.05.0 or newer installed
Then, download the installer and run it.
wget https://raw.githubusercontent.com/akosgulyas/homeassistant_on_openwrt/23.05/ha_install.sh -O - | shAfter script prints Done. you have Home Assistant installed.
Start the service or reboot the device to get it start automatically.
The web interface will be on 8123 port after all components load.
The only components with flows included are MQTT and ZHA. After adding a component in the interface or via the config HA could install dependencies and fails on finding them after installation. In this case restarting HA could work.
Other components are not tested and may require additional changed in requirement versions or python libraries.
You may want to add more components to your HA installation.
In this case you have to download tar.gz from PyPI:
https://pypi.org/project/homeassistant/2024.3.3/#files
Then extract the content and copy the required components to
/usr/lib/python3.11/site-packages/homeassistant/components
If the component uses the frontend wizard, you may want to uncomment the
corresponding line in
/usr/lib/python3.11/site-packages/homeassistant/generated/config_flows.py
also.
Or you can create custom_components directory in /etc/homeassistant and
copy it there.
Try to install requirements from manifest.json with pip3 manually
to check it installs and doesn't require pre-compiled C libraries.
Otherwise, you have to cross-compile python3 dependencies and install
them as ipk packages.
If the dependency is already installed via opkg or via pip3 you may want
to fix the strict dependency in manifest.json to a weaker one or remove
versions at all.
