Sdcard Sandisk
By Sandisk
SanDisk Ultra A1 Microsd Memory Card 256GB 128GB 64GB 32GB 16GB microSDHC/SDXC UHS-I U3 V30 TF micro sd card memory card
This page has been visited ... times
It’s almost 2024 and it’s still difficult to install Home Assistant OS on unsupported cards. For the sake of product testing I need to install HAOS on a dedicated card. That’s good, I still have an old Cubietruck card in the boxes so I’ll be able to save money and not invest in a Raspberry pi.
This tutorial will allow you to easily install Home Assistant OS using ARMBIAN and one of the cards supported by this system, all without having an error message in Home Assistant and thus using 100% of the potential of this home assistant .
this tutorial is valid for all cards working with Armbian, you just need to adapt the download of images according to the architecture.
Follow the steps carefully and everything should go well 👌
I’m lucky the Armbian community is still developing an image for the old Cubietruck card, in this case Debian 12 “Bookworm”.
Nothing could be simpler go to the dedicated page, download the image and copy it onto a microsd using Rufus or Balena Etcher.
If you also have a cubietruck card and out of curiosity about the hardware you will find information on it on the site Sunxi
Once the image has been copied, insert it and launch the machine, wait around ten minutes before connecting to the system via SSH or via graphical interface if you prefer. Personally, the tutorial is written using a terminal and by ssh.
If you don’t know Armbian, check out the official presentation video:
You will need to find the IP address of your installation. Throw a little
ssh -p 22 ton-ip -l root
Then the default password for the root user is 1234
For more information on further configuration you can follow the official documentation
Armbian will ask you to:
Once restarted, reconnect via ssh and go to the Armbian config
armbian-config
If you have the possibility of installing the system on an emmc type internal memory did it, this is not my case, because the cubietruck uses NAND memory and I would have to put a very very old kernel for it to work.
exit Armbian in order to be able to configure in cgroupv1. By default Armbian works in cgrouv2 but it turns out that home assistant os runs in cgroupv1 so nothing could be simpler, go to the file armbianEnv.txt
nano /boot/armbianEnv.txt
and paste this code at the bottom of the script, don’t forget to save Ctrl+X
et Y
extraargs=systemd.unified_cgroup_hierarchy=0
Which will give you an example:
verbosity=1
bootlogo=false
console=both
disp_mode=1920x1080p60
overlay_prefix=sun7i-a20
rootdev=UUID=a0e57adf-e76d-46bf-80a3-2752008cb59f
rootfstype=ext4
usbstoragequirks=0x2537:0x1066:u,0x2537:0x1068:u
extraargs=systemd.unified_cgroup_hierarchy=0
Change the name of the distribution so that it is recognized by HAOS
nano /etc/os-release
change PRETTY_NAME=”Armbian 23.02.2 Jammy” by PRETTY_NAME=”Debian GNU/Linux 12 (bookworm)”
don’t forget to save Ctrl+X
and Y
Which will give you an example:
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.armbian.com"
SUPPORT_URL="https://forum.armbian.com"
BUG_REPORT_URL="https://www.armbian.com/bugs"
ARMBIAN_PRETTY_NAME="Armbian 23.11.1 bookworm"
If you don’t know the ARM architecture of your card or if you’re not 100% sure, you can consult these two links below, these are ARM architecture wikis with a complete table.
Architecture arm aarch32 Architecture arm cortex external link
Home Assistant has set up an installation tutorial that you can follow to the letter, you just need to choose the right distributions to install in my case the cubietruck is built around an armv7 so I chose:
supervised-installer installation
Little reminder: armbian is already in root mode by default
apt install \
apparmor \
cifs-utils \
curl \
dbus \
jq \
libglib2.0-bin \
lsb-release \
network-manager \
nfs-common \
systemd-journal-remote \
systemd-resolved \
udisks2 \
wget -y
reboot
curl -fsSL get.docker.com | sh
You will get a message that will tell you that you are using docker as a non-root user which will bring up an error message in Home Assistant during the first launch. But don’t worry, you just have to restart Home Assistant and it will correct the situation automatically.
To run Docker as a non-privileged user, consider setting up the
Docker daemon in rootless mode for your user:
...
WARNING: Access to the remote API on a privileged Docker daemon is equivalent
to root access on the host. Refer to the 'Docker daemon attack surface'
documentation for details: https://docs.docker.com/go/attack-surface/
If installing docker on Armbian intrigues you, don’t hesitate to consult the information on the official doc.
preparing the temporary download file:
mkdir /tmp/download/
chown -Rv _apt:root /tmp/download/
chmod -Rv 700 /tmp/download/
cd /tmp/download/
Download the latest release:
wget https://github.com/home-assistant/os-agent/releases/download/1.6.0/os-agent_1.6.0_linux_armv7.deb
Install there:
dpkg -i os-agent_1.6.0_linux_armv7.deb
Check installation:
gdbus introspect --system --dest io.hass.os --object-path /io/hass/os
You should see a bunch of lines like below:
node /io/hass/os {
interface org.freedesktop.DBus.Introspectable {
methods:
Introspect(out s out);
signals:
...
signals:
properties:
@org.freedesktop.DBus.Property.EmitsChangedSignal("invalidates")
readonly s Version = '1.6.0';
@org.freedesktop.DBus.Property.EmitsChangedSignal("true")
readwrite b Diagnostics = false;
};
};
Last step of the installation, the supervised-installer script will install all the containers necessary for the proper functioning of Home Assistant
wget -O homeassistant-supervised.deb https://github.com/home-assistant/supervised-installer/releases/latest/download/homeassistant-supervised.deb
apt install ./homeassistant-supervised.deb
finally when the script asks you, choose the architecture corresponding to your needs in my case qemuarm.
[info] Install supervisor startup scripts
[info] Install AppArmor scripts
[info] Start Home Assistant Supervised
[info] Installing the 'ha' cli
[warn] Could not find /etc/default/grub or /boot/firmware/cmdline.txt failed to
switch to cgroup v1
[info] Within a few minutes you will be able to reach Home Assistant at:
[info] http://homeassistant.local:8123 or using the IP address of your
[info] machine: http://ton-ip:8123
Depending on the power of your Home Assistant card it may take more or less time to install so be patient in my case it took around 20 minutes, you can follow the process by going to the address indicated at the end of supervisor script
Once you have configured Home Assistant, don’t forget to check for updates and as indicated above you should have a docker error non-root user
, don’t panic just restart homeassistant. Personally I restarted the entire system.
Reboots the entire system from Home Assistant
This is an effective way to install Home Assistant OS on Armbian using a compatible card without having to worry. If like me you need to use this magnificent system that is Home Assistant on a recycling card to carry out all types of tests then this tutorial is for you.
Copyright © 2025 Haade 🎉 by Nicoxygen
Comments