Add support for Odroid M1

What about running it in a Docker container?
p.s. sorry if it’s noob question, I’m really new to Home Assistant and just received Odroid M1

1 Like

Got two of them with a 980 SSD nvme and did a supervised install of HA using the Ubuntu image from ODROID.
Seems to be working OK with the exception of a warning that it is not a supported OS within HA but that is logical since Debian is the official supported OS for this.

2 Likes

Do you have a link to a tutorial or explanation for the supervised install of HA?
I run ubuntu on the M1, but i have no luck using docker CE. (and i want to have a supervised install)

2 Likes

Sure…
For installing on the nvme SSD just exit to shell within petitboot:
ums /dev/nvme0n1

and flash the Ubuntu image on it using an OTG USB cable, but I assume you already did this.

Update the Ubuntu install:
sudo apt update
sudo apt ugrade

Then follow the supervised install from HA github using step 1 and 2.

Then use the os-agent_1.2.2_linux_aarch64.deb at step3 and verify after install that it is working ok by using:
gdbus introspect --system --dest io.hass.os --object-path /io/hass/os

it should return no errors.

Install AppArmor:
sudo apt update && sudo apt -y install apparmor

Add AppArmor as Linux kernel boot parameter (else HA wil give a warning about it):
sudo -i
sudo echo "apparmor=1 security=apparmor" > /etc/default/grub

Execute step 4 (install homeassistant-supervised.deb) of the HA github tutorial and select ODROID N2 and reboot after that (give it some time before the reboot).
After the reboot just wait for it and then access HA via the url.

This worked for me…

10 Likes

it can work in docker container, but my goal is, that I can use the OS, because I have a dedicated server for Home Assistant.

Add sudo echo "systemd.unified_cgroup_hierarchy=false" > /etc/default/grub

before step 4 so you won’t have this error:

/var/lib/dpkg/info/homeassistant-supervised.postinst: line 145: update-grub: com dpkg: error processing package homeassistant-supervised (--install): installed homeassistant-supervised package post-installation script subprocess Errors were encountered while processing: homeassistant-supervised

3 Likes

I used this tutorial on an Ubuntu installation, HA works great.
Also tried a Odroid Debian 10 and 11 installation trough netboot to get rid of the ‘unsupported installation’ message. HA works on both versions. But I couldn’t get apparmor working, meaning the ‘unsupported installation’ message is still there. So I ended up switching back to the Ubuntu setup.

Would love to see a HASOS build for the M1.

the odroid-m1 seem to use simplier u-boot than other odroid (n2/c2/c4 and xu4) supported by haos.

  • odroid-m1:software:partition_table [ODROID Wiki]
    They use Rockchip RK3568B2 in place on Amlogic ou Samsung Exynos.
    they have similare GPIO.
    is cortex-a55/arm8a quad core like odroid-c4.
    normaly supported by linux kernel v5.x (already used by c2/c4/n2 and xu4).

in Getting Started with Home Assistant Operating System Development | Home Assistant Developer Docs haos build getting started guide we need to copy buildroot-external/configs/odroid_c4_defconfig to buildroot-external/configs/odroid_m1_defconfig to start.

i’ve seen also hardkernel package for u-boot image, operating-system/buildroot-external/package/hardkernel-boot at dev · home-assistant/operating-system · GitHub as to be modify.

and also the rpi-rf-mod packages, operating-system/buildroot-external/package/rpi-rf-mod at dev · home-assistant/operating-system · GitHub as to be modify.

i’m not sure about the modification of the u-boot build…

i’m trying to that on my fork: GitHub - mcarbonneaux/haos-odroid-m1: Home Assistant Operating System

1 Like

in fact odroid-m1 kernel are based on rockchip bsp kernel… that are 4.x kernel…
and no mainline kernel are integreting all odroid patch…

on arch forum they speek about odroid-m1 support…

i found one that are porting odroid-m1 patch to 5.18 mainline kernel…

