Home Automation

Introduction

I love remote control and automation, and control systems in general. Implementing some sort of home automation has always been something I wanted to do. Interestingly, home automation is not a new thing… It’s been around since the 70s!

Checkout this video showing X-10 products from the 80s/90s:

Home automation was not very popular, practical or affordable back then. I had never heard of these products back in the 90s, which was probably not surprising considering that the only thing I was interested in back then was playing Quake and Doom on a 486 PC!

Home automation has gradually become more accessible, affordable and mature, with some great products on the market today.

Products

Starting out, home automation can be quite daunting. The market is a bit of a minefield, with various platforms and products, most not working well together, with some requiring gateways / hubs, cloud accounts. Interoperability, ease of installation and privacy are significant considerations for me (and likely many others) when choosing products.

About 3 years ago (as of January 2025) I started renovating our home, and I had the opportunity to create the infrastructure necessary for home automation. This was essentially just putting in the necessary wiring, control panels, back boxes, ethernet ports etc. I did a garage conversion and created a study / electronics lab, and I pulled down and replaced all the old Artex ceilings in the foyer and open plan dining room. This gave me access to all wiring on the ground floor, including the kitchen and lounge.

Just prior to this I was investigating various home automation products and discovered the Shelly range. I was happy I did, because Shelly products are ideal for the level of integration I wanted. They are compact, affordable and compatible with various home automation platforms. Prior to this, I had no experience with alternative brands or platforms.

Some of the features of the Shelly mainstream control products are:

  • WiFi connectivity with built-in web page for configuration
  • WiFi access point for initial configuration to connect to the network
  • Bluetooth
  • No hub required
  • No cloud account required
  • HTTP, REST, MQTT protocols

I have since installed many Shelly products – mainly dimmers, relays, RGBW controllers, and motion detectors. Most of my home automation is around lighting, but I plan to expand that.

Shelly devices expose a wireless access point, so that you can connect to and configure the device, and the first step is usually to join it to your WiFi network, followed by updating the firmware.

Once they are on your network, you can program them to interact with each other via HTTP, or connect them to a home automation platform such as Home Assistant. In this case you would use MQTT as it is a faster more reliable protocol than HTTP.

Home Automation Platforms

Home Assistant

After reviewing various platforms, I settled on Home Assistant. Compared to other smart home platforms, Home Assistant stands out due to its extensive customization options, open-source nature, local control over devices, a large range of supported integrations, and a strong community, allowing users to deeply personalize their smart home automation with a high level of flexibility and privacy compared to cloud-based systems.

I installed Home Assistant in a Docker container on my Raspberry PI Server.

As of October 2025, all I have been able to do is spend a small amount of time familiarising myself with the functionality of Home Assistant and have created some simple scenes and automations just to get things working, but it needs a lot more work – especially the dashboards.

Scenes are one of the stand-out features of Home Assistant. They let you define the exact state of multiple devices (lights, media players, thermostats, switches) and activate them all at once. You can define multiple scenes, each with preset configurations for different devices. When a scene is activated, all included devices instantly adopt their assigned states.

Scenes can be embedded directly into automations and scripts. You can trigger a scene when someone arrives home, presses a button, or at a scheduled time.

Here I am using a Shelly BLU Motion PIR detector to switch on a single spot light for 30 seconds:

This second automation turns the light off when no further motion is detected:

Node Red

I have chosen to use two other platforms that are commonly used with Home Assistant: Node-RED and ESP Home.

Node-RED is a low-code, visual programming tool for integrating hardware devices, APIs and online services, and in context of home automation allows you to visually create complex automations. It uses JavaScript and has a plugin system which allows you to install packages that add ‘nodes’ (the building blocks of your flow), thereby extending the functionality of Node-RED. This makes it a very powerful solution.

There is a package specifically for Home Assistant (node-red-contrib-home-assistant), which adds nodes that allow you to automate all your hardware devices in Home Assistant.

I have not created any automations using Node-RED yet, although I have built a POC integration that connects to the WordPress API.

Below is an example automation I found online:

ESP Home

ESP Home is a locally hosted platform (Raspberry PI Server) that lets you configure and control microcontrollers through Home Assistant using simple YAML files, making it easy to integrate sensors, switches, and custom automation into your smart home. For example, if you have an ESP32 that is connected to some relays and sensors, you can read the sensors and control the relays in Home Assistant. This is extremely powerful!

I have not had the time to even try ESP Home yet.

HACS

HACS (Home Assistant Community Store) is an integration that lets you easily install and manage custom components, themes, Lovelace cards, and other community-created add-ons within Home Assistant, without needing to manually copy files or edit YAML.

Why HACS Is Useful:

  • Streamlined installation of third-party integrations and UI elements
  • Automatic updates for custom components
  • Curated community content with versioning and documentation
  • Modular architecture

