In a win for modular, private, local IoT, I just upgraded my Home Assistant Yellow from a Raspberry Pi Compute Module 4 to a Compute Module 5 this morning, and got an instant 2x speed boost.
I first posted about the Yellow in 2022, and walked through my smart-but-private HA Yellow setup in my Studio in a video last year.
Because I was running an eMMC CM4 in the Yellow before, I ran a full backup (and downloaded it), yanked the CM4, flashed HAOS to a new NVMe SSD, and plugged that and the CM5 into my Yellow. After running a Restore (it's a handy option right on the first page that appears when you access homeassistant.local
), I was up and running like there was no difference at all—just everything was a little more snappy.
The only caveat is the wide screw heads on the CM5 hold-down screws included with the Yellow are a bit close to the PMIC power circuits (especially a tiny capacitor), so I decided to switch screw heads to one that is a hair (like 0.02mm) smaller in diameter, just so it wasn't touching the edge of the cap. The screws aren't even necessary in any normal environment, as the heatsink uses pressure to hold down the CM5 as well.
As noted in Home Assistant's blog post announcing CM5 compatibility, the CM5 is probably overkill for most installations.
But for me, I often try out weird automations, or tinker with new features like locally/private voice automations and text-to-speech, and those benefit dramatically from the speedups. Like in a quick test, inference times on the device with a tiny Pi-optimized model went from 2.8 to 1.3 seconds.
When you're trying to converse with a voice assistant, that kind of latency reduction is huge!
I mentioned in my post early this morning, Raspberry Pi CM5 is 2-3x faster, drop-in upgrade (mostly), and that seems to hold true here.
I will continue testing other devices, and maybe I'll figure out a way to indicate CM4/CM5 compatibility on my Pi PCIe site.
Comments
Just read the latest blog post about this on the official Home Assistant website and read there as well that thw upcoming release of Home Assistant OS 14 will also bring support not only for CM5 but also for the Hailo-8 AI accelerator (AI accelerator found in the Raspberry Pi AI Kit).
Is there a compatible dual M.2 PCIe switch adapter that you can buy for the Home Assistant Yellow (and other CM4/CM5 carrier boards with only a single M.2 slot) that would allow us to use both a a Hailo-8 AI accelerator (Raspberry Pi AI Kit) and a NVMe SSD harddrive in it at the same time?
The point is that it would be awesome for Home Asssistant Yellow users could use a M.2 AI accelerator card like the Hailo-8 AI M.2 module without sacrificing the NVMe SSD storage M.2 slot, thus the need for some kind of PCIe switch adapter in a nice slim format for the Home Assistant Yellow.
Someone on X/Twitter asked about thermals, I just checked and after an hour of uptime in my office rack (ambient temp about 25°C), the CM5 SoC is at 52.6°C. The heatsink seems to be doing a good enough job inside the fanless and slightly-poorly-ventilated Yellow enclosure.
Can you try getting an Hailo-8 AI accelerator card (samw AI accelerator found in the Raspberry Pi AI Kit) working in Home Assistant Yellow together with NVMe storage at the same time via some PCIe switch adapter?
Have to admit being a bit confused about the HA Yellow and pricing. When you can get a 8GB RAM 256GB SSD actual real PC for $120 refurb or perhaps a tad more for something like a Beelink mini PC, why would you throw a pi-based solution for 'more' money at the problem. It's not like they use 'that' much more energy and my several year experience is that HA in docker over Ubuntu LTS server on a 5-year old i3 NUC is super quick and extremely stable. Benefit of running in Docker is you can flip versions easily (just point to a newer image) and you're hardware availability safe. And you can actually log into the box if needed rather than being in HASS jail where you can't really do anything at all.
One old i3 NUC can easily run all kinds of things in docker 'and' even vagrant/virtualbox VMs as needed.
Let me answer that question with a question; Why do we buy Jeff Geerling merchandise like t-thirts when we can buy less expensive products that functionally the same features elsewhere?
The Home Assistant project itself does not take donations so myself and many others who are big fans of Home Assistant buy the more expensive official Home Assistant hardware like Home Assistant Yellow, Home Assistant Green, and Home Assistant SkyConnect / ZBT-1 (as well as Home Assistant merch) instead of less expensive alternatives as a way to support the Home Assistant project (now owned by the non-profit Open Home Foundation).
This is also the reason why I pay for the Home Assistant Cloud subscription service even though I do not personally use it and also why I way monthly instead of yearly even though it would cost me less. It is an indirect way a way to donate/sponsor to the Home Assistant project and the Open Home Foundation, and as a bonus we get something in return that we can show off (or wear).
This is probably true in the US. But where I live, there is no market for refurbished or affordable mini PCs. They all start above the price of the yellow.
The interesting thing is the radios. This board has zigbee, openthread, and matter support built in. Those cost quite some money to buy separately.
And this is more subjective to your needs, but this is a very low power board, something that's interesting in countries with expensive power.
Not to mention PoE support, making it very versatile.
I agree that it is not for everyone, but there's definitely a market for it.
Jeff, try out the official CM5 heatsink. I find it works great and adds a third thermal pad for the new bigger chip.
See my post on the "Home Assistant Yellow gets CM5 support in HAOS 14" thread about installing it including some pics.
Is it just a drop in replacement or do I need to install as if it was brand new and then restore from backup? Also is there a way to have active cooling with CM5 and the yellow?
You might be able to hack in a fan cooler of some sort, but mine's been fine with just the normal heatsink.
For the upgrade, I wound up taking a full backup, then swapping CMs, then restoring from the backup. It was surprisingly easy... first time I'd tried it, and it had everything exactly set up as before!
Hi Jeff, please could you try get the CM5 active cooler to work with the HA Yellow? Im sure people would love to see a short video of what pins to use on the yellow for the 4 pin cooler. I have the Yellow, CM5 and the cooler but have no clue how to plug the cooler in. Im sure I'm not the only one at a loss. Your expertise would be much appreciated :)
Hey Jeff, I'm currently on a HA Yellow Standard (CM4 2GB ram and 32GB EMMC) and looking to upgrade to a CM5 system like you have.
1) Looking at a CM5 Lite (no EMMC). Is that what you used?
2) By "NVME SSD flashed with HAOS", would that be the same as using Balena Etcher or Rufus to write HAOS to an NVME SSD via an enclosure? (https://www.home-assistant.io/installation/generic-x86-64#method-2-inst…)
3) Can I assume, with the new setup (1+2 above), Home Assistant would boot up immediately from the NVME SSD with the installed HAOS?
Thanks so much for whatever advice you can give. Love your work, stay well, stay healthy and have a merry Christmas, cheers!