Need hardware recommendation

Hello experts,

After my first total failure of the HomeAssistant, I am now thinking about the quality of my hardware.

I am currently using a RaspberryPi 4 and I have read that this is a suboptimal starting point because of the SD card alone.

Now I’ve found an expansion kit,
which allows me to operate the Pi with an SSD.

On the other hand, I also have a Synology DS214+ that I intend to replace with a newer model.

What hardware requirements does Synology have to meet in order for HA to run smoothly and stably?

Thanks and greetings,

Avoid the Synology for ha !! Runs it on your Pi4 with a good SD card and you’ll have a pretty good starting configuration :wink: If you can put your PI on a UPS to avoid sudden reboot due to power loss as you may damage earlier than expected the SD card !

1 Like

there is also option to use your synology as storage for logs and db. Install maria db and use nfs share (where you can set your config dir to) , that way your sd card is spared and even in the event of fail, your syno has full ha data to just start up your next sd and be done without losing anything.
the maria db also speeds up ha responsiveness

so without investing more money, your system will be way more resilient

1 Like

@Baujahr70 - Similar experience with the above. The HW on the latest Synology DS220+ or Qnap 253D are comparable - both in theory should be capable of running HA just fine. But when it comes to HA, the VM / docker implementation from Synology requires a couple of hoops you have to jump through, and still no guarantee. On the other hand with QNAP, VM install is just a breeze with HA’s standard ova image - you could probably spin up an initial HAOS VM install with QNAP in 10-15 minutes.

Then there’s price differences you have to consider.
The other (non-VM) software on Synology is probably more polished than their QNAP equivalents. But then both are polish enough.

Consider all the responses here, what I am trying to say is that you have options.

====
Maybe you can try both Pi4 with SSD route and a new NAS route? :slight_smile:

1 Like

Synology will always limit what you can do on system and may actively impeded it or drop support. They are also expensive when compared to things like NUC or even rack servers(used/refurb) that offer better performance and expansion capability

Synology is great for storage but I would look at your long term needs before replace or buy anything.

1 Like

I’m using an older laptop and Proxmox
built-in UPS, keyboard and monitor :wink:

1 Like

I would say the important thing is to get a system that will be supported in the future also.
Raspis will for sure be supported, but the SSD expansions might not.
NUCs will probably be supported too.
Rack servers are a bit more uncertain, since its usually a commercially product that follow the security requirements of that enviroment, so once the security requirements are not met anymore, then the userbase drops drastically and therefore the support too.
Old laptops of bigger brands are usually supported for a long time on linux, but more obscure brands are not.

I am personally using a 5y old HP fanless laptop.
It has SSD, wifi, LAN, several USB ports and the battery function as a USP.
I went with that because I got it dirt cheap, due to the screen being cracked and it was a touchscreen, so replacing that was not really worth it.
Because the screen was only cracked, then it was still somewhat functioning in the left half and that was important, since HP often only initiate the onboard monitor when entering the BIOS. Dell and Lenovo often initiate both onboard and external monitor when entering BIOS, but be sure to check that if you go down this road.
I had tried something similar with another old laptop with a

1 Like

I’m running a Pi4 w SSD drive for over a year now with ZERO issues. There are lots of threads on how to configure this and I highly recommend this approach. I run a pretty big configuration as you can see from my “Counters” card.
Counters

  • alarm_control_panel: (1)
  • automation: (279)
  • binary_sensor: (100)
  • calendar: (3)
  • camera: (6)
  • climate: (2)
  • config_editor: (1)
  • device_tracker: (6)
  • fan: (1)
  • group: (24)
  • input_boolean: (101)
  • input_datetime: (23)
  • input_number: (86)
  • input_select: (16)
  • input_text: (5)
  • light: (43)
  • lock: (3)
  • media_player: (8)
  • person: (2)
  • proximity: (2)
  • remote: (2)
  • scene: (7)
  • script: (266)
  • sensor: (530)
  • sun: (1)
  • switch: (66)
  • timer: (1)
  • var: (24)
  • weather: (1)
  • zone: (14)

And, in case you’re wondering, here is the code to paste into a Markdown Card to get this functionality.


**Counters** {% set unique_domains = states | map(attribute='domain') |list | unique | list -%} {%- for domain in unique_domains -%} {{"\n"}}- {{domain}}
  {%- for item in states[domain]%}
  {%- if loop.first -%}
  : ({{loop.length}})
  {%- endif %}
  {%- endfor %}
{%- endfor -%} {{"\n"}}

1 Like

Hey @kartcon Ive been using the “start time” integration and it is quite revealing what takes time to boot,

While my Pi4 is really dormant most of the time, its like back in the DOS 3.1 days where config.sys and autoexec.bat needed to be refined to improve boot times.
Right now Im looking at alternatives for hardware that is way speedier than a Pi4 and a M.2 (cos its BW limited thru the USB3 port) cos it feels like back when we were running Pi3’s w SD cards…

From the results - Personally I was suprised at the boot time of the mobile app

homeassistant: 71.6
mobile_app: 14.1
deconz: 13.2
vera: 12.8
tuya: 9.8
hassio: 7.3
smartir: 7.2
hacs: 6.9
input_text: 5.2
mqtt: 5.1
broadlink: 4.9
input_boolean: 4.4
zone: 4.3
start_time: 3.9
rpi_power: 3.8
sonos: 3.8
input_number: 3.4
timer: 2.7
tts: 2.7
template: 2.5
group: 2.5
scene: 2.4
input_datetime: 2.3
counter: 2.3
input_select: 2.3
tag: 2.2
energy: 2.1
automation: 2
ffmpeg: 1.9
updater: 1.9
cloud: 1.8
generic: 1.5
camera: 1.5
network: 1.5
script: 1.4
system_health: 1.4
logbook: 1.4
cast: 1.3
media_source: 1.2
cryptoinfo: 1
person: 0.9
zeroconf: 0.8
remote: 0.7
select: 0.6
vacuum: 0.6
humidifier: 0.6
device_tracker: 0.4
light: 0.4
config: 0.4
usb: 0.4
my: 0.4
blueprint: 0.4
history: 0.3
map: 0.3
device_automation: 0.3
websocket_api: 0.3
auth: 0.3
api: 0.3
climate: 0.3
trace: 0.3
notify: 0.2
dhcp: 0.2
sun: 0.2
cover: 0.2
fan: 0.2
lovelace: 0.2
number: 0.1
lock: 0.1
alarm_control_panel: 0.1
siren: 0.1
recorder: 0.1
media_player: 0.1
ssdp: 0.1
default_config: 0.1
webhook: 0.1
image: 0
switch: 0
onboarding: 0
search: 0
http: 0
stt: 0
analytics: 0
stream: 0
frontend: 0
binary_sensor: 0
sensor: 0
system_log: 0

Using your card script to outline my hardware:

  • automation: (61)
  • binary_sensor: (33)
  • camera: (2)
  • climate: (6)
  • device_tracker: (3)
  • group: (3)
  • input_boolean: (69)
  • input_text: (1)
  • light: (71)
  • media_player: (18)
  • persistent_notification: (1)
  • person: (4)
  • remote: (1)
  • scene: (63)
  • script: (3)
  • sensor: (79)
  • sun: (1)
  • switch: (23)
  • zone: (1)
1 Like

@ 124tampines11
So after studying your load times and reviewing my own, I can say that my startup is significantly longer than yours, but based on the number of sensor/automations/scripts I have i can live with a ~3-4 minute start up. I auto-restart every Sunday around 4am so I’m never more that a week old in terms of a fresh restart.
On the positive side, my system is VERY responsive with little or no noticeable lag on batched events (groups of lights for example). I also have an extensive morning briefing that routinely ‘speaks’ for upwards of 60-80 seconds. All these things happen daily with a 99.9% certainty.
Overall I’m very happy with the Pi4 and SSD setup and would continue to recommend it as an inexpensive and solid platform. Just for giggles, here is my startup list. My biggest hogs are:

Mobile App 43 sec
Momentary Switch 67 secs but used extensively in my code
MultiScrape is slow but we actually use the data it collects
NOAA Tide is ugly slow but we live right on the water so I live with it.
Ping checks 35 devices, so fairly slow at 33 sec
Vera is my Z-Wave interface and it loads nearly 100 sensors, so 42 sec is acceptable

AdGuard Home	21.41 s
AirVisual	15.74 s
Alarm control panel	0.68 s
Ambient Weather Station	4.70 s
Analytics	0.04 s
Home Assistant API	0.52 s
Auth	0.57 s
Automation	0.79 s
Avanza Stock	4.27 s
Bayesian	2.41 s
Binary sensor	1.07 s
Blueprint	0.37 s
Calendar	0.02 s
Camera	4.03 s
Climate	0.06 s
Home Assistant Cloud	0.14 s
CO2 Signal	6.68 s
Command Line	6.74 s
Configuration	0.68 s
Config Editor	1.10 s
Configurator 0.49 s
Counter	7.60 s
Cupertino Icons	1.28 s
Dark Sky	6.16 s
Default Config	1.29 s
Delete	1.73 s
Device Automation	0.56 s
Device tracker	0.36 s
DHCP Discovery	1.98 s
Energy	2.99 s
Fan	0.31 s
File	19.33 s
File Size	4.23 s
Flux LED/MagicHome	9.76 s
Folder	2.99 s
Home Assistant Frontend 	0.01 s
Generic Camera	2.10 s
Google Calendars	10.74 s
Google Cloud Platform
Group	11.36 s
HACS 	13.95 s
Home Assistant Supervisor 	7.02 s
History	2.14 s
History Stats	4.72 s
Home Assistant Core Integration	6.24 s
HTTP	0.05 s
Image	0.09 s
Input boolean	10.44 s
Input datetime 10.37 s
Input number	10.54 s
Input select  12.15 s
Input text	11.99 s
Home Assistant iOS	3.10 s
International Space Station (ISS)	3.21 s
LIFX	4.99 s
Light	0.40 s
Local IP Address	6.49 s
Lock 	0.07 s
Logbook	1.36 s
Logger 	0.01 s
Lovelace 	0.65 s
Manual 	4.55 s
Map	0.25 s
Media player	0.44 s
Media Source 1.36 s
Min/Max	2.94 s
MJPEG IP Camera	0.90 s
Mobile App	43.86 s
Momentary Switch Component	67.30 s
Moon	2.98 s
Multiscrape scraping component	58.67 s
My Home Assistant	0.41 s
Network Configuration	4.53 s
NOAA Tides	68.03 s
Notifications	8.10 s
OctoPrint	10.40 s
Home Assistant Onboarding 	0.00 s
Open Route Service travel time	6.79 s
Persistent Notification
Person	0.89 s
Ping (ICMP) 	33.89 s
Prowl	3.37 s
Proximity	0.42 s
Rachio	9.49 s
Recorder	0.17 s
Redfin	3.80 s
Remote 	0.10 s
RESTful	20.63 s
Roku	12.88 s
Raspberry Pi Power Supply Checker	6.07 s
Scene	5.45 s
Script	0.42 s
Search	0.01 s
Season	3.00 s
Sensor	0.12 s
Siren	0.27 s
SleepIQ	7.92 s
Sonos	3.04 s
SpaceX Launches and Starman	10.75 s
Speedtest.net	9.63 s
Simple Service Discovery Protocol (SSDP)	0.11 s
Stream	0.07 s
Sun	2.13 s
Switch 	0.47 s
Synology DSM	10.08 s
System Health	2.90 s
System Log 	0.01 s
System Monitor	3.09 s
Tag	3.19 s
Template	16.99 s
Time & Date	1.72 s
Timer	12.58 s
Trace	1.10 s
Trend	2.15 s
Text-to-Speech (TTS)	2.69 s
UniFi Gateway	4.24 s
Updater	2.88 s
UPnP/IGD	6.77 s
Uptime	1.73 s
USB Discovery	0.03 s
Utility Meter	4.45 s
Variable	5.04 s
Vera	42.30 s
Version	4.52 s
VoiceRSS
Wake on LAN	5.19 s
Weather	0.04 s
Weatheralerts	12.27 s
Weatherbit	8.88 s
Webhook	0.50 s
LG webOS Smart TV	10.49 s
Home Assistant WebSocket API	0.50 s
Worldclock	4.62 s
Yahoo Finance	13.49 s
Zero-configuration networking (zeroconf)	0.87 s
Zone	9.47 s

TBH, I thought mine was slow… but yours is a completely different beast.

Its interesting some of the load times isnt it - I mean things like ping etc possibly have some latency that need to be accounted for BUT things like timer @12.58s and the Pi power checker @6.07s vs. zeroconf at less than a second.

I did notice that there is very little consistency in the times in my instance - some boots can take over 90s and some can be complete in as little as 30s so im not too sure as to the accuracy of this integration, but if it is accurate - it is insightful and gives us an idea as to where speed improvements can be made possibly in code (Im assuming the momentary switch is 3rd party - thats truly eye watering in time). The vera time I understand - they are notoriously slow in hardware (I came from vera to HA because Vera was so painfully slow)

Would also be good if there was a way of disabling unused services.

Anyone else wants to post their times???

how to format this shizzle?

Integrations
Setup time
	AdGuard Home
adguard	Documentation	Issues	7.86 s
	Alarm control panel
alarm_control_panel	Documentation	Issues	0.14 s
	Analytics
analytics	Documentation	Issues	0.02 s
	Home Assistant API
api	Documentation	Issues	0.13 s
	APSystems PV solar ECU-R
apsystems_ecur	Documentation		4.38 s
	Auth
auth	Documentation	Issues	0.12 s
	Automation
automation	Documentation	Issues	1.09 s
	Binary sensor
binary_sensor	Documentation	Issues	0.06 s
	Blueprint
blueprint	Documentation	Issues	0.39 s
	Browser mod
browser_mod	Documentation		3.81 s
	Buienradar
buienradar	Documentation	Issues	3.38 s
	Camera
camera	Documentation	Issues	0.95 s
	Google Cast
cast	Documentation	Issues	0.36 s
	Climate
climate	Documentation	Issues	0.06 s
	Home Assistant Cloud
cloud	Documentation	Issues	0.02 s
	CO2 Signal
co2signal	Documentation	Issues	1.74 s
	Configuration
config	Documentation	Issues	0.18 s
	Counter
counter	Documentation	Issues	1.79 s
	Cover
cover	Documentation	Issues	0.47 s
	CryptoState
cryptostate	Documentation	Issues	2.75 s
	deepstack face custom integration
deepstack_face	Documentation		0.37 s
	Default Config
default_config	Documentation	Issues	0.62 s
	Delete
delete	Documentation	Issues	1.07 s
	Device Automation
device_automation	Documentation	Issues	0.11 s
	Device tracker
device_tracker	Documentation	Issues	0.14 s
	DHCP Discovery
dhcp	Documentation	Issues	0.13 s
	Energy
energy	Documentation	Issues	0.61 s
	Honeywell Total Connect Comfort (Europe)
evohome	Documentation	Issues	6.47 s
	Forecast.Solar
forecast_solar	Documentation	Issues	3.52 s
	Home Assistant Frontend
frontend	Documentation	Issues	0.00 s
	Generic Camera
generic	Documentation	Issues	0.66 s
	Google Translate Text-to-Speech
google_translate	Documentation	Issues	
	Group
group	Documentation	Issues	1.62 s
	HACS
hacs	Documentation	Issues	4.32 s
	Logitech Harmony Hub
harmony	Documentation	Issues	17.28 s
	Home Assistant Supervisor
hassio	Documentation	Issues	4.72 s
	History
history	Documentation	Issues	0.51 s
	Home Assistant Core Integration
homeassistant	Documentation	Issues	0.84 s
	HTTP
http	Documentation	Issues	0.04 s
	Philips Hue
hue	Documentation	Issues	5.11 s
	Image
image	Documentation	Issues	0.03 s
	Image processing
image_processing	Documentation	Issues	0.04 s
	Input boolean
input_boolean	Documentation	Issues	1.24 s
	Input datetime
input_datetime	Documentation	Issues	2.00 s
	Input number
input_number	Documentation	Issues	2.93 s
	Input select
input_select	Documentation	Issues	1.21 s
	Input text
input_text	Documentation	Issues	1.24 s
	Integration - Riemann sum integral
integration	Documentation	Issues	0.90 s
	KNMI
knmi	Documentation	Issues	4.11 s
	Kodi
kodi	Documentation	Issues	1.91 s
	Light
light	Documentation	Issues	0.16 s
	Logbook
logbook	Documentation	Issues	0.92 s
	Logger
logger	Documentation	Issues	0.42 s
	Lovelace
lovelace	Documentation	Issues	0.23 s
	Manual
manual	Documentation	Issues	1.54 s
	Map
map	Documentation	Issues	0.30 s
	Media player
media_player	Documentation	Issues	0.20 s
	Media Source
media_source	Documentation	Issues	0.97 s
	Mobile App
mobile_app	Documentation	Issues	16.24 s
	My Home Assistant
my	Documentation	Issues	0.29 s
	Netatmo
netatmo	Documentation	Issues	7.10 s
	Network Configuration
network	Documentation	Issues	0.61 s
	Notifications
notify	Documentation	Issues	2.22 s
	Number
number	Documentation	Issues	0.08 s
	Home Assistant Onboarding
onboarding	Documentation	Issues	0.00 s
	OpenWeatherMap
openweathermap	Documentation	Issues	2.72 s
	Persistent Notification
persistent_notification	Documentation	Issues	
	Person
person	Documentation	Issues	0.59 s
	Plugwise
plugwise	Documentation	Issues	4.37 s
	Pushbullet
pushbullet	Documentation	Issues	1.91 s
	Recorder
recorder	Documentation	Issues	0.12 s
	Remote
remote	Documentation	Issues	0.33 s
	Scene
scene	Documentation	Issues	0.95 s
	Script
script	Documentation	Issues	0.83 s
	Search
search	Documentation	Issues	0.04 s
	Select
select	Documentation	Issues	0.05 s
	Sensor
sensor	Documentation	Issues	0.07 s
	Shell Command
shell_command	Documentation	Issues	0.21 s
	Siren
siren	Documentation	Issues	0.09 s
	Slide
slide	Documentation		6.23 s
	SolarEdge
solaredge	Documentation	Issues	3.84 s
	Speedtest.net
speedtestdotnet	Documentation	Issues	1.61 s
	Simple Service Discovery Protocol (SSDP)
ssdp	Documentation	Issues	0.02 s
	Statistics
statistics	Documentation	Issues	0.87 s
	Stream
stream	Documentation	Issues	0.06 s
	Sun
sun	Documentation	Issues	0.35 s
	Switch
switch	Documentation	Issues	0.39 s
	Synology DSM
synology_dsm	Documentation	Issues	4.93 s
	System Health
system_health	Documentation	Issues	0.89 s
	System Log
system_log	Documentation	Issues	0.00 s
	System Monitor
systemmonitor	Documentation	Issues	0.87 s
	Tag
tag	Documentation	Issues	1.85 s
	Template
template	Documentation	Issues	0.66 s
	Timer
timer	Documentation	Issues	1.83 s
	TP-Link Kasa Smart
tplink	Documentation	Issues	5.80 s
	Trace
trace	Documentation	Issues	0.51 s
	Text-to-Speech (TTS)
tts	Documentation	Issues	0.94 s
	Updater
updater	Documentation	Issues	0.94 s
	USB Discovery
usb	Documentation	Issues	0.32 s
	Utility Meter
utility_meter	Documentation	Issues	5.79 s
	Weather
weather	Documentation	Issues	0.07 s
	Webhook
webhook	Documentation	Issues	0.02 s
	Home Assistant WebSocket API
websocket_api	Documentation	Issues	0.11 s
	Yamaha Network Receivers
yamaha	Documentation	Issues	1.47 s
	Zero-configuration networking (zeroconf)
zeroconf	Documentation	Issues	0.51 s
	Zone
zone	Documentation	Issues	2.25 s
	Z-Wave JS
zwave_js	Documentation	Issues	2.87 s

Keep in mind that setup time is cumulative of all of the integration instances. If you have multiple config entries they will likely be setup in parallel.

For example if you have 3 LG webOS Smart TVs the 10.49s is the cumulative time it took to set them all up even if some of them were happening at the same time. So it could mean that it took ~3.5s per instance or you had one slow one and two fast ones and it took 9s to setup one and 1.49s to setup the other two.