Monday, February 01, 2021

My new favorite microcontroller

I've been using various microcontrollers and single-board computers since 2013. I started with an Arduino Uno, and I fell in love with how simple it was to write real-time code that runs on bare metal on a tiny chip. Despite the limited RAM and storage space, it didn't seem restrictive at all! I've used a couple of Uno boards for various projects: a remote thermostat for my room A/C (at my dad's house), a "universal" TV remote, a modem rebooter, a furnace / AC control unit (at my current house), and... a clock. That I can update and set the time over bluetooth.

Of course, other manufacturers saw the success of the Arduino, and started making their own boards, either directly compatible with existing Arduino boards, or programmable through the Arduino IDE. In 2017, I got my Macchina M2, and started working on what would become my Volt mod project.

The problem

Last week, I was talking to my boyfriend about the Wifi-controlled outlets I had purchased years ago and reverse-engineered, and I lamented the fact that I could no longer get the exact same model and would have to do all that hacking all over again with a new model. Of course, if I could just build my own, it would be a lot easier. The problem is, Arduino boards with Wifi are expensive, right?

The solution

Let me introduce you to my new favorite microcontroller: The ESP8266. Built-in Wifi support, decently fast, plenty of RAM, a good amount of I/O pins, and dirt cheap. I got a pack of 3 for about $15. Wifi is super easy to use, especially if you're just doing UDP.

For this Wifi-controlled outlet project, I would also need some relays. I bought a pack of 4 dual-relay boards which are 3.3v I/O compatible. I already had an outlet box with a couple of outlets and a bunch of wire. Hooking it all up was very straightforward. The code for the ESP8266 is very simple and fits on a single page.

This is definitely going to be my go-to microcontroller for projects going forward. If you're interested, just search for "ESP8266" or "NodeMCU" on your favorite online retailer.

No comments: