Standalone Pi vs HomeServer

Hi, I am an absolute noob to all of this topics and just started reading.

I am considdering to get started with zigbee. At the moment I have no other interest in home automation than that. Since I am familar with python I thought HA with ZAH might be a good way to go.

Before getting really started I am already undecisioned on how to run HA. I a have a debian server thats running 24/7 as file server, media server TVH etc. I have an unused RPi3 too and I have a network with VLANS.

I could save some energy by just setting HA up as a next docker application on the server. I am a bit hesitated to do this, because running smart home stuff on my personal file server feels a bit insecure, although my understanding is that zigbee doesn’t opens risks for my private network.

Or I could set up HA on a RPi on it’s own VLAN to have it decoupled from my server and have fine granular access. But I would need to power the Pi and I read that this is not the most stable experience.

Any recommendations?

1 Like

We shouldn’t make decisions on ‘feels.’ Why do you believe it to be insecure? Those aren’t the questions you need to ask first.

What is your goal?

I ask this as it matters to the answer - Do you want to learn more about selfhosting and Linux? Do you want to learn more about Home Automation? Do you want to learn about Zigbee?

There are many different ways to run HA. HAOS, Supervised, Core, Containerized - each of them has pros and cons - you need to deeply understand the difference - else you risk the next noob question - why can’t I have addons in CORE??!!

If you want to run your own ‘equipment’, you use something other than HAOS. HAOS on the other hands is by far the EASIEST way to run HA. So which do you want? Are you more into the nuts and bolts or would you prefer to learn HA and not care about the nuts and bolts so much?

If your answer is I don’t care about the nuts and bolts as much as HA - then you want HAOS, your choices are Pi or VM on the gear you already have because HAOS is an os level replacement.

You could run supervised on the Pi - just word of wisdom - don’t. Not worth the headache unless your hobby is maintaining an OS.

the reason I say it’s your OS install type - not the gear… It’s basically portable. If you’re using a version of the system that supports backups (do it early and often) you can restore a backup of a HAOS or supervised install to another in just a few minutes and everything comes back - doesn’t matter architecture. That includes migration…

If you have the ability to sequester the Pi to a different VLAN or network - you can do it with your other gear too. Grow into your needs.

Addons v. Integrations:
One big misconception when newbies get started is - OH NO I need Addons - I can’t have them with Core. Addons are NOT Integrations. Integrations are modules of code that load INTO Home Assistant to provide access to technology. Addons are Servers and Services that run completely independent of HA but may provide additional utility. Integrations are available in ALL install types. For most ADDONS there is installable code where you could run the same service on independent hardware. So don’t worry about losing access to things by going Core - it again comes down to how you like to MAINTAIN your stuff.

It’ll come down to - do you prefer to run your own docker containers for your extra stuff or no? If you don’t care to be a server admin (like me… I’m in IT all day every day) HAOS - has the system, maintains the OS for you and ‘addons’ are pre-canned-configured containers to get you extra functionality. You get Addons in Supervised too - but that’s not for the faint of heart. If you want to run your own OS AND like maintaining the other software - then you want Core or Container - but you have to maintain your own docker images for all that ‘extra’ stuff.

Yourt network config and choice of how you expose your install to the world (Internet access, IoT subnet, etc) is also independent of the gear, so you could in theory, START on HAOS on that Pi. be up and running in a couple hours or less today. When you feel you’re comfortable with how it all works transfer it to different gear. Or stay - your choice.

My personal suggestion - small install on the pi, learn the ins and outs of HA and the nuance of Zigbee before trying to also include it in a self-host environment. Get it rolling, figure out the network, etc. If you want to move it later - then just move a VM of HAOS into the selfhost environment, restore the backup and then correct the virtualized hardware specific issues. It’s too easy to mess up a HA install without also worrying about the intricacies of the OS or hypervisor. One step at a time.

2 Likes

Thank you for your reply. My interest in HA is solely to have a tool to use zigbee devices like Ikea Trådferi, Hue etc., but with vendor agnostic, self hosted and independent system. I want to controll lamps etc. from our android devices.

I can’t say whether in the future there is interest to include or do more stuff, but since I am not a home owner there is not too much I could think of.

I don’t want to start with HA to become familar with Linux or servers or whatsoever. I am already playing around with stuff like this for years with NAS, Debian Server, OPNsense etc.

