UPDATE: As of December 11, 2022, Home Assistant no longer officially supports Ubuntu, and requires Debian instead. Instructions below have been updated to bypass the OS check and recommend Debian instead.
My apartment is filled with smart home tech, from a smart air conditioner to smart lights and smart security cameras. One issue I had with my current system is that the only way I could view my security cameras, was through their mobile app (Tuya Smart Life). One workaround, however, is to use the API through Home Assistant.
I already own multiple Raspberry Pis, but they’re tied up in other projects (Octoprint and NUT). I went on Amazon to go pick myself up another Raspberry Pi and was shocked to see prices ranging from $150 to $300. There had to be another solution. After a bit of digging, I landed on the Libre Computer Le Potato. I’d never heard of Libre Computer before and there is very little information about them, but they seem to be a very capable competitor with a form factor almost exactly the same as the Pi, and prices that have remained stable and affordable (as low as $20 for the entry level version). They even offer some extra features like eMMC storage and an IR receiver.
I decided to go with the AML-S905X-CC v1 (Le Potato) 2GB version for $40. While your requirements will vary based off of how many devices, automations, etc. you have running in Home Assistant, I would recommend at least 2GB RAM, so look into either the AML-S905X-CC (Le Potato) 2GB ($40) or the ROC-RK3328-CC (Renegade) 4GB ($55).
While this tutorial is written for the Le Potato, the process should be the exact same for other Libre Computers, with the exception of downloading the OS image specifically for your board.
Getting Started
Home Assistant OS does not have an official version for the Libre Computer, so we will be running Home Assistant in Supervised mode. In order to use Supervised mode, we have to provide our own OS, in this case, Ubuntu Server. While Home Assistant does not officially support Ubuntu and recommends Debian instead, Libre has not released their Debian distro yet, so we will have to use Ubuntu for now. Keep an eye on this post for the status of Debian on Libre Computers.
Head over to the Libre Computer Ubuntu Distro‘s page and download the Ubuntu Server image for your board (ubuntu-22.04.1-preinstalled-server). Note that for the La Potato, the board revision matters. The v2 image will not run on a v1 board.
Once you have the image downloaded, unzip the archive with a tool like 7-Zip, then flash the image to a MicroSD card with a tool like Balena Etcher. The SD card doesn’t matter too much, but the lower the RAM you have on your board, the more Ubuntu will rely on the SD card as swap memory, so it may help to get a larger and higher performance MicroSD card, or an eMMC module in such a case.
Insert your MicroSD card in to the Libre Computer, then connect your ethernet and power (make sure to use a good power supply, 5V 2.5A recommended). Wireless dongles seem to have limited support on the Libre Computer depending on the image, but I don’t see why you shouldn’t be able to get one working in Ubuntu.
If you decide to use a wireless dongle, you will need to login to the console directly and configure it from the command line. Otherwise, your Libre Computer should automatically boot up and start an SSH server for you to use.
Before we setup Home Assistant, you need to change the default password and run some updates on Ubuntu.
Log into your Libre Computer over SSH with a tool like PuTTY, using your Libre Computer’s IP address. The default username and password are both ‘ubuntu’. When you first login, it will force you to change your password, then re-login.
After you are logged in with your new password, run the following commands to update your Ubuntu installation:
sudo apt-get update
sudo apt-get upgrade
Installing Home Assistant
Now we’re ready to install Home Assistant. We’ll start by installing the Home Assistant dependencies with the following commands:
sudo su
apt-get install apparmor jq wget curl \
udisks2 libglib2.0-bin network-manager \
dbus systemd-journal-remote unzip -y
curl -fsSL get.docker.com | sh
Once we have the dependencies installed, we can install the Home Assistant agent and Supervised package. We’ll be downloading the Aarch64 deb package from the OS-Agent releases page.
At the time of writing, the latest OS Agent is version 1.4.1, but please check and substitute the link and file name in the commands below with the current version from the releases page.
wget https://github.com/home-assistant/os-agent/releases/download/1.4.1/os-agent_1.4.1_linux_aarch64.deb
sudo dpkg -i os-agent_1.4.1_linux_aarch64.deb
After the agent is installed, we will finish the installation by installing the supervisor package.
wget https://github.com/home-assistant/supervised-installer/releases/latest/download/homeassistant-supervised.deb
sudo BYPASS_OS_CHECK=true dpkg -i homeassistant-supervised.deb
When prompted, choose “qemuarm-64” as your machine type.
Using Home Assistant
Now we wait. It takes quite a long time for Home Assistant to start when it is first installed. Once it’s ready, you should be able to visit http://<your-ip-address>:8123 to manage your home assistant installation.
If you don’t see anything on the web interface after a while, verify that you’re connecting to the right IP address, and try running the command
ha banner
to start up Home Assistant.
That’s all. You now have a cost effective Home Assistant server.
Thanks for tutorial.
In couples of month since it was published, HASS removed their official support of the supervised mode for any distro but debian. Since debian is not available for Libre, the only workaround, is using the last version of homeassistant-supervised.deb, 1.3.1 at https://github.com/home-assistant/supervised-installer/releases/download/1.3.1/homeassistant-supervised.deb
once installed and onboarded, there will be notifications regrading running on unsupported OS, due to lack of testing. let us be the testers
It looks like although they have blocked installation on unsupported OS, there is a command line flag you can add to skip the check. Instead of running “dpkg -i homeassistant-supervised.deb”, run “sudo BYPASS_OS_CHECK=true dpkg -i homeassistant-supervised.deb” and that should let you install versions 1.4.0 and newer.
Hey. I follow you’re guide and seem to meet this error.. Do you have any idea of a workaround?
Anyways. Great guide!
Preparing to unpack homeassistant-supervised.deb …
[warn]
[warn] If you want more control over your own system, run
[warn] Home Assistant as a VM or run Home Assistant Core
[warn] via a Docker container.
[warn]
[error] Ubuntu 22.04.1 LTS is not supported!
dpkg: error processing archive homeassistant-supervised.deb (–install):
new homeassistant-supervised package pre-installation script subprocess returned error exit status 1
[info] Undo divert on abort-install
No diversion ‘diversion of /etc/NetworkManager/NetworkManager.conf to /etc/NetworkManager/NetworkManager.conf.real by homeassistant-supervised’, none removed.
No diversion ‘diversion of /etc/NetworkManager/system-connections/default to /etc/NetworkManager/system-connections/default.real by homeassistant-supervised’, none removed.
No diversion ‘diversion of /etc/docker/daemon.json to /etc/docker/daemon.json.real by homeassistant-supervised’, none removed.
No diversion ‘diversion of /etc/network/interfaces to /etc/network/interfaces.real by homeassistant-supervised’, none removed.
[info] Resetting debconf selections
[info] Removal complete, due to the complexity of this installation method,
[info] you will need to manually remove the containers created by the supervisor
Errors were encountered while processing:
homeassistant-supervised.deb
Home Assistant just added a block for unsupported operating systems in the latest version. You can manually install version 1.3.1 which didn’t have the OS check enabled, or you can run the command “sudo BYPASS_OS_CHECK=true dpkg -i homeassistant-supervised.deb” instead of “dpkg -i homeassistant-supervised.deb” which will bypass the OS check.
I went to the GITHUB and followed most of their instructions…
I did the following commands
apt install \
apparmor \
jq \
wget \
curl \
udisks2 \
libglib2.0-bin \
network-manager \
dbus \
lsb-release \
systemd-journal-remote -y
this was prior to the “curl -fsSL get.docker.com | sh” command.
Then follow the rest based on what he shows here… WORKS!
https://github.com/home-assistant/supervised-installer
Tried this install, thanks to this thread I got round the unsupported OS but then got
Selecting previously unselected package homeassistant-supervised.
(Reading database … 94373 files and directories currently installed.)
Preparing to unpack homeassistant-supervised.deb …
[warn]
[warn] If you want more control over your own system, run
[warn] Home Assistant as a VM or run Home Assistant Core
[warn] via a Docker container.
[warn]
[warn] Bypassing OS check…
[warn] Ubuntu 22.04.2 LTS is not supported!
[warn] Please DO NOT report issues regarding this OS!
[warn] ModemManager service is enabled. This might cause issue when using serial devices.
Adding ‘diversion of /etc/NetworkManager/NetworkManager.conf to /etc/NetworkManager/NetworkManager.conf.real by homeassistant-supervised’
Adding ‘diversion of /etc/NetworkManager/system-connections/default to /etc/NetworkManager/system-connections/default.real by homeassistant-supervised’
Adding ‘diversion of /etc/docker/daemon.json to /etc/docker/daemon.json.real by homeassistant-supervised’
Adding ‘diversion of /etc/network/interfaces to /etc/network/interfaces.real by homeassistant-supervised’
Unpacking homeassistant-supervised (1.4.2) …
dpkg: dependency problems prevent configuration of homeassistant-supervised:
homeassistant-supervised depends on os-agent; however:
Package os-agent is not installed.
homeassistant-supervised depends on systemd-journal-remote; however:
Package systemd-journal-remote is not installed.
dpkg: error processing package homeassistant-supervised (–install):
dependency problems – leaving unconfigured
Errors were encountered while processing:
homeassistant-supervised
Running apt –fix-broken install did not fix any issues
When there is an update on the case since I have tried bypass and it did not work