Skip to main content

Smart home equipment

My home is relatively smart in that I run a Home Assistant server with quite a few integrations with lighting, motion sensors, door/window sensors, CCTV, temp/humidity, energy and heating so I figured I'd list out my tech choices and any good/bad points that I've found while in use. My tech choices are now pretty stable after a few iterations over a few different types which means I have time to write a blog about it rather than play with Home Assistant all the time!

Home Assistant

This is the brains of the operation - it sits in the garage running on an old Shuttle PC with a DeConz Conbee II Zigbee stick in the back and is exposed to the internet so that the associated Android phone app can communicate with it at all times. That's pretty useful as I have a bunch of geo based automations hooked in but means that I have to be on top of my security model.

Home Assistant has been rock solid for many years now. It's consumed A LOT of time in configuration and maintenance but I kinda like that!

What I will probably upgrade to is a Home Assistant SkyConnect dongle when they're released. It'll still do ZigBee for all the legacy stuff I have but will have future support for Matter which I'm intrigued by.


My journey in to smart lighting started where most people start, with Philips Hue. However, they soon became a pain in the ass given that anyone who turned off the light switch would kill power to the bulb rendering it useless.

I've now switched all my bulbs back to normal LED bulbs and put in place Shelly control units, primarily Dimmer 2 and 1L units. The Dimmer 2s are a mix of being wired in with neutral connections, which is the preference and primarily for those upstairs where I can access the cabling in the loft, but with many of the downstairs units wired in without a neutral wire and which also work fine.

The only snag I've seen with them is button bounce - they occasionally bounce back on/off of their own accord which is far from the end of the world but is slightly annoying.

Motion Sensors

The motions sensors are a key part of my smart home automation in that they command the lights in all the rooms, which is great for the kids who can't reach the light switches, but the sensors also form a part of the Home Assistant burglar alarm which is set up in my home.

The motion sensors I use are the Aqara ZigBee variety which have been pretty robust and I'm pleased with. The battery life is also pretty good, most have been in operation for over 18 months and I've not changed the batteries in any of them yet.

Door/Window Sensors

Again, the door/window sensors form a part of the Home Assistant burglar alarm and, again, I use the Aqara ZigBee version which have also been rock solid.


I've always used Ubiquiti Unifi CCTV cameras and have the G3 Bullets and a G3 Flex which are great full HD cameras. They're dotted around the outside of the house and fed by Power over Ethernet.

I used to use the Unifi NVR software but swapped over to Frigate NVR running on a Raspberry Pi4 about a year ago. That was a great upgrade as it integrates well with Home Assistant and does a lot of cool stuff like person detection and mobile notifications.

Temp/Humidity Sensors

Aqara once again - I don't have as many as I used to when I had some of a different brand so I now only have 5 or 6 running but they're all I need given the smart heating system.

Energy Monitoring

For years I struggled with the Chameleon IHD provided by my energy supplier - Bulb but soon to be Octopus energy. I went through two iterations of the IHD as well as the not-so-smart smart electricity meter. Data made its way into Home Assistant via a Samsung SmartThings integration, or at least it should have done, but the energy data was patchy and gas simply never arrived.

But the Chameleon recently got relegated in favour of a GEO IHD which now sits in the garage with the screen off but pushes all the smart meter data into an app - and, more importantly, Home Assistant, which I use for energy monitoring. This has been pretty solid for a while - especially compared to some others like Loop Energy and Hildebrand Glow which were both pretty useless by comparison. So far I'm a big fan of the GEO unit, which provides data in very regular updates, so fingers crossed that remains.


I've been through a number of smart thermostats over the years including Nest (which got relegated when they integrated with Google and took away the works with Google ability) and HoneyWell Evohome (which was fine but mega expensive to get the smart TRVs, so I never did).

I then very nearly bought the Shelly TRVs - in fact I did order them but then chickened out and cancelled as I didn't fancy writing all the automations to get them to work. I can write automations for Home Assistant but writing custom automations for something as complicated as a smart heating system seemed a stretch too far.

But given the huge hikes in energy costs I wanted to get individual room heating in place via smart TRVs but wanted them to be cloud independent i.e. they had a local API so I could continue to command my heating system even without the internet being there (something which HoneyWell wasn't great on).

I opted for the Drayton Wiser system with smart TRVs and now have twelve of the units dotted around the house and hooked up the the Wiser Hub in the garage - and of course hooked up to Home Assistant. It's great - I have custom schedules set up for each room so we only heat the rooms we're actually using. Home Assistant controls the auto geo home/away given that it's linked to our phones and I definitely think we're using less energy. This system is pretty new so I'll keep an eye on it and blog about it more in future.


When we moved in to our current house we had solar panels on the roof that had been installed around 2011. It's around 3.5kW system size and has a SolarRiver inverter in the garage with an ethernet port on the bottom that I've played with a few times over the years but with little success. Initially I hooked it up to the SolarRiver website but wasn't comfortable with that given where in the world it was hosted so I blocked it from being internet accessible and didn't have any usable data for a long time. However, I was vaguely poking around on GitHub recently and found a repo that sniffed out the UDP data broadcasts from the unit via a nifty docker container which is now running on an old Ubuntu server in the garage and which hoovers up the data and posts it to PVOutput. Of course, because the data is in PVOutput, it's also now in Home Assistant which is awesome to see the electricity, gas and solar data all in one place, finally!


    Popular posts from this blog

    Threat modelling this website

    My previous post looked at producing a C4 model for my (simple) website. This post takes that a step further and looks at how we can use C4 modelling to elicit security and privacy threats using two frameworks: STRIDE . Most people know STRIDE, it’s derived from the Microsoft security threat modelling process from the early 2000s and represents Spoofing, Tampering, Repudiation, Information leakage, Denial of service and Elevation of privilege. LINDDUN . This is not so widely known but I first came across it in one of the Application Security Podcasts on  Privacy Threat Modelling . “ LINDDUN  was created in 2010 as a collaboration between the DistriNet and COSIC research groups of KU Leuven, Belgium”. It is a framework, not unlike STRIDE, which represents Linkability, Identifiability, Non-repudiation, Detectability, Disclosure of information, Unawareness and Non-compliance. However, both STRIDE and LINDDUN base themselves around classical threat modelling techniques which, in my opinion

    C4 modelling this website

    This site has been around for a few years now and has changed significantly, mainly from an infrastructure perspective, over that time. That can be done as the site gets very few hits so I can use it to test features and experiment without worrying about outages.‌ In a work context, I very much promote the use of  C4 modelling  as a consistent and clear means of expressing a system architecture. C4 modelling struck a chord with me when I first came across it as it takes the best bits from UML and structured systems engineering, which is my background, but allows them to be used in a more agile (with a small ‘a’) software development context. Consistency is also the key; on a daily basis I review a handful of threat models which have historically been drawn using  any  drawing method (logical, physical, software based, high level, low level, etc) and tooling that you can imagine. Such a lack of consistency brings with it a time burden; it takes time to understand how each of the varying