Wi-Fi is an essential bit of kit for any Internet of Things (IoT) DIY projects, but our favorite Arduino doesn’t come with Wi-Fi, and adding in a Wi-Fi shield can bring the total cost to around $40. What if I told you a there’s an Arduino-compatible dev board with built-in Wi-Fi for less than $10? Well, there is.
Meet the Arduino Killer: ESP8266. It was only a matter of time before the crown was stolen from the shiny head of our dear Arduino development board. Is it possible to fall in love with a circuit board?
Catchy names aside, the ESP8266 (also known as NodeMCU) was originally marketed as a low cost Wi-Fi add-on for Arduino boards, until the hacker community realized you could cut the Arduino out of the equation entirely.
You’re not limited to using the Arduino IDE of course – they’re compatible with Lua too (which looks like a slimmed down Python to my novice eyes), but since we’re tackling this from the perspective of those us who have learnt on Arduino, that’s what’ll we cover exclusively today.
There’s quite a few models of ESP8266 around now, but I’m going to go ahead and recommend this one: ESP-12E (also known as NodeMCU 1.0, or it’s newest sibling NodeMCU 2.0).
It’s a little more expensive than the others ($6.50 compared to $4!), but includes the serial driver needed to program the chip, and has a built-in power regulator, as well as lots of IO pins. It’s widely supported and really doesn’t need anything apart from a USB connection for programming or power, so it’s the easiest to work with. If you buy any other kind of ESP8266 board, you may need a separate 3.3v power regulator, and a suitable FTDI connection for programming.