i found some submition to the 5.x kernel…

especialy the dts submition:

armbian port:

1 Like

Got my M1… can’t wait to have full HASSIO support :slight_smile:

1 Like

i’ve build all package, uboot and kernel, but i’m blocked at hassio.mk that download docker image, and try to download image with the new name of the new board…

/build/buildroot-external/package/hassio/fetch-container-image.sh "aarch64" "odroid-m1" /build/output/build/hassio-1.0.0/stable.json observer "/cache/dl/hassio" "/build/output/build/hassio-1.0.0/images"
flock: getting lock took 0.000036 seconds
Skipping download of existing image: ghcr.io/home-assistant/aarch64-hassio-observer:2021.10.0 (digest sha256:8a5ff0a82e329edc9f5c99a93fa44c1d3b46d7edaf3257ad29bfe1c021024367)
/build/buildroot-external/package/hassio/fetch-container-image.sh "aarch64" "odroid-m1" /build/output/build/hassio-1.0.0/stable.json core "/cache/dl/hassio" "/build/output/build/hassio-1.0.0/images"
FATA[0001] Error parsing image name "docker://ghcr.io/home-assistant/odroid-m1-homeassistant:landingpage": Requesting bear token: invalid status code from registry 403 (Forbidden)

in the Getting Started with Home Assistant Operating System Development | Home Assistant Developer Docs they dont talk about that…

3 Likes

Eagerly awaiting being able to decommission HAOS on my old xu4 and light up my m1!

The m1 with nvme storage is a weapon from a performance point of view. Hopefully mainline kernel isn’t far away.

Count me in. Also using a M1 now :slight_smile:

3 Likes

I am also using M1 with SSD disk. It is best for HA. I have installed supervised HA on Debian 10 on this ODROID M1 :slight_smile:

Hi, could you explain how you did that in a step by step guide please?

Used @EddyBurnett description and got it to work.
Even taking my pi’s backup and putting that back on the ODROID M1 installation works as a charm.

THANKS!

I ended up disabling and removing my conbee2 stick (using zigbee) and moving all those connected devices to my lama zigbee2mqtt stick as the deconz conbee2 stick is not supported and gives to much errors.

After several days ‘playing’ I can state that I have much less warnings in the log file that I had using the raspberry pi with HA.
I did not notice any remark about not supported OS/supervisor or whatsoever.
In the end I’m glad that I still have access to the OS with this docker setup.

hi to everyone. are there someone of you who succeed in installing HA on ODROID m1 who are using frigate addon? how does it work? is it compatible with google coral? or does it work well even with its AI accellerator (I think it’s called NPU). sorry if the questions are a little bit dumb, I’m not very experienced and I’m thinking to substitute the RPI4 with the new board. thanks for any hint.

Bought mine Odroid M1 8GB today. Totally not aware of that it can’t run (yet) with the Odroid images available. Please could you look/make a Odroid M1 image for the HA?

Thanks!

2 Likes

Well dear friends I tried to follow the step by step guide from @EddyBurnett description and apart from the problem I had with the installation of Ubuntu 22.04 which did not even start, the board seemed to be going in a loop, I apparently succeeded in installing Homeassistant on the M1 with Ubuntu 20.04 and apparently with no errors … but just to make some tests I tried to install some addons and although the procedures seemed always to complete the addons did not start and they did not even show up in the addon page (which stated that I did not have any addon installed). So whether I did some mistake ore something is still missing in the procedure, maybe some connections with the docker images, but I’m not experienced enough to track those problems down. Any advise?

Many thanks

After a clean install on Odroid M1 Debian 11 following Eddy Burnett’s guide i get these errors in the log. Also im unable to use http://homeassistant.local:8123 i can only access through localip:8123
Also pinging google.com works from outside docker, but not from inside a container. Don’t know if this is related but i guess it could be the root of all evil :laughing:
Anybody knows how to solve this?