How I Use Home Assistant: My Smart Home and Home Server Setup
How I Use Home Assistant: My Smart Home and Home Server Setup
I started using Home Assistant because I was tired of managing separate apps for every device. One app for smart plugs, another for lights, another for the EV charger — and most of them depended on cloud services that would misbehave when the internet had problems.
I wanted one platform that could bring everything together and give me direct control, ideally without sending every action through someone else's server.
Home Assistant is an open-source home automation platform you run on your own hardware. It supports devices from different manufacturers and, depending on the integration, lets automations run locally without touching the internet.
What started as a home automation project has gradually become part of my home infrastructure. I now use it for lighting, smart plugs, climate control, energy monitoring, EV charging, CCTV monitoring across two countries, and keeping an eye on some of my home server services.
Here is how I use it and what I have learned along the way.

Why I Run Home Assistant on a Separate PC
There are different ways to run Home Assistant — as a virtual machine, in Docker, or installed directly on dedicated hardware as Home Assistant OS. I chose the last option.
Home Assistant runs on its own small PC, separate from my main server, which I call homeserver-1. My main server handles self-hosted services, databases, web apps, and background tasks. It occasionally needs maintenance, updates, or a restart, and I did not want any of that to affect basic home automation.
If homeserver-1 goes down for maintenance, the lights, sensors, and automations keep working. Keeping Home Assistant on its own machine makes this possible, and it also means I can experiment on the main server without worrying about disrupting the smart home.
The Home Assistant machine runs continuously on very little power. It sits quietly and does not need much attention once everything is configured.
How I Access Home Assistant Remotely
Most of my smart home devices communicate with Home Assistant over my local network. I also use Zigbee devices — motion sensors, contact sensors, and other battery-powered equipment — managed through Zigbee2MQTT with a Sonoff Zigbee 3.0 USB Dongle Plus V2. This keeps those devices off Wi-Fi and gives me a reliable, low-power mesh.
For remote access to Home Assistant, I use the Cloudflare Tunnel add-on. This connects to my own domain and lets me reach Home Assistant from anywhere through a web address, without opening any incoming ports on my home router.
I also run Tailscale on my network, but for a different purpose. Tailscale gives me a private encrypted mesh across all my devices — I use it for SSH access to homeserver-1, remote Samba file shares, and as an exit node when I am travelling. I use the Raspberry Pi in India as an exit node from the UK when I want access to Indian content, and the Home Assistant PC as an exit node when I am in India. Tailscale and the Cloudflare tunnel are separate layers that handle different things.

Using Home Assistant to Monitor My Home Server
Home Assistant is not only useful for controlling lights and switches. I also use it to keep an eye on parts of my home server infrastructure.
homeserver-1 runs several services, and rather than logging into the server separately each time, I want important information visible in one place. The setup uses MQTT — specifically Mosquitto, running as a Home Assistant add-on — as the messaging layer. Services on the server publish their state to Mosquitto, and Home Assistant subscribes and surfaces it on the dashboard.
Some of the things I monitor include: * CPU temperature and processor load * Memory and disk usage * Status of important services * Uptime and response times for web-facing services
I also use smart plugs as part of this setup. Beyond controlling individual devices, some plugs report energy consumption, which is useful for understanding how much power certain equipment is drawing.
The Notifications I Actually Need
One thing I learned early is that it is very easy to create too many notifications.
Initially it is tempting to send an alert for every state change. After a while, the phone fills up with messages that do not require any action. I now send notifications only when something genuinely needs attention.
Notifications go to my phone through the Home Assistant companion app. I have it set up on both my iPhone and Samsung S24, so alerts arrive as push notifications without needing a separate service in the middle.
The kinds of things worth notifying about: * Water leak detection * Security-related activity on the cameras * Server temperature problems * Important power events * Situations where I may need to take action remotely
Routine sensor state changes stay on the dashboard. A notification for every motion event or every temperature reading would be noise.
Automations I Use at Home
The most useful automations are usually the simplest ones. Here are some from my setup.
Automatic Lighting
I use motion sensors and lux readings to control lights around the house. The idea is straightforward — lights should only come on when someone is present and there is not enough natural light coming in.
Lighting behaviour also changes depending on the time of day. There is no reason for full brightness lights to trigger at 2am when a dim level is enough. The staircase lighting automation, for example, uses a combination of motion detection and a lux threshold to decide whether to turn on at all, and at what level.
Climate Control
Home Assistant can combine temperature sensors, occupancy information, and window sensors to manage heating more intelligently. If a window is left open while the heating is running, the system can pause heating in that zone after a short delay. This avoids wasting energy heating a room that is being ventilated.
Energy Monitoring and EV Charging
Energy monitoring is one of the more useful things I have built into Home Assistant. I have a Hypervolt EV charger integrated, along with the Octopus Energy integration for time-of-use tariff data. This makes it possible to see total household consumption, track EV charging sessions, and understand exactly when electricity is being used and at what rate.
Having all of this in one place, rather than split across multiple manufacturer apps, makes it much easier to act on.

