Because nobody had translated the documentation from Chinese to English, at first, the ESP8266 didn’t catch on immediately. Eventually, hackers caught on and started to explore the module, the chip, and the software on it. And with its growing popularity, the documentation was slowly but surely translated into the English language and made accessible to a much larger user base.
The ESP8266 has a CPU clocked at 80 MHz (default) or 160 MHz and has 32 KiB instruction of instruction memory and 80 KiB user-data memory at its disposal. For interactions with other devices, there are 16 available GPIO pins.
Nowadays, there are many boards from all sorts of manufacturers to choose from. Many of these boards include a so-called USB-to-UART bridge on-board and a Micro-USB connector. That Micro-USB port can be used to not only power an ESP8266 board, but also to connect to it. These ESP8266 boards make for a straightforward development platform, even for beginners.
With ESPHome recently opening up the possibility to flash such an ESP8266 board with nothing more than a browser, the ESP8266 is in a league of its own when it comes to ease-of-use. From the available boards, there are two fan favourites: the LOLIN D1 mini and the NodeMCU development kit.
The LOLIN (WEMOS) D1 mini ESP8266 board (and its clones)
Undoubtedly, one of the most popular ESP8266 boards is the LOLIN D1 mini, also found under its old name, WEMOS D1 mini. Henceforth, I shall simply be calling it the D1 mini. I have personally used this board for several personal projects, and it’s perfect for absolute beginners, as well as experienced makers.
It features the above-mentioned Micro-USB port, which makes flashing it as easy as plugging it into to your PC and opening the ESPHome Web Tools. It features 11 digital input/output pins yet is very compact (25.6 mm × 34.2 mm). If you are willing to wait for shipping, these can be found on AliExpress and other Chinese online marketplaces for very little money.
It might sound like I'm just trying to get you to use my affiliate for a larger purchase, but I do recommend ordering more than just a single board. I can almost guarantee that at some point you will somehow destroy an ESP8266 board, such as I did when I mixed up 3.3V and 5V. And I can confirm that once you have finished an ESPHome project, you will be itching to start the next one.
While browsing the official LOLIN store, you might have come across many so-called shields. LOLIN offers display shields, LED shields, display shields, battery shields and much more. These shields are a perfect way of starting off your ESP8266 and ESPHome adventure, as they don't require you to solder anything to a perfboard and making connections of your own.
Using a shield, you can simply solder some legs on to the LOLIN (WEMOS) D1 mini board, and then solder the shield to those. The drawback is that in most cases you will only be able to connect a single shield.
There are a few shields you will be able to stack, for example the power shield can be used with just about every sensor, as it only connects to the 5V and GND pin. Make sure to carefully read the documentation when stacking multiple shields, as they might require the same GPIO pin.
NodeMCU is technically not a board
Another name you will frequently hear in the ESPHome and other maker communities, is NodeMCU. Technically, NodeMCU is not an ESP8266 board, but an open-source firmware. To help makers get started, there are several development kits, using the ESP8266 microchip, which have become synonymous with the name.
The NodeMCU development kit is significantly larger than the D1 mini. But they do have similarities: A Micro-USB port for easy flashing is found on both and, just like the D1 mini, the NodeMCU development has been cloned countless times. For most ESPHome projects, there is no need to go with the larger NodeMCU development kit or one of its clones.
There are of course many other boards for you to choose from. Some of these have more memory, can be hooked up to an external antenna, or include a Li-ion battery charger. LOLIN itself produces the D1 mini Pro, which has the possibility of attaching an external antenna and a larger flash. These come in useful for more specialized projects. For the majority, however, a D1 mini will do.
Because the ESP8266 is so readily available at a low cost, it is being used in a number of prebuilt products, such as the popular Sonoff Wi-Fi switches from iTead and the H801 RGBW LED controller. If there is a device containing an ESP8266 or ESP32 microchip, and it can be flashed, you will be able to run ESPHome on it.
Liam Alexander Colmanis an experienced Home Assistant user who has been utilizing the platform for a variety of projects over an extended period. His journey began with a Raspberry Pi, which quickly grew to three Raspberry Pis and eventually a full-fledged server. Liam's current operating system of choice is Unraid, with Home Assistant comfortably running in a Docker container. With a deep understanding of the intricacies of Home Assistant, Liam has an impressive setup, consisting of various Zigbee devices, and seamless integrations with existing products such as his Android TV box. For those interested in learning more about Liam's experience with Home Assistant, he shares his insights on how he first started using the platform and his subsequent journey.