The ESP 32 was the most fun side project for me in 2022. For those who don’t know: the ESP32 is a small, cheap and wifi-enabled microchip. Many smart devices that you buy on Amazon have an ESP32 inside. It’s really amazing what you can do with a board that costs less than a good sandwich.
- You can build a small, low power WebCam for $7 (shipping from China included).
- You can build a wireless temperature and humidity sensor, that sends you your current room temperature for $10 (again shipping included).
- You can even run a small neural network on it to detect whether cat faces are running through your camera for $19.
Have I sparked your interest? Good. That’s why I’m excited about these chips.
What the heck is the difference between ESP8266, ESP32-C3, ESP32-S2, ESP32-S3,…?
If you go on AliExpress, you will find a variety of ESP32 microcontroller boards. Which one should you buy?
ESP8266 vs ESP32
If you go shopping, you will find boards with an ESP8266 and an ESP32-xx. They belong to different microprocessor families. Strictly speaking, the ESP8266 is not a family, but only a single processor.
Note: There are Boards with an ESPxx Module on them, but they have nothing to do with the ESP32. They are only a packaged version of an ESP8266.
The important differences are:
- ESP32 is the successor of the ESP8266.
- They are developed with different core platforms (ESP8266 Arduino Core and ESP32 Arduino Core).
Therefore, I would recommend buying a mikrocontroller based on the ESP32. It’s the successor of the ESP8266 and comes with some fascinating processor varieties.
The ESP32 also supports the ESP-IDF development framework, which could be interesting for more professional projects.
I wouldn’t recommend to mix between the ESP32 and the ESP8266 as these are not (fully) code compatible. It’s possible to develop code that works on the ESP32 and the ESP8266, but it’s tedious.
ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C6, …
These processors all belong to the ESP32 family. They differ in their features set and in their area of application.
- ESP32-S2 Old version of the ESP32-S3.
- ESP32-S3 Low power. Dual-core. Wi-Fi and Bluetooth LE. 45 GPIOs. Camera Support. AI Support. Native USB Support (This let’s you develop your own USB rubber ducky or USB keyboard with the ESP32).
- ESP32-C2 Old version of the ESP32-C3.
- ESP32-C3 Ultra Low Power. Single core. Wi-Fi and Bluetooth LE. 16 GPIOs. Not as powerful as the S-Variants (e.g. the ESP32-S3).
- ESP32-C6 If you need Wi-Fi 6 or ZigBee Support, this is the SoC you want to look for.
So basically:
- If you want a very tiny board that runs on battery and doesn’t need much IO, go for an ESP-C3.
- If you want to have
- AI support, or
- camera support, or
- a lot of IO (which communicates with different protocols), or
- you don’t know what you are going to do with this board, or
- you want to develop your own USB peripherals,
- go for an ESP-S3.
For a more detailed comparison, check out this comparison table.
Board recommendations
All selected boards come with a USB-C connector. I personally don’t buy things anymore that don’t have a USB-C Connector or AAA batteries in them.
This also means that they all have a Serial Adapter. You can plug them directly into your computer and flash them.
ESP32-C3
- Wemos Lolin C3 Pico. 25.4 x 25.4mm. 12 GPIO. 6 Analog Pins. Built-in Button. Built-in LED. Built-in battery s