When I thought some time ago about it, I had the idea of using a pi to have this IOT/SmartHome stuff completely independent of my other devices and services and to have fine granular control about the network. If I would go this way I would install HAOS on the Pi, since I wouldn’t run anything else on that. I guess with a sonoff stick and ZHA I would be fine.

As I wrote there are two things that make me considder to set HA up as docker on my debian server. Firstly since the machine is already running I spare the energy the Pi would take. Second I read that it’s not uncommon that the SD card gets wracked. Since I have al my services on my debian machine running via docker that would be my go to option there too. Using HA and ZHA with a Sonoff USB stick.

What stands against it is that it increases complexity and chances for failure on my server which I don’t want.

I like your proposal to start of with the Pi and break things and once having it running considder a switch. Is it easily possible to migrate a config from HAOS to a docker HA? I guess it would require at least some fixing compared to just move the data from the mounted folders for the docker containers.

It’s not as easy as the backup/restore - but it’s manageable if you plan for it. Limit what you deploy in ‘addons’ in favor of containerized versions on your Deb box - that limits / eliminates your reliance on the preconfigured parts, it does however force you into more complex networking. You could also deploy addons where you have researched how easy it is to move from AddonA to containerA.

Ive read a few examples - it basically boils down to (please read the many posts on the site about it do not accept my word as truth before trying it) moving your config folder to the install running in the container - I’ve seen various methods mentioned and I’m not an authority there.

Fixed that for you - plan for it… Always bring a towel.

Maybe I try to play with raspbian and the docker solution on the Pi, since it would be, despite the network adress, a no brainer to migrate.

I don’t see need for Addons yet. My understanding is ZHA is not an addon, but an integration. If I can controll my lights from my phone, dimming them set color temp etc. in an easy mannor it’s enough.

I guess that as long as I trust HA and only have zigbee devices there is no real thread. Worst that could happen is that people get control over the lights, but there isno intrusion into the server over zigbee possible.

1 Like

If you go with Supervised for the RPI, it will be considered unsupported unless you run Debian OS instead of Raspbian the RPI comes with (which is based upon Debian). There is an excellent step by step instr. to install HA from scratch on debian here - it will be reun headless - meaning over the network for video - but not in the very beginning part of the OS install, so you wil need one of those cables that allows you to attach at least one monitor to the tiny HDMI connector on the RPI. And if using a PI, run it on an SSD - it will be much faster! (Mine runs like a top - and much cooler too - as this install is 64 bit pure debian and the rpi when I bought mine about a year ago it came with 32 bit Raspbian) -

I get the feeling I am overseeing something, as you are talking about supervised all the time.

What is the matter with just running the docker container?

Even though my server is debian I still would want to run it via docker, because it’s neat and clean. If I want to get rid of it again just remove the container and the mounted folders and it’s gone. I am not a big fan of native installation anymore.

@8FordPrefect8 I have a similar situation as you, with a Pi4 and some IKEA and SonOff Zigbee devices lying around in my new home. And my choice is running a Ubuntu OS on my Pi4 and install as docker applications. A bit different is that I attach all zigbee devices via zigbee2mqtt and HA MQTT instead of ZHA, as I tried and realised that ZHA seems unable to support all IKEA and Sonoff devices that I have (I forget which one)

I choose to install using docker because I anticipated myself (which I am) to install few more stuff on it, Pihole and PiVPN, so that it will be a DNS that serve local network, and able to be connected externally. With that arrangement, I also setup my router to expose only one port for one device, Pi4, to outside network. It seems to me installing extra thing on a pre-built HAOS or other Raspberry OS directly may be problematic, so like you said, docker is clean and neat, so I did it.

Now, I can install HA and WireGuard on my phone and control the stuff through phone even when I am away from home. The single port NAT rule to a Pi4 with limited capacity also minimised the attack vector. I think it is better than installing everything on one hardware server and expose it to the internet at the same time.

I used my Pi for pyhole in the past too. Now I have an opnsense router and it’s in a drawer for long time. Hence theidea to use it as zigbee gateway/home automation server.

I am not pushing Supervisor, just telling you the easiest way to get there as supported and healthy status installation if you decide to go that route with an RPI as I have done. You should do whatever is easist and appropriate for your use case.