Monitoring CCTV — UK and India
CCTV is one of the more involved parts of my Home Assistant setup, and it covers two locations.
UK Cameras with Frigate
At home in the UK I have four cameras — the TV room, backyard, front garage, and a general home camera. These run through Frigate, an AI-powered video analysis add-on for Home Assistant that runs locally on the HA machine.
Frigate does person and vehicle detection on the camera feeds in real time. When a person is detected in the backyard or at the front, it can trigger recordings, notifications, or other automations. All of the processing happens locally — nothing goes through a cloud detection service.
This is one of the parts of the setup I find most useful. Rather than dealing with constant motion-triggered noise, Frigate filters events down to actual people and vehicles, which makes the alerts much more actionable.
India CCTV via Hikvision DVR
I also have a Hikvision DVR at my family property in India, connected through Home Assistant here in the UK. This brings the India camera feeds and event sensors — line crossing detection, field detection, face detection — into the same dashboard I use for everything else.
Instead of managing the Indian installation through a separate app, I can see it alongside the UK cameras and home automation from one place. It is a good example of how Home Assistant can pull together systems in different locations without treating them as completely separate problems.
Things I Have Learned from Running Home Assistant
Home Assistant is flexible, but running it also means looking after the system. A few things worth paying attention to.
Database Growth
Home Assistant records state changes from all your sensors. On a larger installation with many sensors reporting frequently, the database grows quickly. My setup runs the recorder against a PostgreSQL database rather than the default SQLite — at this scale it handles the volume better and gives more control over retention and performance.
Regardless of which database you use, it is worth configuring the recorder to exclude sensors that do not need long-term history, and setting a sensible retention period. Letting every sensor record everything indefinitely will cost you disk space and slow down history queries.
Be Careful with Updates
I do not apply every Home Assistant update as soon as it is released. Before updating I check the release notes, look for any reported problems, and take a backup. This matters more when Home Assistant is controlling things the whole household relies on every day.
Having a recent backup also makes recovery much less stressful if an update causes a problem.
Zigbee Over Wi-Fi for Battery Devices
I prefer Zigbee for motion sensors, contact sensors, and other battery-powered devices rather than putting everything on Wi-Fi. The coordinator is a Sonoff Zigbee 3.0 USB Dongle Plus V2, and the devices are managed through Zigbee2MQTT. A well-configured Zigbee mesh is easier to expand and keeps battery-powered sensors off the Wi-Fi network, which matters when you have a lot of them.
Home Assistant Is More Than a Smart Home Controller
For me, Home Assistant has become one of the central parts of how my home infrastructure works. It handles everyday device control, energy and EV charging monitoring, camera detection across two countries, push notifications when something needs attention, and a view into what homeserver-1 is doing.
It is not a plug-and-play system. Getting integrations working takes time, some need occasional attention, and not every device supports fully local control. But having a single platform that brings all of this together is worth the effort.
I still add and improve things regularly. That is probably part of the appeal.
My setup: Home Assistant OS on a dedicated PC, with Zigbee2MQTT (Sonoff Zigbee 3.0 USB Dongle Plus V2), Frigate for local AI camera detection, Cloudflare Tunnel for remote access, Tailscale for private mesh networking, HA companion app push notifications, PostgreSQL for the recorder database, and integrations for home automation, EV charging, energy monitoring, and CCTV across the UK and India.
Comments
No comments yet.