A Control Panel for IoT-Based Smart Home Automation System
A home automation system is a complex network of items that typically involve lights, appliances, electrical outlets, and heating and cooling systems. To control various home automation systems, manufacturers provide a control panel which is operated intuitively by means of a touchscreen display.
A provider of a smart home system based in France was looking for a reliable supplier experienced in electronics engineering. They needed to build a custom control panel for their IoT-based home automation system.
Integra Sources developed a tablet-style smart home head unit based on the Allwinner A20 microprocessor. We made the schematics, designed the layout and provided prototype testing. The device has a 7-inch touchscreen, NFC module to control access to the system, and a radio frequency (RF) module for integrating the tablet into the IoT ecosystem. We also provided software development for a custom Linux build and driver development for different modules of the system.
- We used Allwinner A20 SoC with 2 ARM cores as CPU in this project.
- We built a custom Linux image for the device.
- The device firmware was stored on SD Card flash.
- CMOS sensor (camera) with CSI bus was used.
- The device has an onboard WiFi module for networking and Ethernet connector.
- All software was implemented in C/C++ language.
- The device has several buttons, switches, LEDs, light sensor, microphone, and speaker.
- For the GUI, the device has an LCD with a touchscreen.
- We ported Linux kernel driver from a different kernel version for NFC reader.
- For LED-stripe backlight we implemented a special Linux kernel driver using an existing SPI driver.
- The device has a special RF-module for custom communication protocol.
- UI interface was implemented using the QT framework and compiled to support EGLFS.
- The device has 2 power sources: internal LiPO battery and 5V wall adapter.
- EAGLE CAD IDE was used for Schematics and PCB design.
- Flexible PCB technology was used for LED-Stripe, NFC antenna and special LCD adapter PCBs.
Scope of work
Embedded hardware development
We provided hardware development for three printed circuit boards: the main board, the LCD adapter board, and the LED backlight board.
- Schematics design
- PCB design
- Generation files for the manufacturer
- Hardware testing
Kernel and driver development
- Customizing Linux image
- Driver development
We created a console application that tested the performance of the embedded system. This application allowed us to test each component of the tablet: the display, the touchscreen, the speaker, the microphone, the battery, and so on.
IoT circuit board
The main circuit board for the home automation system provides broad wireless network connectivity: via Ethernet, Wi-Fi, Bluetooth, NFC, and radio frequency.
LCD adapter PCB
This board enables the changing of LCD displays connected to the main circuit board without having to change the main board.
LED backlight PCB
The control panel supports multiple backlight colors with the help of the LED printed circuit board. To enable backlight control on the tablet we wrote a custom LED stripe driver.
The existing driver for the NFC module didn't work with the Linux-Sunxi kernel. We adapted the driver to run on the legacy system.
Qt app with EGLFS
For performance optimization, we used the eglfs plugin to run the Qt application on the embedded board with accelerated graphics without using X11.
The smart home control panel is a custom tablet placed on the wall. It integrates all smart home devices in an all-in-one app. With this device, users have the flexibility to monitor and control their home’s temperature, locks, lights, and other items.
Broad network connectivity
You might also like...
Custom IP Camera for Monitoring Pets Remotely
The Wi-Fi camera allows people to see what their pets are doing at any moment. We provided PCB design and developed a custom embedded Linux distro.
AWS Cloud for Monitoring Solar Energy Consumption in Households
Solar Manager is a cloud solution for homes with a photovoltaic (PV) production system. The goal of this software is to optimize power consumption.