Main Content

So I wanted to create a device that I could use to control all of my Home Automated devices through MQTT. This is what I came up with. It has 6 buttons: 5 usable buttons and 1 button tied to reset (to act as an on button). The 5 buttons can be pressed and held to trigger a new state, totaling 25+ functions from 5 buttons.

A few years ago I had a similar motivation and worked on my first ever designed/printed circuit board.

Being a ridiculous (but fun) project, It turned out pretty well, but certainly was not “smart”. I hadn’t yet gotten into the (then) new esp8266 wifi stuff. Since moving on to wifi connected projects, I had a strong urge to begin the esp8266 version to control anything & everything controllable through my wifi network. That lead me to this project: the 5 button Wi-Fi remote.

In the following post, I will retrace my steps as I:

Pieced together the 6 button top panel using simple components.
Hooked up the button panel to an esp8266 (d1 mini or NodeMCU, etc.).
Wrote an Arduino sketch to (among other functions), interpret button presses as “short presses” or “long presses” to help get the most out of the 5 usable buttons (1 button reserved to wake it up from deep sleep) .”

Link to article