Hacklet 55 – Home Automation Projects

Home automation – the idea of a smart home that monitors and controls the inside environment, takes commands from occupants, and generally makes living easier. Hackers, makers, and engineers have been building their own vision of the smart home for decades. Thanks to cell phones and the revolution of the “internet of things”, home automation is now in the public eye. The hackers haven’t stopped though. They’re still building dreams, one circuit and one line of code at a time. This week’s Hacklet is dedicated to some of the best home automation projects on Hackaday.io!

jarvisWe start at the top – [IamTeknik’s] Project Jarvis has been in the top five skulled and viewed projects on Hackaday.io for as long as we’ve been keeping records. Just like the fictional Tony Stark design which inspired its name, Jarvis is based on artificial intelligence. [IamTeknik] has created a system using the BeagleBone Black running his own custom software. He’s also creating Jarvis from the ground up – even the relay modules have been designed and built by [IamTeknik]. So far Jarvis has a great 3D printed door lock unit, and a really nice wall mounted tablet. We’re watching to see what modules [IamTeknik] adds next!


hcs[Morrisonpiano] is no home automation noob. He’s been running his own system for two decades. HCS_IV Home Automation System is a project to update his HCS_C home automation system. For the uninitiated, the original HCS was created by [Steve Ciarcia] of Byte and Circuit Cellar fame. There have been several generations of the hardware and software since then, with plenty hackers adding their own custom features. [Morrisonpiano] is updating his system with an NXP Arm Cortex M4 CPU, three big Altera Cyclone FPGAs, and plenty of flash storage. Why use a FPGA on a home automation system? I/O of course! HCS uses a ton of I/O. There are 16 RS485 ports and 10 RS232 serial ports. Going with an FPGA makes things flexible as well. Want to add CAN bus? Just drop in some CAN HDL code and you’re golden!


[Sswitchteven] is giving the smart home more senses with Squirco Smart Home System – Sensor Network. Rather than just have a temperature sensor at the thermostat, or a motion detector in the front foyer, [Steven] wants a network of unobtrusive sensors to blanket the home. He’s doing this by replacing the common light switch with a smart module that has sensors for temperature, humidity, and human presence. [Steven] has spent quite a bit of time researching and experimenting microwave tomography as a means to detect humans. Going with microwaves means no obvious PIR windows.


bbb-haFinally, we have [Ansaf Ahmad] with BeagleBone Black Home Automation. The idea for this project came from a calculus class on optimization. [Ansaf] is putting mathematical theorems to use in the real world by monitoring usage patterns and current demands of a device. With that data, he can optimize the usage to make things greener. So far, [Ansaf] has been experimenting with a lamp. The system has a web front end which uses PHP. The GPIO pins on the board are controlled using Python and Flask. As an early project, BeagleBone Home Automation is doing great – it’s already earned [Ansaf] high grades in his computer engineering class!

If you want more smart home goodness, check out our updated home automation projects list! Did I miss your project? Don’t be shy, just drop me a message on Hackaday.io. That’s it for this week’s Hacklet, As always, see you next week. Same hack time, same hack channel, bringing you the best of Hackaday.io!

Arduino Controlled Air Conditioner

Now that summer is coming, it’s time to break out the Air Conditioners! There are some old AC units out there that still work just fine, but nowadays we are used to everything being remotely controlled and automatic. [Phil] had an old window-mounted AC unit that still worked but was installed in a not-so-convenient place. To access the AC’s controls, one would have to climb over a large desk. This is a perfect opportunity to use the plethora of widely available hobby electronics to make an automatic AC controller retrofit.

First things first, there needs to be a way to turn the current control knob on the AC. [Phil] modeled up a 3D bracket to hold an RC car servo to the AC control panel. Attached to the servo horn is a slotted cylinder sized appropriately to fit the shape of the control knob. An Arduino measures the temperature of the room via a DS18B20 temperature sensor which then has the servo turn the control knob to the appropriate position, on or off. The Arduino sends temperature data back to a PC via MegunoLink Pro which graphs past data and also displays current temperature data. Using MegunoLink Pro, the min/max temperature points can also be set without uploading a new sketch to the Arduino.

Arduino Controlled AC

From the temp vs time graph, it looks like the room temperature stays a consistent 23 +/- 1 °C. [Phil] did us summer-swelterers a favor and made all his design files available. This is a great idea but wonder if leaving the air conditioner unit switch in the ‘on’ position and turning the unit on/off via a relay connected to the 120vac line would work just as well.

Monitoring Power With A 555

[Diederich] is running a Raspberry Pi loaded up with Pimatic, a great home automation server that does just about anything you can throw at it. One thing it doesn’t do is monitor electricity and gas directly from the meter – you’re going to need hardware for that. [Diederich] stepped up to the plate and built that hardware using just a 555 timer. The total cost of adding this to his Pimatic setup was less than a dollar.

The 555 can be used as a timer, a trigger, and a bunch of them can be cobbled together into a CPU. [Diederich] isn’t using some fancy logic here; he’s just using the 555 as a Schmitt trigger with a phototransistor and his electricity meter. The output of the 555 is connected to the GPIO of the Raspberry Pi, and a Python script ties into Pimatic.

It’s a neat solution that only costs a dollar, and using the 555 has a few advantages: the 555 makes it possible to use long and thin wires back to the Pi, which means [Diederich]’s Pi doesn’t have to be located right next to his meter.

Model House Models House, Vice-Versa

[Eric Tsai] is on a home-automation rampage. Not content with the usual smartphone-based GUIs, [Eric] built a cardboard model house that models his house. Open the garage door, and the model house’s garage door opens. Open the real front door, and a tiny servo motor opens the cardboard front door.

The model house also comes with a power meter that represents his current power usage, which is certainly useful for figuring out if something electronic has gone grossly wrong. You should watch the video (found after the break) all the way through, here’s the spot where he turns on an electric leaf blower. Despite a little big of lag that’s pretty cool!

But the system doesn’t stop there. Since he can control the garage door and some lights remotely via WiFi, the next logical step is to add a couple of buttons so that the model house can control the real house.

We’ve covered [Eric]’s home before. He set up simple, Arduino-based sensor packages all around his house, connected them together through the pub/sub framework MQTT and added in the open-source OpenHAB software interface. The door sensors connect to a hacked Wink hub. From whether or not his dog is barking to whether his laundry is done, [Eric]’s system knows it all.

Continue reading “Model House Models House, Vice-Versa”

RoomMote, a DIY Remote for Your Room Project

[Rohit] wrote in to tell us about a project he has created. Like most projects, his solves a problem. Sometimes while sleeping, a mosquito will infiltrate his room. He has a mosquito repellent machine but there are 2 problems, he has to get up to turn it on/off and it smells bad when in use. [Rohit] only needed a remote-controlled mosquito repelling machine but decided to make a 6 channel system he calls the RoomMote.

From the beginning, the plan was to use an old Sony TV remote to do the transmitting. The receiver unit was completely made from scratch. [Rohit] designed his own circuit around a surface mount MSP430 chip and made a really nice looking PCB to fit inside a project box he had kicking around. The MSP430 chip was programmed to turn relays on and off based on the signals received from the Sony remote.  These relays are inside an electrical box and control AC outlets. Just plug in your light, radio or mosquito repellent into the appropriate outlet for wireless control. Code for the MSP430 is made available on [Rohit’s] project page for anyone wanting to make something similar.

In addition to the relays, there is an RGB LED strip attached to the custom circuit board. By using more of the Sony remote’s buttons, the LED strip can output 6 pre-programmed colors, some mood lighting for the mosquitoes!

Continue reading “RoomMote, a DIY Remote for Your Room Project”

Ultimate Remote is Ultimate

[Joedefa] had a Griffin Beacon Universal Remote that was collecting dust, and decided that it needed to stop collecting dust. He had a growing number of wireless devices in his house and found himself in need of a remote to control them all. The Griffin Beacon fit the bill, but most of his lights and outlets were RF controlled. So he did what hackers do best… broke out the screw driver and soldering iron and rewired it!

[Joedefa] is using an Attiny85 as the brains between an infrared LED and a RF transmit module (if anyone can identify the source of this module, please let everyone know in the comments).  A pair of red and green LEDs lets him know if the remote has received commands successfully.

It’s always nice to see a discontinued product made useful once more with a little ingenuity and an Arduino some hacking skill. Hat’s off to [Joedefa] for a righteous hack!

Ridiculously Complicated Home Automation Made Simple

[Eric T] wrote up his insanely-comprehensive home automation setup. What started out as a method to notify him when his dog barked grew into a whole-house, Arduino-powered sensor extravaganza. We’ve previously looked at two different steps from this mammoth article. One automated his dog, the other focused on the Wink hub to bridge with commercial hardware like smart lightbulbs. Now let’s look at the project as a whole.

The basic backbone of the project is actually quite straightforward. He made a radio gateway base station out of an Arduino, a RFM69 radio unit, and an Ethernet shield that connects to a Raspberry Pi to serve up a GUI interface. The open-source home automation project OpenHAB makes it all available through browser or smartphone.

Next, he made additional sensor nodes from Arduino and RMF69 radios. These sensor nodes can all be separate from each other, which has enabled [Eric] to expand his system incrementally over time.

Modules of particular interest are the Uber Sensor and the Washer-Dryer module. For the Uber Sensor, [Eric] basically threw every sensor he could at an Arduino; it sends noise levels, light levels, motion, temperature, humidity, and presence of smoke, flame, or flammable gas. Some of these conditions trigger e-mail alerts, while others are simply stored for future perusal.

On the simpler end of the spectrum, he uses a noise-level detector to detect the end of a laundry cycle and then trigger a notification. The clever bit is that the message is automatically cleared when an attached motion detector triggers, presumably because someone’s gone to the basement to empty the dryer. Very neat.

16All of this is basically made practical and affordable by the presence of simple Arduino libraries and cheap hardware modules purchasable over Ebay. If you’re at all interested in a DIY home automation project, this offering is worth a look for inspiration and a great overview.