Arduino Home Automation Control Board v2.2


There are three user input interfaces that can be used. They are the mechanical buttons, web site, and Alexa command.

The Arduino Home Automation Control Board integrates an Arduino Mega and an Arduino Ethernet Shield (Rev. 3) with a Cat5e hardwired smart home network. Each board has the ability to connect to 14 lights, 3 temperature sensors, and 2 garage doors or automatic gates. The garage door inputs/outputs can also be used for lighting control if the user does not have the need for multiple garage door controls. The boards can be stacked up to 4 times in order to provide the user with a total of up to 64 lighting or garage door connections and 12 temperature sensor connections.

Each lighting and garage door connection provides Multi-Input Multi-Output (MIMO) Control for up to two relays. This can be utilized to monitor the garage door status (open or closed) or control two light relays through one network cable.

This system is intended to be permanently integrated into the home while maintaining the ability to upgrade and modify the control board interface. The ability to stack the boards is derived through multiple serial shift registers which allows the Arduino to control all 4 boards.

This system is controlled through the Ethernet shield which receives inputs from and sends outputs to the users account on The skill created for this project makes use of Alexa's voice control to interface with the users My Arduino Home account in order to manipulate all controls just as the user would through the website.

Once the system has been fully integrated with the user's home and Alexa, the user will be able to control all features through conventional methods, the website, and Alexa.

Add-On Products

This board is designed to work with the following products:
LSB v1.0
WDT - Watchdog Timer v1.0

Data Flow

The Arduino is programed to get data from web server and put data in web server. The Arduino checks the website to see if lights should be on or off. When the user pushes a button the Arduino updates the server to change the status of that light. Then the Arduino will detect the change and turn the light on or off accordingly based on the web server data.
MAH Data Flow Chart


Since the Arduino reads and sends data to a web server it has a slight delay. The amount of delay is dependent on how fast the connection with the web server is. The slower the connection, the greater the delay.
ID Part Qty.
1 74HC595N 4
2 CD4021 4
3 Arduino UNO v3 1
4 RJ45 Jacks 19
5 104u Capacitor 4
6 Piezo Element 1
7 2-Pin Jumpers 18
8 10k Resistors 32
9 2x3-Pin Header 1
10 4-Pin Header 2
11 6-Pin Header 3
12 8-Pin Header 2
13 4-Pin Right Angle Header 1