DIY Home Automation Powered by HomeSeer
So you have found yourself here maybe curious about what I posted on Instagram or maybe I have directed you here to talk about home automation. In either case, I'm here to share some experiences and tips on how you can learn from my mistakes on how to get things in your home working more like a smart home. My name is Daryl, and I am going to try to make our home a smart home.
Firstly though, I must get this disclaimer out of the way first. All discussion here is based on Australian Electrical Standards. Mains power is dangerous! All work involving electrical wiring must be performed by a licensed electrician. Risk of serious injury or death can occur if you proceed to perform electrical work yourself. Incorrectly installed hardware may also present a fire hazard. All information provided here assumes your electrical fixtures are installed by a licensed electrician. If in doubt about any stage of planning and preparation, please seek professional assistance.
I am in no way affiliated with HomeSeer, SmartHome Australia, Aeotec, or any other hardware vendor or supplier. These vendors were selected by my own research and I would suggest you perform your own research prior to selecting your products.
With that now out of the way, let's begin.
I come from a time where I once kept a blog running online (please do yourself a favour and DON'T attempt to locate that one) so since this whole home automation thing is a work in progress in which I am starting early, I'll keep adding to this page in chronological order keeping a diary of sorts. This may mean some items of the installation might come before others and when deploying this solution into an active environment, you may need to approach things in a different order. Remember, there is more than one way to go about this. Some ways might just require more troubleshooting. I guess like me, you are probably going to find that out the hard way.
This journey may not be for everyone. Initially this won't be written as an instructional guide. There are some instructions here and there though so I have included a table of contents that may help you jump to what might be relevant to you.
Update (2022-01-10): If you go down the Z-Wave route, do yourself a favour and buy a ready-made gateway solution as it will be a lot easier to configure and get going. If you do go down the HomeSeer route, be prepared for levels of customisation that while rewarding, will either make or break you. While I'm so tempted to just ditch it for another solution, I have chosen to persist and make it work.
12 October 2021
At the time of this writing, our house is still being built. The interior wall are up but not yet painted. We are still a while away from even moving in, so why start this project now? Because as I've learnt over the years, if you get yourself some spare time, make use of it. We have an ever growing list of tasks to perform once the house is handed over and we now have a little one on the way who is due to arrive not long after we intend to move in, so I'm trying to get a head start where I can. I work in IT; I know Murphy's Law is real; I know I'm going to have some challenges with this. So the more I can knock over now, the better. Also, as there are potentially going to be stock shortages and shipping delays, I'd like to know in advanced what I need to have things somewhat functional rather than waiting longer than necessary. Like this one time I was taking my car engine apart and ended up breaking a component that will take 3 months to come from Japan. Cable ties to the rescue! Just don't apply that mentality to this project okay.
A lot of the discussion below will initially start off with a heavy focus on lighting and fans. As I progress, additional smart home functions will be discussed. I also intended to mainly just cut straight to the point where I start configuring what I have selected but my old blogging habits have resulted in me starting a whole write-up on this adventure. Maybe I just secretly like writing a diary.
To give an idea of how I got here, let's rewind a little. Back in November 2020 when we had our electrical selections, I knew already that I was going to set our home up as a smart home. The convenience of having Alexa or Google turn on lights by just asking, or having lights automatically come on however you so desire is one of those conveniences in life that once you get a taste of,
makes you lazy not want to go back to not having it.
I definitely wasn't going to go with a third party vendor to install a solution for us. My technical background would never let that happen. Knowing this, you need to start thinking ahead about how you will approach your smart home solution.
Thankfully, you don't need to wire your home in an advanced way to enable automation. You don't need a fancy control box where everything needs to wire back to and you don't need to run extra-low voltage cabling everywhere for your switch controls. There are solutions on the market that make use of existing cabling and for your average home owner, these solutions will be more than capable. When it comes to bolt-on solutions, I pretty much narrowed it down to two technologies.
1) WiFi based solutions
2) Wireless Mesh Networks (Zigbee, Z-Wave, etc)
I have previously worked with WiFi based solutions back in the days when they first started coming out and while they certainly do the job, they also leave a bit more to be desired. I also work in the hospitality technology industry and as such, I have been exposed to a bit of the second solution, Wireless Mesh Networks, mostly in the form of Zigbee. While both are wireless technologies, the way in which they operate is quite different.
WiFi Based Solutions
For WiFi based solutions, think of this like all the smartphones and computers in your home. You have your router which connects to the internet and every device connects to that single router. The biggest issue with these solutions from my experience is the stability of the devices and your router. They are also rely on having a decent connection to your wireless router. Where devices are located outside the range of your router, you need to improve your network to bring coverage to all areas required.
As they utilise your WiFi network, the other drawback is that they are sharing this network with all your other devices. Once you start adding a large count of devices, this can add additional interference into your network. While things have no doubt become better over time, WiFi still suffers from the occasional issue with stability and this can then result in your devices occasionally not responding to commands and requiring a reboot.
Wireless Mesh Networks
Wireless Mesh Networks however differ in that while each end device will ultimately have to communicate back to a gateway, these devices have the ability to also communicate with each other and if the signal between one device and the gateway is less than optimal or outside its range, a nearby end device is able to relay the communication back to the gateway. Another benefit is that these mesh networks operate on a frequency much lower than that of WiFi which makes it less susceptible to interference and can also travel further, especially though walls of your home. Combined with the fact that this solution will be dedicated for the purposes of your smart home and not shared with other wireless devices in your home, you can see how this solution ends up being a lot more stable and resilient.
[Graphics for the below are TBD. I promise this will come later. For now you might need to turn to our friend Google]
The Chosen Solution
Both solutions above offer similar products in terms of how they integrate into your current installation. You can either replace your lights for the smart variety where it's the light itself that is controlled, or you can replace the switch side of it so everything attached to the switch is controlled.
A single storey house provides flexibility to do a lot of work after handover however I also looked at things from an efficiency and convenience standpoint. For our home, I chose to go with down-lights everywhere we required and ensured that the switch circuits were exactly how I wanted them. I didn't bother with two-way switches or anything like that because once you automate things, two-way switches are no longer necessary.
Colour changing ceiling lights were not really something I desired so sticking with just dimmable down-lights was more than enough for me. By ensuring all the lighting circuits are set up right in the first place means I can just replace the switching components over and all the attached lighting will then be switched.
Since I now had my mind set on a Wireless Mesh Networking solution, I just had to find what components I required. Initially searching for Zigbee products as that is what I've seen in the past, some further research showed that Z-Wave would be more ideal for this purpose and more widely supported. When it comes to products that are approved for use in Australia (this part is very important), two main vendors came up in all my searches; Aeotec and FIBARO. When it comes to these two brands, both have equal positive and negative reviews so it really comes down to which solution supports your requirements. For me, if I wanted to use the dimmer modules, the Aeotec has the advantage here as it can work on a lighting circuit as low as 10 watts, which will definitely be needed on a couple of our lighting circuits. This alone set me down the path of using this particular brand. While you can mix and match with Z-Wave products, maintaining some consistency is a good idea.
There are multiple suppliers of both products however in my own searches, SmartHome Australia was the site I landed on and I was satisfied with their range of products so this was the place I decided to purchase from.
There will be three primary products that I will be interested in for all our lighting as well as the ceiling fans (more on that one later):
Nano Switch - https://www.smarthome.com.au/aeotec-z-wave-nano-switch.html
Dual Nano Switch - https://www.smarthome.com.au/aeotec-z-wave-dual-nano-switch.html
Nano Dimmer - https://www.smarthome.com.au/aeotec-z-wave-nano-dimmer.html
For any light that will not be dimmed as well as for the ceiling fans, the Nano Switch or Dual Nano Switch will be used. Both are just an ON/OFF switch, it's just one can do two lighting circuits independently so this comes down as to how you wired up your house. For lights that we want to have the ability to be dimmed, the Nano Dimmer will take care of the job.
These modules allow you to keep your exiting light switches in place (in our case we have Clipsal Iconic switches) and the control module wires in behind the wall. Initially we will keep the toggle switches in place but we will eventually change them out for bell-press switches which will return to their initial position so the switch won't have an ON/OFF state. The beauty of this solution is that you can modify the behaviour of the switches so in the case of keeping the toggle switch, you can make the lights either change state each time the switch is toggled (ie. if the switch is in the off position and you turn the lights on with the app, toggling the switch to the ON position will turn off the lights. Or you can modify the behaviour to have the switch behave like a normal switch so that if the lights are already on and you toggle the switch to the ON position, the lights will still remain on, after which you can toggle the switch to the OFF position to turn off the lights.
The Electrical Plan
Since we already locked in our electrical plans, now is the time to determine what needs to go where. Taking the electrical plan, counting up the lighting circuits, and determining what requires switching and what requires dimming, I can now plan it all out.
With the above plan, every lighting circuit is covered and the lights in the main living area have dimmers. There is also a standard Nano Switch assigned for each ceiling fan.
This is where I should probably mention how I will approach the ceiling fans. So the ceiling fans don't operate like a light on a dimmer. There is a motor capacitor that is located behind your switch wall-plate in most cases that when combined with the rotary switch on your wall, allows you to control your fan speed to either LOW, MED, or HIGH. Without getting too technical, there is a way to control all three speeds with the solutions above however this requires at least 1 x Dual Nano Switch and 1 x Nano Switch to achieve the three fan speeds. For now, this is not a high priority so this will go into the TBD bucket.
What I will do however is wire the fan rotary controller into a Nano Switch. This means that I can use our app controls to switch the ceiling fans on or off to whichever state the rotary dial is set to. While it is not ideal, it is a start. This also means that if say at night we have the fan on and set to low and it starts to cool down a bit, we can then turn the fan off without having to get up out of bed. Some functionality is certainly better than none.
Because this entire solution is scalable, you can start with as little or as much as you want. Since this is always going to be an ongoing project, I decided to start off with all the living areas and master bedroom. The other two bedrooms and less trafficked areas of the house can be added to the smart home pool later on down the track once everything else in the house starts to come together.
The Brains of the Operation
Above I focused on all the modules for the lights and fans themselves, but who controls the modules? Well, that's where the Gateway / Controller / Smart Home Hub comes into play. Think of this like This is where it starts to get more interesting. There are quite a few options out there on the market ranging from basic to high end. For much of a muchness, the feature set would typically be about the same when factoring this in for a home environment but where it gets variable is ease-of-use and user friendliness. For most people, a complete gateway solution is the way to go. It will be the most straight-forward to configure and if using one made by the same manufacturer as your modules, should be easy to integrate. If I was to go down this path, the option would be the Aeotec Smart Home Hub.
But as much as I like convenience, I also like to tinker with things. I had a look various pre-made solutions out there and did like the look of a solution by the name of "Hubitat". It did have some great reviews and I was close to settling on this one. However after some further diving into the home automation forums, I was then made aware of software based solutions, some free/Open Source such as "Home Assistant" and some paid, and a product called HomeSeer got lot of positive praise. This is primarily software which you can run on a dedicated PC or home server solution however they do also sell pre-built gateways (HomeSeer HomeTroller) of various specification depending on your requirements. The primary issue with the pre-built solutions is that they are either sold to the US or European market which means some additional hardware changes are required for them to be compatible with Australian Z-Wave products.
Since HomeSeer is available as a software solution, I figured this would be a good option as I can build my own solution, and have a bit more fun in the process. They also offer a solution built to run on a Raspberry Pi (HS4-Pi) which would then give identical functionality as their HomeTroller Pi, which happens to the the pre-built solution I was looking into. While they do have more powerful versions that can run on a more powerful PC (which for me is something easy to get my hands on), the amount of processing power that will be required for a smart home will not require more than what a Raspberry Pi is capable of, so HS4-Pi looked to fit my needs perfectly. HS4-Pi also happened to be on sale at the time of writing this so it was just meant to be.
13 October 2021
HS4 Pi will run perfectly fine on a Raspberry Pi 3 Model B+, which would be the same as what the official HomeTroller Pi runs on and is available locally for about AUD$60.
That said, I'm a tech guy. If it's worth doing, it's worth overdoing. I wanted to use a Raspberry Pi 4 instead so I went shopping for one of those. I could have used the 2GB model but I wanted to get the next step up just because that's me, so settled on the Raspberry Pi 4 Model B 4GB available locally for about AUD$93. While I was at it, I went on Gumtree and managed to find a nice metal case for $15. While not essential, having a case like this with a built in heatsink will help maintain optimal performance and extend the life of your Raspberry Pi.
It has been a while since I've dived into Raspberry Pi but it seems the Raspberry Pi 4 has a couple of good improvements over the Raspberry Pi 3. The primary improvement is the inclusion of USB 3.0 ports and the ability to boot from USB. When it comes to performance, the Micro SD onboard does not have the best of read and write speeds. By having USB boot, you are able to connect a much faster external SSD to the system to take advantage of the improved performance. Because of this, I initially intended to go down the path of running HS4 Pi from an external SSD and because I had some spare hardware laying around, it wouldn't have been an extra expense. I picked up an old SSD and got to work.
Well long story short, I had some compatibility issues with the drive enclosure I had and the Raspberry Pi was failing to see it at boot. I didn't really want to go and purchase another enclosure and this brief moment gave me time to step back and actually think about what I'm doing. While using an SSD will be nice for performance, the actual load on the system that HS4 Pi is going to have while simply controlling a smart home is actually quite low. I was probably overthinking this one at first and the techie inside me just defaulted to wanting more. Realistically, the Micro SD will be more than enough for the job so I went out and picked up one instead. I actually had a few spare as I use them in my drone, but the new Samsung Evo Plus range that replaces the ones I have are Application Class 1 (A1) rated. While the 64GB card is only Class 10/U1 rated vs the U3 rating of the previous generation card, the Raspberry Pi won't benefit from the higher speeds rather it will benefit from the Application Class 1 instead. This would be my suggestion if you go down this route.
Enabling USB Boot on the Raspberry Pi 4 - Optional
So I have the anticipation that in future, I might utilise some handy plugins in HS4 such as the security camera plugin. These would involve heavier read/writes and may necessitate the use of USB booting. There were some valuable resources I found online that can assist with it and the most important one was this:
The following configuration is default and should remain default even if the boot order is not specified however if any problems are experienced, then the following can assist. View configuration with:
Edit configuration with:
sudo -E rpi-eeprom-config --edit
Ensure the folowing parameter is set:
Getting the Controller initially set up at this point is actually a pretty simple task. HomeSeer have simple instructions to get things up and running. All you need to do is download the HS4-Pi image, download balenaEtcher, insert your Micro SD into your computer, and flash it.
After this, you just need to insert your newly flashed Micro SD into your Raspberry Pi, connect your Raspberry Pi to your home network, plug in the power, and wait a couple of minutes. Then you just need to visit https://find.homeseer.com from a device on your network and the handy tool will help you discovery your HomeSeer device. Alternatively, if you are technically minded, your can check your router for what IP was assigned to your Raspberry Pi and navigate directly to this in your web browser.
From here, it is as simple as selecting your HomeSeer system and following the installation steps entering the product key you obtained when you purchased your license.
After this, you are redirected to a blank home page, a clean slate in which you can now start to build up your smart home. Since I'm sill waiting on the rest of my components to arrive from SmartHome Australia, this is where I will take a break until some key components arrive so I can do a test setup.
18 October 2021
My package has arrived so at this point, we are ready to start the base configuration. Before I go any further, one thing I must say is wow! These Nano Switches and Dimmers are really a lot smaller than I was expecting. They are very deserving of the Nano name. Have a look at the photos below for a size comparison with a 50c piece.
Initially there will be no plugins installed as this package is made to be customised. But before we go ahead and install those, let's think back a bit.
Remember earlier I had mentioned that buying a gateway/controller from overseas will mean "some additional hardware changes are required"? Well the primary hardware that needs to match the region is the Z-Wave radio. There are multiple options out there however to keep it consistent with the Aeotec hardware I will be using, I have chosen the Aeotec Z-Wave USB Z-Stick Plus. This product is both compatible with HomeSeer and the Raspberry Pi 4.
At this point in time, it's best to shut down the Raspberry Pi, connect the Z-Stick, and then boot it back up again.
With the Z-Stick connected up to the Raspberry Pi, it's time to enable those plugins. Head on over to "Plugins -> Add", and go ahead and install the "Z-Wave Core" and "Z-Wave UI". Both are free plugins available with HS4. Then head over to "Plugins -> Installed" if it didn't already direct you there and make sure they are both enabled.
15 December 2021
HomeSeer Z-Wave Plugin Configuration
So I will jump forward a bit where after a lot of initial troubleshooting and some forum research, I managed to find a couple of things that are pretty critical to the whole operation. Save yourself the hassle by applying a couple of changes now. While still in the installed plugins page, head on over to the Z-Wave Plugin, click on More, then click on Settings.
On the next page you will see two options. "Show Legacy Z-Wave Menu" and "Show Legacy Z-Wave Device Config Page". Enable both of these options then click Save. These will be very important for sending custom commands to the Z-Wave modules that can change the way they behave depending on your installation. The newer Z-Wave configuration pages with HomeSeer do not interact correctly when sending customised parameters to the modules so for now, it is best to use their legacy configuration pages.
Once again, please refer to my section at the start of this page with regards to electrical works. Information in this section is purely informational.
So with the plan to make of a seemless installation to involve less time with an electrician while I troubleshoot the devices when adding them to HomeSeer during the installation, I had preconfigured them and added them to HomeSeer before they were installed in our home. This is only recommended if you have the resources to do so. If not, proceed to the next section.
Installation of the Aeotec Nano Dimmers and Switches is a fairly straight-forward process for an electrician to perform. The terminal block of the Aeotec devices are clearly labelled and the provided instructions are clear enough to follow.
The following sequence of photos is purely for informational purposes only to show how a Nano Switch fits easily behind an existing switch plate.
Adding Devices to HomeSeer
Before securing your Nano Dimmers or Switches in the wall cavity, you will need to add them to HomeSeer. This is why pre-configuring the devices by adding them beforehand can be beneficial. This will save your electrician's time if you have trouble getting the devices to communicate with HomeSeer.
So first you have to power up the Nano Dimmer or Switch so it is waiting in standby. Then head over to HomeSeer. Go to the Devices page then select Add Device, then select Z-Wave:
From here you are presented with the Add Device process which steps you though the required procedure to add your Z-Wave devices.
At this point, you will need to press the small button on the rear of your Nano Dimmer or Switch and HomeSeer will detect the device and start the import process:
You then just follow the steps to name the device and assign them to a floor and room. Note that these zones can be modified later if you have a more ideal descriptor:
And just like that, you have a new device added and ready to go: