A simple WiFI remote controller using the ESP8266 SoC.
The goal of this project is the creation of a simple to use WiFi remote controller aimed at usage with the numerous home automation suites available, such as HomeAssistant and OpenHab.
The system utilizes an Espressif ESP-12 module coupled with an MCP73831T chip for battery management and an AP2112K LDO voltage regulator.
The board can be configured as a battery powered remote control, or as a DC powered button panel. To achieve this a jumper was added (SJ2) to select between battery and direct USB power. A second jumper was also added (JP2) to bypass the power switch. Using the above jumpers, the BMS circuit can be completely ignored and left unpopulated in case the device is inteded for always pluged-in use from a 5V DC power supply.
Using the Espressif ESP-12 module offers great flexibility in existing firmware options. Currently the ESPHome firmware is used, designed for seemless intergation with the HomeAssistant platform.
Due to the device not beign intended as a development board, an FTDI chip was excluded from the design, leaving the need for a small 6-pin SH 1.0mm micro jst connector as a UART interface.
Uploading new firmware requires the pin D0 and GND of the UART connector to be tied together. After doing so the device must be reset, setting it in download mode and enabling new firmware to be uploaded. This can also be achieved holding down the 4th button before powering on the device.
Pin | |
---|---|
Button 1 | GPIO5 |
Button 2 | GPIO4 |
Button 3 | GPIO12 |
Button 4 | GPIO0 |
Button 5 | GPIO13 |
Battery Voltage | ADC |
Status Led | GPIO16 |
The enclosure is designed to incorporate a single 400mAh li-po cell and be 3D printed in two parts.
- Incorporate a small 128x64 OLED screen.
- Add an IR transmitter to the design, so that the controller can be used with existing household devices.
- Add an accelerometer for gesture control.
- Design a better, prettier and easier to hold enclosure.