Add support for Odroid M1

My Home Assistant is currently still running on the Odroid C2. But I am thinking about upgrading to the M1.

I just checked, the M1 support was merged last week:

Dev builds are already available:
https://os-builds.home-assistant.io/

2 Likes

This is awesome!!!

Dose anyone know if you can rerun the HA supervised script to reconfigure the existing docker container for the M1?

I have Odroid C4 and consider moving to M1 model. Could anyone confirm whether M1 performance has increased with newer kernels (initial benchmarks with 4.19 kernels were not so great)?

Im running Supervised install with Debian 11 and 6.2.0 Kernel. Using iotop when running the most complex queries in HA the nvme was reading 33MB per sec. Super fast performance when using the nvme drive.

I have tried to use one of these images, my issue is when I do this:
dd if=<the image> of=/dev/nvme0n1 bs=1M
It writes, I can do an fdisk -l and see two partitions, but I can’t boot to the nvme. Is there some special procedure I need to follow to get petitboot to boot off these images?

This site has debian 11 running on Odroid M1. I use the release to run on Odroid N2, which is documented here. It includes an HA installation script that has been tested on a few platforms. I don’t know if the HA install script has been tried on the M1. There is a pretty active discord channel associated with the release and they are very helpful.

Hello, I had same problems with DNS as described here. I have Odroid M1 with Debian 11 and HA supervised installed. I can see with tcpdump that DNS requests and replies go through eth0 interface but on hassio interface (hassio_dns container is running on this iface) I see only DNS requests, but no response. So when I read here that when it works when you used Debian 10 and that upgrade to 11 - I tried to change iptables used by system from nft to legacy (nft are default in 11) and DNS works! Hope that helps. Petr

From what I have seen, Odroid M1 support is coming in the next OS release.

I think so too, via Add ODROID-M1 support by agners · Pull Request #2387 · home-assistant/operating-system · GitHub
Not sure though when the next release is going to be?

/edit: likely soon, HA OS v10 will have it, currently at RC3.

Now at rc4, Im kind of torn between the N1 in future and VM now… Im running HA core in unraid docker for ages, but the latest upgrade broke a lot of stuff for me like shelly integration stop working completely, and some older plugins like full screen tables for my Android terminal… so was thinking to move to HAOS proper and reconfigure everything again …

Home Assistant OS 10.0

New board support: Hardkernel ODROID-M1 (only SD and EMMC boot)

3 Likes

I would love to hear if anyone has experience of running HAOS10 on the M1!

I’m looking to move my installation of HAOS from a ‘hobby VM’ on my unraid server to it’s own dedicated appliance and the M1 looks ideal! I nearly pulled the trigger on buying a board last night but have decided and wait to hear of other people’s experiences.

(Although my wife had begrudingly tolerated the introduction of HA in to our house, i know i’d be flailed if all the automations for lights, plugs/blinds etc suddenly stopped working :slight_smile: )

I’m not going back. I’m still running my previous setup, before the support was official, so I installed Debian 10 and went from there. I have drives arriving soon for a second M1 I’ve acquired (for other reasons), which will now become my new HASS using the supported install method :slight_smile:

That is to say - even if the supported method fails or doesn’t work. Just running HA “unsupported” is a treat in itself.

If you do get around to it - I hope the supported setup is easy, alternatively, remember that the Odroid comes with a network boot option that boots from the internet. So Debian 10 & 11 are readily available from there :slight_smile:

Also just realized NVMe boot is not supported by HAOS… That’s a bummer. I’m going to see if I can’t make it work and possibly experience what it is that means it’s unsupported…

2 Likes

Oh look. My disks arrived.

I tried a really straightforward approach where I copied out the .img file from HASS to a usb device, and used the onboard petitboot to dd’ the image to the NVMe. No dice.

1 Like

Migration from Raspberry Pi4 4GB to Odroid M1 8GB ist done. :grinning:
Home Assistant OS on eMMC, Data on NVME M.2 SSD (1TB WD Blue :grinning:)
The highest effort was to update the boot loader.

I had trouble to restore the Studio Code Server Addon. SCS was not restored as well all other Addon’s below in the list. Partially restore of SCS was also not successful. I had to install the Addon manually. For all other Addon’s I was able to restore it from the Backup.
But now everything works fine. Less ennergy cunsumption than the Pi4, only 4W.
Prozessor Temperatur 42°C.
Overall i would say everythink is working a little bit smoother.

1 Like

I did same but for both nvme and sd device. After restart (before nvme status led is on and after power led is on) quickly eject sd card. For some reason it’s start booting from nvme (like from mmc?. boot.scr written to work only with mmc/sd only, as I understand)
Video example: https://youtube.com/shorts/dL1r5bQM9l0?feature=share

I can see I didn’t post what I found out. It’s my impression that HassOS is built on a bootloader called “uboot”, which seemingly doesn’t support NVMe. But I’m not sure why they would use this loader, if the loader we’re using (petitboot?) already supports all the things.

Put another way. If we use the Debian XX provided by Odroid, we can install HA Supervised on that and be all good on NVMe. I’m hoping we eventually get a HassOS image that does that… :slight_smile:

I got a reply from the HA moderator:

HAOS uses a special boot flow to fallback to the previously installed OS in case of errors (A/B scheme). This requires our own boot loader U-Boot to be started directly.

Ubuntu does not have such recovery mechanism, and I assume they provide boot scripts which Petitboot starting from the on-board SPI ROM can read directly from the NVMe.

We’ve considered that option, but it would mean a departure from our boot scheme for that particular platform, which we rather prefer not to do…

Did you restore the backup during the onboarding of the new HA OS on the odroid or did you first install an empty HA OS and ran the backup/restore function from within the settings of HA installation?

I seem to struggle with the restore of the backup (but I come from an installation on debian OS with supervised install on odroid m1.

another question; how long did the restore take (and how big was the backup file in size?)

sorry to add to an ‘old’ thread.

I am also trying to use Odroid M1 to run Home Assistant supervised. I have a Samsung 512GB NVME in the M1 but I have no luck to boot up in Debian. I am getting conflicting information whether the lates Petiboot supports booting from NVME.

I also have trouble updating the Petitboot based on this and this articlea.

These are the steps I used (or intended to)

  1. etch the Debian bootable image to SSD

  2. boot up Petiboot

  3. exit to shell

  4. enter ‘ums /dev/nvme0n1’

  5. enter udhcpc

  6. enter netboot_default

  7. enter exit

  8. select Debian netbook installer from boot list

  9. install Home Assistant as per Installing Home Assistant Supervised using Debian 12

However, once I finished installing Debian 11 , M1 started with Petitboot and not Debian

Can anyone point me to the right direction as people on this forum has done this such as

I am only able to inatall Ubuntu 22.04 but not Debian 11, not sure why

Any help is appreciated