Home Assistant Yellow installation

The NVMe m.2 is visible in the hardware overview, it’s called /dev/nvme0. I moved the datadisk to the NVMe as well. So far, the good news. However, after playing around and reinstalling Home Assistant there are some partitions left on the NVMe which prevents using the NVMe as datadisk again.
Is there a way to remove these partitions via the OS?

1 Like

I can see a way to remove partitions on the eMMC, but it would take a reinstall and a load of sys admin:

  • Make a full backup
  • Boot generic RPiOS from a USB drive
  • Wipe the eMMC (something like dd if=/dev/zero of=/dev/mmcblk0 bs=4096 4096)
  • Boot HASSOS from a USB drive (or put the SSD in a USB dock and use a PC)
  • Reinstall to the SSD only, ignoring the eMMC
  • (check the partition layout)
  • Restore

I’d suggest a bug report, but the feature is called “Move datadisk” so it’ll get closed immediately. WTH candidate?

If eMMC is only used for boot, the write count is likely pretty low (effectively RO apart from ~monthly OS updates) and certainly a lot better constant stats database updates. Agree that getting ALL data off the eMMC would be better - and allow easier hardware upgrades later to a CM without storage (Wireless/8Gb/Lite CM4108000 would be my choice until a CM5!).

1 Like

I ordered a cheap NVMe > USB dongle so I connect the NVMe disk to my laptop and remove the partitions.
The choice using a NVMe disk is to move the writes away from the eMMC because I have concerns about its life with extensive writes.
Keep you posted about the results!

1 Like

Amazon just delivered a Samsumg SSD 980 NVMe M.2 with 250GB (as that was the smallest in stock).

250GB still seems overkill but, currently moving my datadisk from /dev/mmcblk0p8 to /dev/nvme0n1:


