The ESP8266 WiFi module has swept through the maker community in recent years, giving you the ability to add WiFi and a processor running at 80 or 160MHz to your project for just a few dollars. There are a variety of dev boards that use this module at their heart, and I’ve even written about how to get started with my personal favorite, the Wemos D1 Mini, in this post.
Beyond blinking an LED in a set sequence, or even over local WiFi control, there is much more that these boards are capable of. In fact, using If This Then That (IFTTT), along with the Adafruit IO IoT platform, you can make your board respond to a variety of Internet actions. A good explanation of how to do this is found in Becky Stern’s Internet of Things class, where she uses Adafruit’s Huzzah series of ESP8266 dev boards.
While there are other IoT platforms, Stern’s tutorial takes you through setting up an account on Adafruit IO, and integrating it with IFTTT. IFTTT is a fabulous service with takes something that happens (If This), perhaps a tweet mention, stock market status, or weather report. It then does something else in response (Then That). In this case, it can push numerical data to an Adafruit.io feed, which can then send it to your properly-programmed ESP8266 board to respond in kind—with a light, activating fan, or whatever else suits your situation.
As a demonstration, I decided to make an 8-bit themed heart container from Zelda that people can switch on or off via Twitter. The idea is that if a certain phrase is tweeted out, it can either light up the whole heart, half of it, or turn it off entirely. In testing, I used “love zelda” for both sides on, “like zelda” for one, and “no zelda” for both lights off. This turned out to work quite well, as a phrase such as, “I like Zelda 2, but Wind Walker was better,” would activate one light, other tweets containing the trigger phrases would change things in a similar manner.
Electronics for the build were fairly simple, consisting of a pair of transistors to switch the 12V LED strips, along with a buck converter that allowed me to power both the Wemos and the LEDs properly. The program was adapted from code found on Stern’s tutorial, and can be found in this GitHub repository.
As with any engineering problem, there is a wide variety of ways to accomplish this goal. Adafruit IO is by no means the only IoT platform out there, and depending on the situation, there are other ways to respond to an Internet action that may suit your needs better than IFTTT. Even so, these two services make a versatile combination, and IFTTT is especially interesting in that you can change what triggers it (stock market, weather, etc.) with a very simple interface.
You can see more about how I made this device in the video below, or via instructions found here. As for why I’m wearing a stained shirt, that’s explained the video as well: