Expected Reliablity on a Pi4 4G?

What level of reliability should I expect from my Pi4 system?

So as my Smart house grows my Pi4 has started to get unreliable.

My house has 10 ZWave thermostats
9 Zigbee blinds
8 HD security Cameras (in motion eye)
A 6 zone smart sprinkler system
about 15 Zwave wall switches
A couple of Zwave wall plugs
about 20+ motion and contact sensors from Zigbee devices and an integrated security system
10 or so wifi smart switches (cloud based)
about 5 Zigbee buttons and
a bluetooth bridge and a switch bot

(and two dead MyQ openers)

Dozens of Automatons, to manage thermostats, based on occupancy, window status and expected sun load, Automatons to trigger the garden sprinklers based on expected temp and rain, motion triggers to turn on lights at night and to “wake up” the house in the morning

Sorry that is TLDR

Short version

I have at least 75 smart device end points a mix of , Zigbee, Zwave, Wifi and Bluetooth. And over 60 Automatons

I’m running on a Pi4 4G with a USB M.2 NVMe 1TB SSD A 6 Amp power supply, custom cooling system. I have a 3G swap file active and am running MariaDB. Monitoring everything with Glances.

At present the CPU is fairly stable at 35*C and 45-55% load
Memory use is in the 40% range and the swap file is rarely used.
The Pi never reports a power issue, though it did, once in a while, before I installed a 6A system

During Samba share back ups the processor will spike to 70-75% but the rest of the time it just hovers around 50%

My system will randomly crash about one or twice a week. Sometimes in the late afternoon… Sometimes late in the evening (9-11pm) Sometime early in the morning. (~4am). No log, no error, no message, just unresponsive. Reboot and 30 seconds later all it good… for another 3 or 4 days.

What level of reliability should I expect from my HA Pi4 system? Have I pushed it too far?
I have several other pi’s in the house (both 3’s and 4’s and they seem to “just run” )

I have some old Dell Laptops kicking around, is it time to port this to one of those?

Sounds like a power issue honestly. Do you have all the extras (ssd/coordinator sticks etc.) on a powered usb hub? (the 6A psu doesn’t really matter-pi draw from the USB bus and are limited to its draw ~3a.) the 6a makes sure it can draw the USB max, but an SSD and a few other things and poof. Undervolt reboot.

From what I understand this is an open secret with the RPI4. Please note what I did and my entire system has been rock solid ever since I did this

The short answer is, Yes.

If you want something reliable using a laptop you already have that is known in good working order is a great choice. I switched from using a Pi to an old Dell Optiplex years ago and never looked back.

If power consumption is a concern, something like a Lenovo M700 ($120 AUD) is also a great choice. I’ve recently retired my Optiplex and the M700 sips about 8w of power and has the footprint of a modem.

My 2 cents, a Pi is almost never the best choice for HA.

It appears that you are serious about IOT. It may be time to get serious about the computer. My Home Assistant runs on an Intel NUC i3, and I don’t think it’s ever crashed. It is the most reliable piece of computer hardware in my home. You can get a very nice used Intel NUC on eBay for $100-150, plus memory and an M.2 SSD and you are still under $200.

A number of people have run Home Assistant on laptops, but they weren’t built for 24/7 operation.

I haven’t tried this yet. But my experience with the USB dongles on the Pi and HA are “Danger Danger Danger” do not touch…

One time… a few months back when I was working on powering the Pi directly through the GPIO pins I mistakenly swapped the USB ports for the Zigbee and the Zwave dongles when I was putting the Pi back in its case. Upon boot it completely corrupted the system. I swapped back them rebooted and only the Zigbee came back… all of the Zwave was dead HA could not find it. Only after a complete system restore did everything come back. Based on that I would bet that adding a powered hub would have me re-configuring several dozen wall switches, sensors and blinds…

If I’m going through that pain I might as well just port to the laptop. In fact the only reason I haven’t ported so far is the fear of the dongles and how HA Unix “talks to them”

The laptops are “corporate grade” Dell Latitudes (lugables) and the one that I use as a daily driver hasn’t been turned off in over 3 years, zero issues, they are built like tanks…

I also have a Synology box that I could use… But it is my main media server and backup system and its processor gets busy when it is playing movies or doing backups…

I’m going to give the laptop a shot. I hope that swapping the Zwave and Zigbee dongles are plug and play… I fear that this will be a multi day project.

An hour or two.
Do a full snapshot backup
Take the Pi offline (so that you don’t have two homeassistant.locals on the net.
Move the dongles.
Install Home Assistant on the laptop then restore from the backup.

The only yellow flag I see is identifying the USB ports for the dongles. If I recall, the device information is on the dongle.

1 Like

They’re easy to deal with IF
You use a hub (dongles hate the 3ghz interference thrown by the Pi USB3 bus especially if there’s an SSD present so put the sticks on usb2) PARTICULARLY Zigbee because it must live in the 2. 4 Ghz range

And you address your sticks by ID not by the virtual usb port (whicas you noted can move around - but that’s good advice no matter what platform you choose.

I can pup out my sticks and drop them back in at will - doesn’t even blinkm

Some have tried only to find out you’re still limited by other electronics inside the Pi to the amperage of the usb bus.

So if you have other options that’s great but it still sounds like a power issue and a powered USB2 hub for sticks and a powered hub for the SSD (if you want it on usb3) is still the best way to go I run way more on mine than it sounds like you do and it’s just solid - well until I do a stupid on occasion. The only time mine randomly crashes is when I forget to plug the USB hubs power supply and it starts drawing off the box.

The box knows too - I have it plugged into a hdmi port on my TV for when it does misbehave an undervolt gets logged quickly… Then a crash.

Is there a link somewhere on how to identify the USB dongles the right way (your way) to avoid my issue (and fear) I must have installed them based on a YouTube video that was probably outdated and messed that up.

Thanks

Settings → Hardware → All Hardware → find the device → path (you’ll see an entry for each of your sticks, look for the ones that start with /dev/serial/by-id/ the entry will depend on what kind of stick)

Then you replace the virtual (ttyacm0/ama0) port in the relative config file and restart the addon or ha using the stick depending on what’s driving it.

Thanks! Ironically my ZWave Dongle was coded with the “long” port description… My Zigbee was
"/dev/ttyUSB2"

Replaced that with
"/dev/serial/by-id/usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_1687ee7c71d9eb11a540158e6fe9f4d9-if00-port0"

Odd that It looks like I got the ZWave one right… Since I installed that USB stick first…
The Zigbee stick was added a few year later after I installed IKEA blinds in my house.

Also ironic the Zigbee port “address” was super easy to find and change… The Zwave integration/add-on buries the port address DEEP within the integration…

1 Like

I have to agree

Well after messing about with bi-weekly 2:00AM reboots and a powered usb hub… I gave up when it started to crash a few times a day. Not sure if the NVMe hard drive was corrupted or something else was going on… But I figured these old Dell latitude laptops are tanks and I have a few kicking around… so why not.

My past experience with HA is that nothing is easy and everything takes at least a full day of fiddling and messing around. This was not like that…

Step one backup Pi4 and download backup
Step two power down Pi4 collect ZWave and Zigbee dongles
Step three map the laptop to the static Home Assistant IP address on the DHCP router… reboot router
Step four installed the dongles in the laptop… reboot that…
Step five logged in… (2 factor still worked, amazingly) Settings → System → Back up… Upload and Restore
Step Six hard booted the laptop

That took maybe 15 minutes tops

Step seven took the dog for a walk around the block.

I get home from a 15 minute walk with the dog… I come in the front door, try the Zigbee button by my office that triggers two SmartThings controlled switches… NO FREAKING WAY… it worked!

At first the webpages were a little less “snappy” but that quickly was resolved…
The Pi4 was running about 50% CPU (with peak load over 75%) and 40% memory…
The 11-12 year old POS dual core i7 laptop runs at 14% CPU and 20% memory. Everything worked, except the Pi Power meter… Uninstalled that.

I’m going to turn off my bi-weekly boot and see how stable this is

Thanks to all for your help and encouragement

One last update. So I have been running on a >12 year old Dell dual core (4 thread) 8G i7 laptop 8G…
And the system has been rock solid for almost a month now. It is so nice to wake up to a warm house and start my day with a cup of coffee rather than rebooting a Pi and try to figure out which morning apps failed to fire and who is going to be complaining about freezing in the dark.

New bonus, the fact that I can walk the server around the house on battery power makes it really easy as I’m porting all of my Z-wave devices off of my Smart-things integration and moving them directly into HA (some older Zwave devices need the hub close when they include/exclude). ZWave is considerably faster (less popcorn lights).

Previously, as my Pi4 based HA got less and less reliable, I had ported my Motion eye system to its own Pi4. With a separate Pi4 based Motion Eye triggering HA events “remotely” via MQTT the Laptop just trots along at 20-25% processor load. If I move Motion Eye events back into HA then the PC runs at 30-35% load… At no point does the processor get above 60* Celsius. These laptops will normally idle around 55*-60* Celsius…

The only challenge with the PC/Laptop version of HA is that a “Restart” no longer restarts/resets the entire system. And I have found that some of the JS apps and scripts that I have implemented come back “unchanged” after a HA “restart”… And while a Restart on the PC is VERY fast (2 or 3 seconds)… For some JS services a cold “Reboot” is now required… PC Reboots are not fast and take about twice as long as the Pi4 (30+ seconds).

I just got donated a “last generation” intel based i9 8 core (16 thread) macbook pro with a cracked screen… that I’m considering using as the base HA server… But the Dell is working so well I think i might just let the old dog keep going.