The /dev/* suggests the eMMC partition won’t be reused, and the whole NVMe SSD is used just for data.

As I once found a bug where a load of MP3 files prevented a HASSOS backup from restoring onto a RPI4, having Used Space 2% on the SSD is more about better longevity than creating another media server / NAS.

(For completeness, the backup fix was to untar the backup, remove the MP3 files from /media and re-tar. This made the backup file a lot smaller even on a 32GB uSD.)


I am patiently awaiting the arrival of my PoE Yellow. I really appreciate all of you documenting the process of using both eMMC + NVME drive, as that is my planned architecture as well.

Thank you, and keep the information coming. You’re going to help many users in the future!

Not a problem - I too wanted a PoE device, but the supply issues around CM & RPi increased the risk so went with a kit.

The RPi foundation have a sensible policy of releasing some stock to hobbyists, but keeping business users solvent with priority access to a constant trickle of devices. I suspect this is also why the Pico 2040 was created - easier to get made, and might reduce demand for full RPi4.

FYI - after a “move datadisk”, it looks like all user data for the HASS container is indeed now on the SSD (SSD /dev/nvme0n1p1 = hassos-data fs label):

$ mount |grep nvme
/dev/nvme0n1p1 on /data type ext4 (rw,relatime,commit=30)
/dev/nvme0n1p1 on /config type ext4 (rw,relatime,commit=30)
/dev/nvme0n1p1 on /addons type ext4 (rw,relatime,commit=30)
/dev/nvme0n1p1 on /backup type ext4 (rw,relatime,commit=30)
/dev/nvme0n1p1 on /ssl type ext4 (rw,relatime,commit=30)
/dev/nvme0n1p1 on /share type ext4 (rw,relatime,commit=30)
/dev/nvme0n1p1 on /media type ext4 (rw,relatime,commit=30)
/dev/nvme0n1p1 on /etc/asound.conf type ext4 (ro,relatime,commit=30)
/dev/nvme0n1p1 on /run/audio type ext4 (ro,relatime,commit=30)
/dev/nvme0n1p1 on /etc/hosts type ext4 (rw,relatime,commit=30)
/dev/nvme0n1p1 on /etc/resolv.conf type ext4 (rw,relatime,commit=30)
/dev/nvme0n1p1 on /etc/hostname type ext4 (rw,relatime,commit=30)
/dev/nvme0n1p1 on /etc/pulse/client.conf type ext4 (ro,relatime,commit=30)

Everything else is on the CM4 eMMC as before (it’s Move datadisk, not move everything). This is harder to capture without a root shell on the supervisor, but there’s still ~9 mounts from /dev/mmcblk0:

  • hassos-boot
  • hassos-kernel0
  • hassos-system0
  • hassos-kernel1
  • hassos-system1
  • hassos-bootstate
  • hassos-overlay
  • hassos-data-old (the OLD eMMC data partition, now on SSD)
  • hassos-data-external

Should have guessed that HASSOS has two kernel and system partitions - roll-back from failed updates?

And even with Z-Wave, Zigbee, MQTT, ESPhome, etc the 2Gb RAM on the CM4 isn’t stressed. Perhaps my previous hardware of a 8Gb RPi4 was overkill! :slight_smile:

1 Like

Via the NVMe > USB dongle I managed to removed the only partition. After moving the NVMe disk to my Yellow I was able to move the datadisk again.
I expected that after the move activity is completed a reboot would occur, after waiting for more than an hour I pulled the power plug and the yellow started.
The red and green led remain constantly on. The same experience occurs after updating the HAS OS update or a simple reboot from the GUI.
I’m still not convinced about the stability of the Yellow.

1 Like

Yeah - now you mention it, my Yellow (hass-data on SSD) still shows “Migrate datadisk” as an option!

Note, mine didn’t reboot after the successful datadisk move - rather an anticlimax, really.

That looks like a re-install from scratch, unless the “factory reset” button combo works. :frowning:

Without reading the RPi CM dev docs, I can’t be sure about boot order, but using dd if=/dev/zero to completely wipe the eMMC, installing the HASSOS image directly on the SD (via a USB dock), then booting from USB will probably work. The more unknown behaviour is where the HASSOS installer will choose to put the OS files - eMMC or SD?

The weird thing here is that unplugging the power will result in a normal boot, but a reboot from the OS will not.
Nevertheless, I will start from scratch again using Option 2: Reinstall Home Assistant OS using rpiboot en a clean NVMe disk.

Hi. I received my Yellow yesterday. I’m using a CM4 module, that already had HA OS installed. I had no luck trying to reset and install from a usb. The installation would fail, and I would try again, and again. Took me some hours :man_facepalming:. Then I ended up on this page on re-installing. I have a PiTray mini, that I used to load the Home Assistant OS Installer for Yellow directly to the eMMC with Raspberry Pi Imager, and lo and behold, the thing booted with the Yellow led flashing and all. Now you know. Good luck with yours!
And now everything is restored from backup and running.

I did a reinstall Option 2: Reinstall Home Assistant OS using rpiboot en a clean NVMe disk.
The installation went ok and I did not move the datadisk to the NVMe disk.
A reboot from the GUI still does not work, but after removing the NMVe from the device a reboot works fine. So this has something to do with the NVMe disk.

Is there anything special to do to make the USB ports work? I can’t get any USB stick (i.e. neither my Z-Wave stick nor a storage device) recognized by the kernel.

Solution: I had to edit config.txt on the HAOS boot partition to add dtoverlay=dwc2,dr_mode=host to the [pi4] section. Everything works fine now. Apparently, the CM4 disables its USB ports by default to conserve power.

Postscript: So of course I got the wrong image (i.e. the generic RPi4 one). Any way to flash the Yellow specific image from the command line or do I need to extract the NVME drive again?

I replaced the MVMe SSD with Samsung SSD980 and now all problems are gone even after moving the datadisk to the NVMe. The yellow still starts from the eMMC but that’s fine for me.

Same here. Order place and paid 17 Sept 2021, no shipping advice yet

1 Like

Fwiw I successfully installed a new Kingston NV2 M.2 500GBS NV2S/500G on the Yellow without any hiccups.

1 Like

Hi ! Mine was commanded on 12 june 2022 and will be received tomorrow.

Hi all,
A question, do you know if it is mandatory to install the “Home assistant OS Installer for yellow” ? Or is it possible to install raspbian OS lite on nvme SSD and use “Home assistant Container” via docker ?

My future config received tomorrow :

  • pi module 4 with eMMC
  • Yellow Kit power supply
  • SSD nvme M2 Samsung 980 (1TB)


Yes - some reports suggest the RPi4 image doesn’t work fully on a Yellow as the specific HASS OS image includes additional hardware support (like status LEDs, SkyConnect 802.15.4 radio, NVMe SSD, etc).

I’d go further and say the whole point of getting a Yellow is to run HASS OS as an appliance, although it is really just a CM4 so RPi OS will run (and might be useful for some recovery tasks - more access to the bare metal such as to wipe a CM4 eMMC storage).

My Yellow runs fine with a 250GB Samsung SSD 980 NVMe M.2 ( installed via “Move datadisk” for the hass-data partition only). Links to migrations guides are above in this thread.


You don’t need to use the installer, but it’s certainly better to use the custom Yellow image even though the generic Pi4 image can be made to work. You need to download it manually from GitHub as it is not in the list provided by Raspberry Pi Imager.

The Yellow image has been added to the Raspberry Pi Imager v1.7.3:

  • Operating system → Other specific-purpose OS → Home assistants and home automation → Home Assistant → Home Assistant OS Installed for Yellow

My Linux install shows the latest 2022105 release.