Smart power plugs are probably the first home automation devices people buy when they get started with IoT. It’s convenient to just ask your home voice assistant to turn off a light instead of having to walk all the way over to the switch on the wall. But, virtually all of the smart plugs on the market use proprietary communication protocols. If that doesn’t appeal to you, there is an alternative: this RESTful DIY smart plug.
Ricky Zhang designed the open communication smart plug after becoming frustrated by the consumer options that are currently available. He wanted a smart plug for his 3D printer that would automatically switch off if his smoke detector is triggered, which is a smart safety feature. But, all of the consumer smart plug models he could find used proprietary communication protocols that pass through the internet-based IoT systems. Going through the internet opens the system up to hacking, and at the very least could fail if the internet connection is lost.
Zhang’s solution was to create an ESP8266-based smart plug that uses a REST (representational state transfer) API framework called bREST that he wrote himself. The protocol is open, and works over a local network without going out to the internet at all. And, because the RESTful communication is system agnostic, it can work with whatever you want to use for control. Other than the ESP8266, you just need an AC-to-DC transformer, an AC outlet and enclosure, and a mechanical relay. If you shop around and order enough parts to build a few smart plugs, each one should cost you less than $15.