Phase 1 of the attempt to build a home automation system using Arduino boards and Raspberry Pis. This is the security panel of the system. It has a 3.2” TFT touch screen, fingerprint scanner for biometric authentication, PIR motion sensor to automatically turn on/ off the display, DHT22 temperature-humidity sensor, and an ESP8266 WiFi module to communicate with the server.
Below is a screenshot of the front end of the system (Home Assistant).
Below are few images of the actual panel. When the work is complete a new custom PCB will be designed and everything will be housed in a 3D printed case.
Below is the main code running on the Arduino mega board.
Here are the functions created for reading the touchscreen information.
Below are the functions to display the UI on the LCD.
These are the functions created to communicate with the ESP8266 module using the Serial port.
Below is the custom firmware running on the ESP8266 that enables the communication between the Arduino and the WiFi module.
The server is a Raspberry Pi which runs MQTT and Home Assistant. Pi runs its own AP and DHCP server for the nodes to connect to. There are two more sensors connected to the Raspberry Pi using an ADC (mcp3008) to monitor light level and air quality.