If you’re building a scalable Home Assistant setup, HACS is practically essential for tapping into the broader ecosystem.

Installation

I have installed around 35 devices so far. Most of these are dimmers and relays. These all ideally require a neutral connection. In the UK light switches do not have a neutral cable, but Shelly have already found a solution to that. They use the leakage current of the lights across a capacitor to power the device. If the leakage current is too low, a bypass resistor is used across the light.

I have not needed to use this method yet, as I have been able to rewire all the lights switches I currently control to include a neutral. In some cases I have access to the ceiling void (after replacing the ceiling downstairs), so I have added back boxes to house the dimmer, and routed neutral to that, instead of down to the light switch.

Study Power

Between the electronics desk with all of my test and measurement equipment, and my PC with all of its peripherals, I have many devices plugged into the mains. I have sockets all over the place to avoid the use of power strips / multi-way extension cords.

They are not all mains sockets – there are a number of USB, speaker, ethernet and other outlets.

See the Study & Electronics Lab panorama for the bigger pictrure.

It would not be feasible to switch individual sockets on and off every day, and I am not prepared to leave all this equipment on permanently for two reasons: Fire risk and wasted energy. To allow me to switch all sockets on or off at once (without simply switching the RCBO in the consumer unit off), I installed a small consumer unit with 3 20A contactors (high power relays), controlled by 3 Shelly relays. Each contactor serves a radial 4mm2 circuit.

The mains sockets are split into 3 zones: Main PC desk; electronics desk and all sockets down the left along the windows. I can now switch zones on and off as necessary from my phone or any Shelly enabled button or control panel.

Study Lights

When I did the garage conversion, I added a control cabinet into the utility storage cupboards side of the partition wall to house the shelly devices.

The cables for the 3 banks of spotlights for the study feed into the top of the cabinet, along with live and neutral. When I was young I worked as an industrial control panel wirer, and I was able to use those skills here to layout the Shelly devices and wire them up. Using connection blocks is standard and allows me to remove the back tray if required.

Interestingly the WiFi signal has no problem getting through the metal enclosure, although I do have a WiFi extender close by. It will definitely attenuate the signal to a degree though. The dimmers in the below photo have an RSSI of between -45dBm and -60dBm, which is significantly higher than the advised lower limit of -80dBm, and within the -30dBm to -67dBm window for reliable operation.

The cables exiting from the right-hand of the back tray and through the bottom go to the switch panel on the other side of the wall.

The final product. The first 6 buttons from the top left control the 3 banks of lights directly. The remaining buttons are programmable and can activate scenes or automations, or anything else I configure. They connect to Shelly i4s, which are devices that simply handle button pushes and relay that information to Home Assistant to be assigned a function.

Simplified diagram of one bank of lights:

Study Desk Lights & Controls

For the desks I have RGBW LED strip lighting. I have a strip running underneath the top shelf as well as along the ceiling behind a wooden beam. This provides a nice backlight for my monitors, considering the windows are behind me to my left.

Mounted on the shelf support above my monitor are 16 buttons wired to four Shelly i4 DC devices. These are powered by the LED strip power supply, which is overrated so can power the additional load with ease – not that they draw much current anyway.

These control both the LED strip lights and the main lighting. Each button triggers a Home Assistant scene, and thanks to Shelly’s multi-action support – single press, double press, triple press, and long press – each button can activate up to four distinct scenes. To keep things intuitive, I typically assign one button to control a specific light group, while the alternate press types adjust brightness levels.

The larger middle button with the blue LED ring is the power button and LED for my PC, which is hidden in a ventilated cupboard down to the left under the desk.

I have a smaller set of controls with one Shelly i4 DC above the electronics bench to control the main lights above the desk, the under-shelf strip lights and the shelf-mounted spotlights.

Dining Room Controls

I have installed and configured a Shelly Wall Display to show my Home Assistant dashboard, giving me full control over lighting and scenes for any device in the house. I’m planning to add Shelly TRVs to manage the radiators, and once I’ve configured heating zones and schedules, I’ll be able to control those from the display too. I of course also have access to Home Assistant on my phone.

To the right of the Shelly Wall Display are the directly connected home-made buttons for the dimmers and relays (these are well earthed!). It’s prudent to have these available in case the Home Assistant server (Raspberry PI) goes down, and to be honest it is much easier switching the light on and off with a dedicated button. The top and bottom buttons control the dimmer for the spotlights, and the middle button controls the relay for the chandeliers. There are 3 sub-rooms, therefore 3 sets of buttons.

Dining Room Wall Unit

I am in the process (October 2025) of building a wall unit which features hidden RGBW strip lighting, and plan to control those with dedicated potentiometers and buttons as well as Home Assistant scenes…