In this post we’re going to compare several ESP32 development boards. The aim of this article is to help you chose the best ESP32 development board for your project requirements.
You can find the ESP32 as a standalone module or as a full-feature development board. There are lots of ESP32 development boards available. In this review, we’ll just take a look at the most popular ESP32 development boards. To learn more about the ESP32, we recommend enrolling in our course: Learn ESP32 with Arduino IDE.
Recommended reading: Getting Started with ESP32 Development Board
ESP32 Development Boards Comparison
ESP32 DEV KIT DOIT
EN and BOOT
EN and BOOT
LOLIN32 w/ battery holder
EN and BOOT
18650 battery with charging system
ESP32 LOLIN OLED
EN and BOOT
0.96'' OLED display
SX1278 ESP32 (LoRa)
EN and BOOT
SX1278 LoRa transceiver chip + OLED
ESP32 Features and Specifications
Here’s a quick run down of some features and specifications of the ESP32 chip:
- Wireless connectivity WiFi: 150.0 Mbps data rate with HT40
- ROM: 448 KB
- SRAM: 520 KB
- Low Power: ensures that you can still use ADC conversions, for example, during deep sleep.
- Peripheral Input/Output:
- peripheral interface with DMA that includes capacitive touch
- ADCs (Analog-to-Digital Converter)
- DACs (Digital-to-Analog Converter)
- I²C (Inter-Integrated Circuit)
- UART (Universal Asynchronous Receiver/Transmitter)
- SPI (Serial Peripheral Interface)
- I²S (Integrated Interchip Sound)
- RMII (Reduced Media-Independent Interface)
- PWM (Pulse-Width Modulation).
- Security: hardware accelerators for AES and SSL/TLS
- Arduino IDE compatible: you can program the ESP32 with the Arduino IDE (Windows, Mac OS X and Linux installation instructions)
- Compatible with MicroPython: you can program the ESP32 with MicroPython firmware (Get started with MicroPython on ESP32)
How to Select an ESP32 Development Board
When looking for an ESP32 development board there are several aspects you need to take into account:
- Pin configuration and number of pins. To properly use the ESP32 in your projects you need to have access to the board pinout. Make sure you have access to the board pinout you’re getting. Otherwise, you may end up using the ESP32 incorrectly. We recommend taking a look at our ESP32 GPIO Reference Guide that shows how to properly use the ESP32 GPIOs.
- USB-to-UART interface and voltage regulator circuit. Most full-feature development boards have these two features.
- BOOT and RESET buttons.
- Battery connector. If you want to power your ESP32 using batteries, there are development boards that come with connectors for liPo batteries.
- Extra features. There are ESP32 development boards with extra features like an OLED display, a LoRa module or a camera.
Related content: ESP32 vs ESP8266 – Pros and Cons
1. ESP32 DEVKIT DOIT
This is the ESP32 DEVKIT DOIT board. There are two versions of this board, with 30 and with 36 GPIOs. Both work in a similar way, but I prefer the version with 30 GPIOs because it comes with two GND pins. Also, even though the other model comes with more GPIOs, the extra ones are not recommended to use (they are connected to the ESP32 integrated flash memory).
The pins are labeled at the top of the board, so it is easy to identify the pins. It comes with on-board RESET (EN) and BOOT buttons. Additionally, it comes with USB-to-UART interface, so that you can easily program it using Arduino IDE or other development environments, and comes with voltage regulator circuit. The board can be powered using the micro-USB connector, and it doesn’t come with battery connector.
2. Adafruit ESP32 Feather
This is the ESP32-based board from Adafruit. As the previous one, it comes with USB-to-UART interface and voltage regulator circuit. The pins are labeled at the top and at the bottom of the board. A great addition to this board is the Lipoly battery connector. This is perfect for portable battery powered projects.
When you get something from Adafruit, you know it is always high-quality. So, if you are willing to spend a bit more for a great quality product, this is the perfect option. Additionally, Adafruit has a lot of documentation about its boards, which is great to quickly get started.
3. Sparkfun ESP32 Thing
The ESP32 Thing is the ESP32-based board from Sparkfun. It comes with all the functionalities to easily communicate and program the ESP32 with your computer. It comes with a connector for LiPo batteries, and a LiPo charger. This means rechargeable batteries can be easily charged by plugging 5V to the board through the USB connector. Sparkfun also has a lot of good documentation about this board.
4. ESP32 with Battery Holder
This ESP32 development board comes with a battery holder at the back to provide power through a 18650 battery. This board also includes 18650 battery charging system and two LEDs to indicate the battery state. This is a great choice if you want something compact running on batteries. Additionally, this board is able to charge and work at the same time.
5. ESP32 with OLED
This ESP32 board is very similar with the previous one, but instead of a battery holder, it comes with a 0.96” OLED display. This is perfect to add some sort of feedback to your projects without worrying about the circuitry. You can read our getting started guide and learn how to control the OLED display:
6. ESP32 SX1278 (LoRa)
This ESP32 board comes with the SX1278 chip, which is a LoRa transceiver chip. LoRa is a wireless data communication technology that allows long range communication of small amounts of data, while minimizing power consumption. It comes with an OLED display, which is really handy to display LoRa messages. If you intend to do a project with LoRa using the ESP32, this can be a great option, since it already comes with the LoRa transceiver chip. Learn how to use LoRa with the ESP32:
If you don’t plan to use LoRa in your projects, there are better ESP32 options.
Get Started with the ESP32 Development Board
You can easily get started with the ESP32 using our resources:
- [Course] Learn ESP32 with Arduino IDE
- [eBook] MicroPython Programming with ESP32 and ESP8266
- Getting Started with ESP32 Dev Module
- Installing the ESP32 Board in Arduino IDE
- ESP32 Web Server – Arduino IDE
- ESP32 Pinout Reference and GPIOs Guide
- ESP32 Hall Effect Sensor
Here’s a list of free ESP32 projects with Arduino IDE you may like:
- Getting Started with ESP32 Bluetooth Low Energy (BLE)
- ESP32 Data Logging Temperature to MicroSD Card
- ESP32 with DC Motor and L298N Motor Driver – Control Speed and Direction
- Build an All-in-One ESP32 Weather Station Shield
- ESP32 Publish Sensor Readings to Google Sheets
- Alexa (Echo) with ESP32 – Voice Controlled Relay
Here’s a list of free ESP32 projects with MicroPython firmware you may like:
- Getting Started with uPyCraft IDE MicroPython for ESP32/ESP8266
- Getting Started with Thonny MicroPython (Python) IDE for ESP32/ESP8266
- MicroPython with ESP32/ESP8266 GPIOs
In this article we’ve compared a selection of ESP32 development boards. The ESP32 DEVKIT DOIT, the Adafruit ESP32 Feather, and the ESP32 thing are all very similar. These don’t come with extra hardware, so they are easier to use and those are the ones we recommend for beginners. We’ve been using the ESP32 DEVKIT DOIT boards and they work perfectly. However, if you want something really high-quality, the ESP32 feather and the ESP32 Thing are just great.
If you have a really specific project in mind, then maybe one of the other models is more suitable for you. For example, if you intend to add an OLED display to your project, the ESP32 with built-in OLED will provide all you need in a small footprint.
We hope you’ve found these selection and comparison of ESP32 development boards useful. We also have a blog post about the best ESP8266 development boards.
Thanks for reading.
[Recommended Course] Learn ESP32 with Arduino IDE
Register in our brand new ESP32 course with Arduino IDE. This is our complete guide to program the ESP32 with Arduino IDE, including projects, tips, and tricks! The registrations are open, so sign up now.