
Objective
Curious of all the new smart home tech, I started my journey of making smart home devices by creating an array of smart outlets.
The idea was feasible due to the Particle Photon, a WiFi-enabled STM32-based microcontroller with a cloud-enabled backend. This microcontroller was perfect for the job because it allowed me to connect to the smart outlets from any location with internet access using the Particle mobile application.
In addition to being able to control and view the state of the outlets from the Particle app, I implemented Google Home, Alexa, IFTTT, MQTT, and Node-RED support.
The Particle Cloud that comes with every Particle device and the ability to use existing Arduino libraries makes this project scalable.
Looking forward
In the future, I would like to redesign this to use a custom PCB to control clutter.
Looking back in 2023
When I look back at this project, I remember the time when people were embracing the ESP8266 and the ESP32 for custom electronics smart home homemade projects. I chose to use the Particle Photon due to its ecosystem – it was an easy way to quickly get up and running. In 2019, Home Assistant was gaining traction, but was not user friendly. I had my Home Assistant instance break and I have given up on Home Assistant for months on two occasions! It was not until much later that I decided to give Home Assistant another try, and since then I have enjoyed it.
Up until now, I have gained lots of experience in professional settings designing enclosures, printed circuit boards, electrical systems and writing code. If I was to redo this project, I would make the following changes:
- Design the enclosure similar to a power strip
- One (maybe two if was to separate AC power and DC signals) printed circuit board(s) to reduce the number of wires
- Instead of quick-disconnect, use PCB through-hole versions of the NEMA 5-15 receptacles
- Replace the AC to 5VDC converter with one from MeanWell
- Replace the generic relays with ones from Omron
- Replace the Particle Photon with an ESP8266 running ESPHome
- Add Home Assistant functionality
- Make the files open source so others can build their own as well