Difference between revisions of "ESP32"
Blwikiadmin (talk | contribs) (→ESP32) |
Blwikiadmin (talk | contribs) (→Web) |
||
(39 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== ESP32 == | == ESP32 == | ||
+ | |||
+ | Most of the following is from the [https://en.wikipedia.org/wiki/ESP32 ESP32 Wikipedia page] | ||
ESP32 is a series of low-cost, low-power system on a chip microcontrollers with integrated Wi-Fi and dual-mode Bluetooth. The ESP32 series employs a Tensilica Xtensa LX6 microprocessor in both dual-core and single-core variations and includes built-in antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power-management modules. ESP32 is created and developed by Espressif Systems. | ESP32 is a series of low-cost, low-power system on a chip microcontrollers with integrated Wi-Fi and dual-mode Bluetooth. The ESP32 series employs a Tensilica Xtensa LX6 microprocessor in both dual-core and single-core variations and includes built-in antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power-management modules. ESP32 is created and developed by Espressif Systems. | ||
+ | |||
+ | [[File:ESP32_Block_Diagram.PNG]] | ||
+ | |||
+ | == Features == | ||
+ | |||
+ | Features of the ESP32 include the following: | ||
+ | |||
+ | * Processors: | ||
+ | ** CPU: Xtensa dual-core (or single-core) 32-bit LX6 microprocessor, operating at 160 or 240 MHz and performing at up to 600 [[Dhrystone|DMIPS]] | ||
+ | ** Ultra low power (ULP) co-processor | ||
+ | * Memory: 520 KiB SRAM | ||
+ | * Wireless connectivity: | ||
+ | ** Wi-Fi: IEEE 802.11 b/g/n | ||
+ | ** Bluetooth: v4.2 BR/EDR and BLE | ||
+ | * Peripheral interfaces: | ||
+ | ** 12-bit successive approximation ADC up to 18 channels | ||
+ | ** 2 × 8-bit digital-to-analog converter | ||
+ | ** 10 × touch sensors (capacitive sensing GPIOs) | ||
+ | ** 4 × Serial Peripheral Interface Bus | ||
+ | ** 2 × I²S interfaces | ||
+ | ** 2 × I²C interfaces | ||
+ | ** 3 × universal asynchronous receiver/transmitter | ||
+ | ** Secure Digital/SDIO/CE-ATA/MultiMediaCard/MultiMediaCard/eMMC host controller | ||
+ | ** SDIO/SPI slave controller | ||
+ | ** Ethernet MAC interface with dedicated DMA and IEEE 1588 Precision Time Protocol support | ||
+ | ** CAN bus 2.0 | ||
+ | ** Infrared remote controller (TX/RX, up to 8 channels) | ||
+ | ** Motor Pulse-width modulation | ||
+ | ** LED Pulse-width modulation (up to 16 channels) | ||
+ | ** Hall effect sensor | ||
+ | ** Ultra low power analog pre-amplifier | ||
+ | * Security: | ||
+ | ** IEEE 802.11 standard security features all supported, including WFA, WPA/WPA2 and WLAN Authentication and Privacy Infrastructure | ||
+ | ** Secure boot | ||
+ | ** Flash encryption | ||
+ | ** 1024-bit OTP, up to 768-bit for customers | ||
+ | ** Cryptographic hardware acceleration: Advanced Encryption Standard AES, SHA-2, RSA (cryptosystem), elliptic curve cryptography (ECC), random number generator (RNG) | ||
+ | * Power management: | ||
+ | ** Internal low-dropout regulator | ||
+ | ** Individual power domain for RTC | ||
+ | ** 5μA deep sleep current | ||
+ | ** Wake up from GPIO interrupt, timer, ADC measurements, capacitive touch sensor interrupt | ||
+ | |||
+ | == Printed circuit boards == | ||
+ | |||
+ | === Surface-mount module boards === | ||
+ | ESP32 based Surface-mount technology printed circuit board modules directly contain the ESP32 System on a chip and are designed to be easily integrated onto other circuit boards. Meandered inverted-F antenna designs are used for the PCB trace antennas on the modules listed below. In addition to flash memory, some modules include pseudostatic RAM (pSRAM). | ||
+ | {| class="wikitable" | ||
+ | !Vendor | ||
+ | !Name | ||
+ | !Antenna | ||
+ | !Flash memory ([[mebibyte|MiB]]) | ||
+ | !pSRAM ([[mebibyte|MiB]]) | ||
+ | !Description | ||
+ | |- | ||
+ | | rowspan="9" | Espressif | ||
+ | | ESP-WROOM-03 | ||
+ | | {{nowrap|PCB trace}} | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Discontinued. Limited distribution, pre-production module created by Espressif for beta testing purposes; this module used the ESP31B, the beta testing chip for the ESP32 series.<ref name="SparkfunFristImpressions">{{cite web |title= Enginursday: First Impressions of the ESP32 |author=Jim Lindblom |publisher=Sparkfun Electronics |url= https://www.sparkfun.com/news/2017 | date=2016-01-21 | accessdate=2016-09-01}}</ref><ref name="AdafruitVideoESP32BetaModule">{{cite AV media |title= Playing With New ESP32 Beta Module | author=[[Limor Fried]] |publisher=Adafruit Industries |url=https://www.youtube.com/watch?v=HCGHb0OVz1s | date=2015-12-22 | accessdate=2016-09-02}}</ref><ref name="HarizanovESP32BetaModule">{{cite web |title= ESP32 |url= https://harizanov.com/2015/12/esp32/ | author=Martin Harizanov | date=2015-12-18 | accessdate=2016-09-02}}</ref><ref name="HackadayESP32BetaUnits">{{cite news |title= The ESP32 Beta Units Arrive |url= http://hackaday.com/2015/12/23/the-esp32-beta-units-arrive/ | author=Brian Benchoff | publisher=Hackaday | date=2015-12-23 | accessdate=2016-09-02}}</ref><ref name="MarkusUlsassESP32Beta">{{cite news |title= ESP32 beta module HiRes pictures |url= http://lookmanowire.blogspot.com/2015/12/esp32-beta-module-hi-res-pictures.html | author=Markus Ulsass | date=2015-12-25 | accessdate=2016-09-02}}</ref> FCC Part 15.247 tested (FCC ID: 2AC7Z-ESP32).<ref name="ESPWROOM03FCCTestReport">{{cite web |title=FCC Part 15.247 Test Report for Espressif Systems (Shanghai) Pte. Ltd. |publisher=Bay Area Compliance Laboratories Corp. |url=https://fccid.io/pdf.php?id=2921007 | date=2016-02-17 | accessdate=2016-09-02}}</ref> | ||
+ | |- | ||
+ | | ESP32-WROOM-32 | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 0 | ||
+ | | First publicly available ESP32 module board created by Espressif.<ref name="EspressifESPWROOM32Datasheet">{{cite web |title= ESP-WROOM-32 Datasheet |publisher= Espressif Systems |url= https://espressif.com/sites/default/files/documentation/esp_wroom_32_datasheet_en.pdf |date= 2016-08-22 |accessdate= 2016-09-02 |archive-url= https://web.archive.org/web/20160913072411/https://espressif.com/sites/default/files/documentation/esp_wroom_32_datasheet_en.pdf |archive-date= 2016-09-13 |url-status= dead }}</ref> FCC Part 15.247 tested (FCC ID: 2AC7Z-ESPWROOM32).<ref name="ESPWROOM32FCCTestReport">{{cite web |title=FCC Part 15.247 Test Report for Espressif Systems (Shanghai) Pte. Ltd. |publisher=Bay Area Compliance Laboratories Corp. |url=https://fccid.io/document.php?id=3212932 | date=2016-11-10 | accessdate=2016-12-15}}</ref> Based on ESP32-D0WDQ6 chip. Originally named "ESP-WROOM-32". | ||
+ | |- | ||
+ | | ESP32-WROOM-32D | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Revision of the ESP-WROOM-32 module which uses an ESP32-D0WD chip instead of an ESP32-D0WDQ6 chip.<ref name="EspressifESPWROOM32DUDatasheet">{{cite web |title=ESP-WROOM-32D/ESP32-WROOM-32U Datasheet |publisher=Espressif Systems |url=http://espressif.com/sites/default/files/documentation/esp-wroom-32d_esp32-wroom-32u_datasheet_en.pdf |accessdate=2017-11-28 |archive-url=https://web.archive.org/web/20171203224449/http://espressif.com/sites/default/files/documentation/esp-wroom-32d_esp32-wroom-32u_datasheet_en.pdf |archive-date=2017-12-03 |url-status=dead }}</ref> Originally named "ESP-WROOM-32D". | ||
+ | |- | ||
+ | | ESP32-SOLO-1 | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Similar to the ESP32-WROOM-32D module, but uses the single-core ESP32-S0WD chip instead of the dual-core ESP32-D0WD. | ||
+ | |- | ||
+ | | {{nowrap|ESP32-WROOM-32U}} | ||
+ | | [[Hirose U.FL|U.FL socket]] | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Alternative to the ESP-WROOM-32D module which has a U.FL connector for external antenna in lieu of a PCB trace antenna.<ref name="EspressifESPWROOM32DUDatasheet" /> | ||
+ | |- | ||
+ | | {{nowrap|ESP32-WROVER}} | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 4 | ||
+ | | ESP32 module board with 4 MiB pSRAM created by Espressif. FCC part 15.247 tested (FCC ID 2AC7Z-ESP32WROVER). Uses 40 MHz crystal oscillator. Does not include U.FL connector. Based on ESP32-D0WDQ6 chip. Since June 2018, new modules have been upgraded to 8 MiB pSRAM. | ||
+ | |- | ||
+ | | {{nowrap|ESP32-WROVER-I}} | ||
+ | | U.FL socket, PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 4 | ||
+ | | Variation of ESP32-WROVER module configured to use an on-board U.FL compatible connector. PCB trace antenna not connected by default. | ||
+ | |- | ||
+ | | {{nowrap|ESP32-WROVER-B}} | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 8 | ||
+ | | Revision of ESP32-WROVER module with 8 MiB pSRAM (instead of 4 MiB pSRAM) operating at 3.3V (instead of 1.8V in previous versions) and ESP32-D0WD (instead of ESP32-D0WDQ6). FCC part 15.247 tested (FCC ID 2AC7Z-ESP32WROVERB). Does not include U.FL connector. (Custom order option for flash capacity of 8 MiB or 16 MiB also available.) | ||
+ | |- | ||
+ | | {{nowrap|ESP32-WROVER-IB}} | ||
+ | | U.FL socket, PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 8 | ||
+ | | Variation of ESP32-WROVER-B module configured to use an on-board U.FL compatible connector. PCB trace antenna not connected by default. | ||
+ | |- | ||
+ | | rowspan="2" | Ai-Thinker | ||
+ | | ESP32-S | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Ai-Thinker's equivalent to Espressif's ESP-WROOM-32 module. (Same form factor and general specifications.)<ref name="AIThinkerESP32SModule">{{cite web |title=Ai-Thinker ESP-32S Decap Photos |author=Baoshi |url= https://twitter.com/ba0sh1/status/785980988077723648 | date=2016-10-11 | accessdate=2016-10-22}}</ref> Previously branded as "ESP-32S" with the hyphen before "32S", the initial release of the ESP-32S module replaced the previously announced, but never released, ESP3212 module. | ||
+ | |- | ||
+ | | ESP32-A1S | ||
+ | | U.FL socket, PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 4 | ||
+ | | Ai-Thinker's equivalent to Espressif's ESP32-WROVER series module. | ||
+ | |- | ||
+ | | rowspan="3" | AnalogLamb | ||
+ | | ESP-32S-ALB | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Clone of the ESP-32S module (ESP-WROOM-32 compatible footprint). Seen with a green solder mask coating.<ref name="AnalogLambCloneModule">{{cite web |url=https://www.analoglamb.com/product/esp-32s-alb/ |title=ESP-32S-ALB/ALB-WROOM |publisher=AnalogLamb}}</ref> | ||
+ | |- | ||
+ | | ALB-WROOM | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 16 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Variation of ESP-32S-ALB with 16 MiB of flash memory.<ref name="AnalogLambCloneModule" /> | ||
+ | |- | ||
+ | | ALB32-WROVER | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 4 | ||
+ | | ESP32 module board with 4 MiB pSRAM with the same footprint as the ESP-WROOM-32 module.<ref>{{cite web |url=https://www.analoglamb.com/product/esp32-wrover/ |title=ESP32-WROVER – ESP32 Module with 32Mb Flash and 32Mb PSRAM |publisher=AnalogLamb }}</ref> | ||
+ | |- | ||
+ | | DFRobot | ||
+ | | ESP-WROOM-32 | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Module board similar to Espressif Systems's ESP-WROOM-32, but is not FCC certified, and uses 26 MHz or 32 kHz crystal oscillator.<ref>{{cite web |url=http://wiki.dfrobot.com.cn/index.php?title=%28SKU%3aTEL0111%29ESP32_WiFi%26Bluetooth_Module/ESP-WROOM-32 |title=(SKU:TEL0111)ESP32 WiFi&Bluetooth Module/ESP-WROOM-32 |publisher=DFRobot }}</ref> | ||
+ | |- | ||
+ | | eBox & Widora | ||
+ | | ESP32-Bit | ||
+ | | Ceramic, U.FL socket | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Module has a ceramic antenna and an U.FL antenna connector. This module has a different footprint than the ESP-WROOM-32/ESP-32S modules. | ||
+ | |- | ||
+ | | Goouuu Tech | ||
+ | | ESP-32F | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Module board similar to Espressif Systems's ESP-WROOM-32. FCC certified (ID 2AM77-ESP-32F). | ||
+ | |- | ||
+ | | rowspan="2" | IntoRobot | ||
+ | | W32 | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Module similar in appearance to Espressif's ESP-WROOM-32, but footprint pinout differs.<ref>{{cite web |url=http://docs.intorobot.com/hardware/w323-datasheet/#--3 |title=硬件功能 (Hardware Function) |publisher=IntoRobot |access-date=2017-10-02 |archive-url=https://web.archive.org/web/20180530094507/http://docs.intorobot.com/hardware/w323-datasheet/#--3 |archive-date=2018-05-30 |url-status=dead }}</ref> | ||
+ | |- | ||
+ | | W33 | ||
+ | | Ceramic, U.FL socket | ||
+ | | style="text-align:center" | 4 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Differs from IntoRobot W32 module in its antenna configuration. | ||
+ | |- | ||
+ | | ITEAD | ||
+ | | PSH-C32 | ||
+ | | PCB trace | ||
+ | | style="text-align:center" | 1<ref name="IteadPSHC32Schematic">{{cite web |title=PSH-C32 Schematic |author=ITEAD |url=https://www.itead.cc/wiki/File:PSH_C32.SCHMATIC.pdf | date=2017-02-15 | accessdate=2017-02-23}}</ref> | ||
+ | | style="text-align:center" | 0 | ||
+ | | Module has unusually small flash memory on board. Also, footprint is unique and differs from all other ESP32 modules.<ref name="IteadPSHC32">{{cite web |title=PSH-C32 |author=ITEAD |url=https://www.itead.cc/wiki/PSH-C32 | accessdate=2017-02-23}}</ref> | ||
+ | |- | ||
+ | | rowspan="5" | Pycom<ref name="PycomOEMProducts">{{cite web |title=Pycom OEM Products |author=Pycom |url=https://www.pycom.io/product-category/oem-products/ | accessdate=2017-03-14}}</ref> | ||
+ | | W01 | ||
+ | | (Not included.) | ||
+ | | style="text-align:center" | 8 | ||
+ | | style="text-align:center" | 4 | ||
+ | | OEM module version of the WiPy 2.0. Supports Wi-Fi and Bluetooth. FCC ID 2AJMTWIPY01R. | ||
+ | |- | ||
+ | | L01 | ||
+ | | (Not included.) | ||
+ | | style="text-align:center" | 8 | ||
+ | | style="text-align:center" | 4 | ||
+ | | OEM module version of the LoPy. Supports Wi-Fi, Bluetooth, and LoRa. FCC ID 2AJMTLOPY01R. | ||
+ | |- | ||
+ | | L04 | ||
+ | | (Not included.) | ||
+ | | style="text-align:center" | 8 | ||
+ | | style="text-align:center" | 4 | ||
+ | | OEM module version of the LoPy4. Supports Wi-Fi, Bluetooth, LoRa, and Sigfox. | ||
+ | |- | ||
+ | | S01 | ||
+ | | (Not included.) | ||
+ | | style="text-align:center" | 8 | ||
+ | | style="text-align:center" | 4 | ||
+ | | Discontinued. OEM module version of the SiPy. Supported Wi-Fi, Bluetooth, and Sigfox (14 dBm and 22 dBm). | ||
+ | |- | ||
+ | | G01 | ||
+ | | (Not included.) | ||
+ | | style="text-align:center" | 8 | ||
+ | | style="text-align:center" | 4 | ||
+ | | OEM module version of the GPy. Supports Cellular LTE-CAT M1/NB1, Wi-Fi and Bluetooth. | ||
+ | |- | ||
+ | | rowspan="2" | u-blox | ||
+ | | NINA-W131 | ||
+ | | (Not included.) | ||
+ | | style="text-align:center" | 2 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Belongs to the u-blox NINA-W13 series of Wi-Fi modules.<ref name="ublox_NINA-W13-series">{{cite web |url=https://www.u-blox.com/en/product/nina-w13-series |title=NINA-W13 series |publisher=u-blox}}</ref> | ||
+ | |- | ||
+ | | NINA-W132 | ||
+ | | PIFA | ||
+ | | style="text-align:center" | 2 | ||
+ | | style="text-align:center" | 0 | ||
+ | | Belongs to the u-blox NINA-W13 series of Wi-Fi modules.<ref name="ublox_NINA-W13-series" /> On board [[Inverted-F antenna#Planar implementation|planar inverted-F antenna]] (PIFA) is shaped (cut & bent) metal, not a PCB trace. | ||
+ | |} | ||
+ | |||
+ | === Development and other boards === | ||
+ | Development & break-out boards extend wiring and may add functionality, often building upon ESP32 module boards and making them easier to use for development purposes (especially with [[breadboard]]s). | ||
+ | {| class="wikitable" | ||
+ | !Vendor | ||
+ | !Name | ||
+ | !Surface-mount module used | ||
+ | !Description | ||
+ | |- | ||
+ | | rowspan="5" | Espressif | ||
+ | | ESP_Module_Testboard | ||
+ | | ESP-WROOM-03 | ||
+ | | Break-out board included with ESP-WROOM-03 beta modules.<ref name="SparkfunFristImpressions" /><ref name="AdafruitVideoESP32BetaModule" /> | ||
+ | |- | ||
+ | | {{nowrap|ESP32_Demo Board_V2}} | ||
+ | | {{nowrap|ESP-WROOM-32}} | ||
+ | | Development & demonstration board created by Espressif.<ref name="WilliamHooiESP32DemoBoardV2">{{cite web |author=William Hooi | title=So looking forward… |url= https://twitter.com/willhooi/status/771519098731630592 | date=2016-09-01 | accessdate=2016-09-02}}</ref><ref name="AdyESP32DemoBoardV2">{{cite web |author=Aditya Tannu | title= Look what I just got! | url= https://twitter.com/Ady/status/771791275313934336 | date=2016-09-02 | accessdate=2016-09-02}}</ref> | ||
+ | |- | ||
+ | | ESP32-DevKitC | ||
+ | | ESP-WROOM-32 | ||
+ | | Compact development board created by Espressif.<ref name="EspressifWROOM32DevBoard">{{cite web |title=ESP32-DevKitC Getting Started Guide |url=https://espressif.com/en/content/esp32-devkitc-getting-started-guide | publisher=Espressif Systems | date=2016-09-21 | accessdate=2016-09-21}}</ref> Silkscreen labeling on PCB reads "Core Board". | ||
+ | |- | ||
+ | | ESP-WROVER-KIT | ||
+ | | ESP-WROOM-32 or ESP32-WROVER | ||
+ | | Large development board created by Espressif.<ref name="EspressifESPWROVERKIT">{{cite web |title=ESP-WROVER-KIT |url=https://espressif.com/en/products/hardware/esp-wrover-kit/overview | publisher=Espressif Systems | accessdate=2017-02-19}}</ref> Previously named ESP32-DevKitJ.<ref name="IgrrESP32CameraDemo">{{cite web |title=ESP32 Camera Demo |url=https://github.com/igrr/esp32-cam-demo/blob/master/README.md#esp32 | publisher=Ivan Grokhotkov | date=2016-11-28 | accessdate=2016-12-02}}</ref> | ||
+ | |- | ||
+ | | ESP32-PICO-KIT | ||
+ | | ESP32-PICO-D4 | ||
+ | | Small development board created by Espressif. FCC ID 2AC7Z-ESP32PICOKIT. | ||
+ | |- | ||
+ | | Adafruit | ||
+ | | HUZZAH32 | ||
+ | | ESP-WROOM-32 | ||
+ | | Also referred to as the "ESP32 Feather Board", the HUZZAH32 is a compact development board/module that is compatible with the Adafruit Feather family of products. | ||
+ | |- | ||
+ | | rowspan="2" | Banana pi | ||
+ | | BPI:bit | ||
+ | | ESP-32S | ||
+ | | a development for [[Webduino]] and arduino | ||
+ | |- | ||
+ | | BPI-UNO32 | ||
+ | | ESP32-S | ||
+ | | a development board for arduino | ||
+ | |- | ||
+ | | rowspan="2" | Ai-Thinker | ||
+ | | NodeMCU-32S | ||
+ | | ESP-32S | ||
+ | | NodeMCU-like development board.<ref name="AiThinkerNodeMCU32S">{{cite web |author=ESP32.net | title=Ai-Thinker NodeMCU-32S Development Board Appears on AliExpress |url= https://twitter.com/ESP32net/status/792085121394364418 | date=2016-10-28 | accessdate=2016-10-28}}</ref> | ||
+ | |- | ||
+ | | ESP32-CAM | ||
+ | | ESP32-S | ||
+ | | Compact development board with SD card slot and ribbon cable interface intended for camera connection. | ||
+ | |- | ||
+ | | rowspan="2" | AnalogLamb | ||
+ | | ESP32 Development Board | ||
+ | | ESP-32S-ALB or ALB-WROOM | ||
+ | | Development board similar to Espressif's ESP32-DevKitC with on board a CP2102 USB/serial bridge. 4 MiB variation uses ESP-32S-ALB; 16 MiB variation uses ALB-WROOM module.<ref>{{cite web |url=https://www.analoglamb.com/product/esp32-development-board/ |title=ESP32 Development Board – Developer Edition |publisher=AnalogLamb }}</ref> | ||
+ | |- | ||
+ | | Maple ESP32 | ||
+ | | ESP-32S-ALB | ||
+ | | Development board with Arduino-style connections and CP2104 USB/serial interface.<ref>{{cite web |url=https://www.analoglamb.com/product/maple-esp32/ |title=Maple ESP32 – ESP32 Board with Micro SD Interface, USB to USART & Compatible with Arduino Interface |publisher=AnalogLamb }}</ref> | ||
+ | |- | ||
+ | | April Brother | ||
+ | | ESPea32 | ||
+ | | † | ||
+ | | Development board with [[perfboard]] area that may be optionally cut-off. | ||
+ | |- | ||
+ | | ArduCAM | ||
+ | | ESP32 UNO | ||
+ | | ESP-32S | ||
+ | | Arduino Uno-like development board based on ESP32 IoT UNO framework with support for SPI ArduCAM, Battery pins and uSD card slot.<ref>{{cite web|last1=ESP32 UNO by ArduCam|title=Arduino Uno-like development board|url=https://www.arducam.com/arducam-iotai-esp32-camera-module-arduino-uno-r3-board/}}</ref> | ||
+ | |- | ||
+ | | DoIT | ||
+ | | ESPduino32 | ||
+ | | ESP-WROOM-32 | ||
+ | | Full-featured Arduino Uno-like development board compatible with Arduino Shields. It also adds additional SPI & IO pins. | ||
+ | |- | ||
+ | | EzSBC | ||
+ | | ESP32-01 Breakout and Development Board | ||
+ | | ESP-WROOM-32 | ||
+ | | Full-featured development board with two tri-color LEDs and fits on a breadboard. | ||
+ | |- | ||
+ | | Gravitech & MakerAsia | ||
+ | | Nano32 | ||
+ | | † | ||
+ | | Development board that directly incorporates the ESP32 chip. | ||
+ | |- | ||
+ | | HydraBus | ||
+ | | HydraESP32 | ||
+ | | ESP-WROOM-32 or ESP-32S | ||
+ | | HydraESP32 HydraBus v1.1 Rev1 shield/breakout board for ESP-WROOM-32 or ESP-32S. This shield can be used with or without a HydraBus board. | ||
+ | |- | ||
+ | | Noduino | ||
+ | | Quantum | ||
+ | | † | ||
+ | | Arduino-style development board that directly incorporates the ESP32 chip. | ||
+ | |- | ||
+ | | rowspan="6" | Pycom | ||
+ | | WiPy | ||
+ | | † | ||
+ | | [[MicroPython]] programmable Wi-Fi & Bluetooth IoT development platform with a 1 km Wi-Fi range. WiPy versions 2.0 and 3.0 use ESP32. | ||
+ | |- | ||
+ | | LoPy | ||
+ | | † | ||
+ | | Triple network Pycom board featuring LoRa, Wi-Fi (1 km range), and BLE. | ||
+ | |- | ||
+ | | LoPy4 | ||
+ | | ? | ||
+ | | Quadruple network Pycom board featuring LoRa, Sigfox, Wi-Fi (1 km range), and BLE. | ||
+ | |- | ||
+ | | SiPy | ||
+ | | † | ||
+ | | Triple network Pycom board featuring Sigfox, Wi-Fi (1 km range), and BLE. | ||
+ | |- | ||
+ | | GPy | ||
+ | | † | ||
+ | | Triple network Pycom board featuring LTE-M, Wi-Fi (1 km range), and BLE. | ||
+ | |- | ||
+ | | FiPy | ||
+ | | † | ||
+ | | Quintuple network Pycom board featuring LTE-M, LoRa, Sigfox, Wi-Fi (1 km range), and BLE. | ||
+ | |- | ||
+ | | SparkFun | ||
+ | | ESP32 Thing | ||
+ | | † | ||
+ | | Compact development board with FTDI FT231x USB/serial interface and LiPo charger built-in. | ||
+ | |- | ||
+ | | rowspan="3" | SunDUINO | ||
+ | | ESP32 MiniBoard | ||
+ | | ESP-WROOM-32 | ||
+ | | Breakout compatible with the Espressif ESP32-DevKitC. Lacks on-board USB-UART. | ||
+ | |- | ||
+ | | ESP32 MiniBoard v2 | ||
+ | | ESP32-Wrover-B/IB | ||
+ | | Breakout Board with Silabs CP2102 , baterry charger. Compatybile witch ESpressif DEVkit. | ||
+ | |- | ||
+ | | ESP32 SunDUINO | ||
+ | | ESP-WROOM-32 or ESP-32S | ||
+ | | Arduino-style development board. Lacks on-board USB-UART. | ||
+ | |- | ||
+ | | SwitchDoc Labs | ||
+ | | BC24 | ||
+ | | ESP-WROOM-32 | ||
+ | | ESP32 Breakout with 24 SK6812RGBW LEDs with Grove Connectors for easy prototyping. Comes with USB-UART and Feather compatible pinout. <ref>{{cite web |url=https://shop.switchdoc.com/products/the-bc24-esp32-based-24-rgbw-pixels-with-grove-connectors |title=BC24 / ESP32 Development Board – Big Circle 24 |publisher=SwitchDoc Labs }}</ref> | ||
+ | |- | ||
+ | | Watterott | ||
+ | | ESP-WROOM32-Breakout | ||
+ | | ESP-WROOM-32 | ||
+ | | Breakout which is compatible with the Espressif ESP32-DevKitC. | ||
+ | |- | ||
+ | | rowspan="5" | WEMOS<ref name="WEMOSProducts">{{cite web|url=https://wiki.wemos.cc/start|title=Products [WEMOS Electronics]|accessdate=2018-01-25}}</ref> | ||
+ | | LOLIN32 [Retired]<ref>{{Cite web|url=https://wiki.wemos.cc/products:lolin32:lolin32|title=LOLIN32 (Retired) [WEMOS Electronics]|website=wiki.wemos.cc|language=en|access-date=2018-11-13}}</ref> | ||
+ | | ESP-WROOM-32 | ||
+ | | | ||
+ | |- | ||
+ | | LOLIN32 Lite [Retired]<ref>{{Cite web|url=https://wiki.wemos.cc/products:lolin32:lolin32_lite|title=LOLIN32 Lite (Retired) [WEMOS Electronics]|website=wiki.wemos.cc|language=en|access-date=2018-11-13}}</ref> | ||
+ | | † | ||
+ | |ESP32-D0WDQ6 | ||
+ | |- | ||
+ | | LOLIN32 Pro [Retired]<ref>{{Cite web|url=https://wiki.wemos.cc/products:lolin32:lolin32_pro|title=LOLIN32 Pro (Retired) [WEMOS Electronics]|website=wiki.wemos.cc|language=en|access-date=2018-11-13}}</ref> | ||
+ | | ESP32-WROVER | ||
+ | | MicroSD card slot (supports SD and SPI mode) | ||
+ | |- | ||
+ | |LOLIN D32<ref>{{Cite web|url=https://wiki.wemos.cc/products:d32:d32|title=D32 [WEMOS Electronics]|website=wiki.wemos.cc|language=en|access-date=2018-11-13}}</ref> | ||
+ | |ESP-WROOM-32 | ||
+ | | | ||
+ | |- | ||
+ | |LOLIN D32 Pro<ref>{{Cite web|url=https://wiki.wemos.cc/products:d32:d32_pro|title=D32 Pro [WEMOS Electronics]|website=wiki.wemos.cc|language=en|access-date=2018-11-13}}</ref> | ||
+ | |ESP32-WROVER | ||
+ | |I2C port, TFT port and Micro SD Card slot (support SPI mode) | ||
+ | |- | ||
+ | | Widora | ||
+ | | Air | ||
+ | | † | ||
+ | | Compact ESP32 development board. | ||
+ | |} | ||
+ | |||
+ | † ESP32 SoC incorporated directly onto development board; no module board used. | ||
+ | |||
+ | == Programming == | ||
+ | |||
+ | Programming languages, frameworks, platforms, and environments used for ESP32 programming: | ||
+ | |||
+ | * [https://github.com/espressif/arduino-esp32 Arduino IDE] with the ESP32 Arduino Core | ||
+ | * [https://github.com/espressif/esp-idf Espressif Mesh Development Framework] | ||
+ | * [https://docs.espressif.com/projects/esp-idf/en/latest/ Espressif IoT Development Framework (IDF)] – official Espressif development framework for ESP32 | ||
+ | * [http://www.fabglib.org FabGL] - ESP32 Display Controller and Graphics Library | ||
+ | ** [https://github.com/fdivitto/fabgl Fabgl Github] | ||
+ | * [https://github.com/espressif/arduino-esp32/releases espressif arduino-esp32] | ||
+ | * [https://docs.espressif.com/projects/esp-idf/en/latest/hw-reference/index.html ESP32 Hardware Reference] | ||
+ | * [https://github.com/espressif/esptool https://github.com/espressif/esptool] | ||
+ | * [https://github.com/espressif/esp-idf Espressif IoT Development Framework] | ||
+ | ** [https://docs.espressif.com/projects/esp-idf/en/latest/ ESP-IDF Programming Guide] | ||
+ | * [https://github.com/espressif/esp-mqtt ESP32 mqtt component] | ||
+ | * [https://github.com/espressif/esp32-nesemu ESP32-NESEMU] a Nintendo Entertainment System emulator | ||
+ | * [https://github.com/espressif/esp32-wifi-lib ESP32 WiFi Stack Libraries] | ||
+ | * [https://github.com/espressif/esp32-bt-lib ESP32 Bluetooth stack] | ||
+ | * [https://github.com/espressif/esp32-doom ESP32-DOOM] a port of PrBoom | ||
+ | * [https://www.espruino.com Espruino] – JavaScript SDK and firmware closely emulating [[Node.js]] | ||
+ | * [https://www.freertos.org FreeRTOS] | ||
+ | * [http://docs.micropython.org/en/latest/esp32/quickref.html MicroPython] A lean implementation of Python 3 for microcontrollers | ||
+ | * [https://www.espressif.com/en/media_overview/news/lua-rtos-esp32 Lua RTOS for ESP32] | ||
+ | * [https://mongoose-os.com Mongoose OS] – an operating system for connected products on microcontrollers; programmable with JavaScript or C. | ||
+ | * [https://github.com/mruby-esp32 mruby] for the ESP32 | ||
+ | * [https://nanoframework.net/ .NET nanoFramework] - Coding in .NET C#, deploy and debug from Visual Studio | ||
+ | * [https://esphome.io/devices/nodemcu_esp32.html NodeMCU] – Lua (programming language) -based firmware | ||
+ | * [https://platformio.org/ PlatformIO Ecosystem and IDE] | ||
+ | * [https://github.com/eerimoq/simba Simba Embedded Programming Platform] | ||
+ | * [https://github.com/whitecatboard/whitecat-ide Whitecat] Ecosystem Blockly Based Web IDE | ||
+ | * [https://www.zerynth.com Zerynth] – Python for IoT and microcontrollers, including the ESP32 | ||
== Web == | == Web == | ||
* [https://github.com/espressif/arduino-esp32 Arduino core for the ESP32] - espressif Github repo | * [https://github.com/espressif/arduino-esp32 Arduino core for the ESP32] - espressif Github repo | ||
+ | * [https://www.espressif.com/en/products/hardware/esp32/resources esp32 resources] | ||
+ | * [https://hackaday.com/tag/esp32/ Hackaday ESP32 resources] | ||
+ | * [https://github.com/espressif/esp-idf Espressif IoT Development Framework. Official development framework for ESP32.] | ||
+ | * [https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf ESP32 Datasheet] | ||
+ | * [https://www.espressif.com/sites/default/files/documentation/esp32-wroom-32_datasheet_en.pdf ESP32-WROOM-32 Datasheet] |
Latest revision as of 15:27, 3 September 2022
Contents
ESP32
Most of the following is from the ESP32 Wikipedia page
ESP32 is a series of low-cost, low-power system on a chip microcontrollers with integrated Wi-Fi and dual-mode Bluetooth. The ESP32 series employs a Tensilica Xtensa LX6 microprocessor in both dual-core and single-core variations and includes built-in antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power-management modules. ESP32 is created and developed by Espressif Systems.
Features
Features of the ESP32 include the following:
- Processors:
- CPU: Xtensa dual-core (or single-core) 32-bit LX6 microprocessor, operating at 160 or 240 MHz and performing at up to 600 DMIPS
- Ultra low power (ULP) co-processor
- Memory: 520 KiB SRAM
- Wireless connectivity:
- Wi-Fi: IEEE 802.11 b/g/n
- Bluetooth: v4.2 BR/EDR and BLE
- Peripheral interfaces:
- 12-bit successive approximation ADC up to 18 channels
- 2 × 8-bit digital-to-analog converter
- 10 × touch sensors (capacitive sensing GPIOs)
- 4 × Serial Peripheral Interface Bus
- 2 × I²S interfaces
- 2 × I²C interfaces
- 3 × universal asynchronous receiver/transmitter
- Secure Digital/SDIO/CE-ATA/MultiMediaCard/MultiMediaCard/eMMC host controller
- SDIO/SPI slave controller
- Ethernet MAC interface with dedicated DMA and IEEE 1588 Precision Time Protocol support
- CAN bus 2.0
- Infrared remote controller (TX/RX, up to 8 channels)
- Motor Pulse-width modulation
- LED Pulse-width modulation (up to 16 channels)
- Hall effect sensor
- Ultra low power analog pre-amplifier
- Security:
- IEEE 802.11 standard security features all supported, including WFA, WPA/WPA2 and WLAN Authentication and Privacy Infrastructure
- Secure boot
- Flash encryption
- 1024-bit OTP, up to 768-bit for customers
- Cryptographic hardware acceleration: Advanced Encryption Standard AES, SHA-2, RSA (cryptosystem), elliptic curve cryptography (ECC), random number generator (RNG)
- Power management:
- Internal low-dropout regulator
- Individual power domain for RTC
- 5μA deep sleep current
- Wake up from GPIO interrupt, timer, ADC measurements, capacitive touch sensor interrupt
Printed circuit boards
Surface-mount module boards
ESP32 based Surface-mount technology printed circuit board modules directly contain the ESP32 System on a chip and are designed to be easily integrated onto other circuit boards. Meandered inverted-F antenna designs are used for the PCB trace antennas on the modules listed below. In addition to flash memory, some modules include pseudostatic RAM (pSRAM).
Vendor | Name | Antenna | Flash memory (MiB) | pSRAM (MiB) | Description |
---|---|---|---|---|---|
Espressif | ESP-WROOM-03 | Template:Nowrap | 4 | 0 | Discontinued. Limited distribution, pre-production module created by Espressif for beta testing purposes; this module used the ESP31B, the beta testing chip for the ESP32 series.<ref name="SparkfunFristImpressions">Template:Cite web</ref><ref name="AdafruitVideoESP32BetaModule">Template:Cite AV media</ref><ref name="HarizanovESP32BetaModule">Template:Cite web</ref><ref name="HackadayESP32BetaUnits">Template:Cite news</ref><ref name="MarkusUlsassESP32Beta">Template:Cite news</ref> FCC Part 15.247 tested (FCC ID: 2AC7Z-ESP32).<ref name="ESPWROOM03FCCTestReport">Template:Cite web</ref> |
ESP32-WROOM-32 | PCB trace | 4 | 0 | First publicly available ESP32 module board created by Espressif.<ref name="EspressifESPWROOM32Datasheet">Template:Cite web</ref> FCC Part 15.247 tested (FCC ID: 2AC7Z-ESPWROOM32).<ref name="ESPWROOM32FCCTestReport">Template:Cite web</ref> Based on ESP32-D0WDQ6 chip. Originally named "ESP-WROOM-32". | |
ESP32-WROOM-32D | PCB trace | 4 | 0 | Revision of the ESP-WROOM-32 module which uses an ESP32-D0WD chip instead of an ESP32-D0WDQ6 chip.<ref name="EspressifESPWROOM32DUDatasheet">Template:Cite web</ref> Originally named "ESP-WROOM-32D". | |
ESP32-SOLO-1 | PCB trace | 4 | 0 | Similar to the ESP32-WROOM-32D module, but uses the single-core ESP32-S0WD chip instead of the dual-core ESP32-D0WD. | |
Template:Nowrap | U.FL socket | 4 | 0 | Alternative to the ESP-WROOM-32D module which has a U.FL connector for external antenna in lieu of a PCB trace antenna.<ref name="EspressifESPWROOM32DUDatasheet" /> | |
Template:Nowrap | PCB trace | 4 | 4 | ESP32 module board with 4 MiB pSRAM created by Espressif. FCC part 15.247 tested (FCC ID 2AC7Z-ESP32WROVER). Uses 40 MHz crystal oscillator. Does not include U.FL connector. Based on ESP32-D0WDQ6 chip. Since June 2018, new modules have been upgraded to 8 MiB pSRAM. | |
Template:Nowrap | U.FL socket, PCB trace | 4 | 4 | Variation of ESP32-WROVER module configured to use an on-board U.FL compatible connector. PCB trace antenna not connected by default. | |
Template:Nowrap | PCB trace | 4 | 8 | Revision of ESP32-WROVER module with 8 MiB pSRAM (instead of 4 MiB pSRAM) operating at 3.3V (instead of 1.8V in previous versions) and ESP32-D0WD (instead of ESP32-D0WDQ6). FCC part 15.247 tested (FCC ID 2AC7Z-ESP32WROVERB). Does not include U.FL connector. (Custom order option for flash capacity of 8 MiB or 16 MiB also available.) | |
Template:Nowrap | U.FL socket, PCB trace | 4 | 8 | Variation of ESP32-WROVER-B module configured to use an on-board U.FL compatible connector. PCB trace antenna not connected by default. | |
Ai-Thinker | ESP32-S | PCB trace | 4 | 0 | Ai-Thinker's equivalent to Espressif's ESP-WROOM-32 module. (Same form factor and general specifications.)<ref name="AIThinkerESP32SModule">Template:Cite web</ref> Previously branded as "ESP-32S" with the hyphen before "32S", the initial release of the ESP-32S module replaced the previously announced, but never released, ESP3212 module. |
ESP32-A1S | U.FL socket, PCB trace | 4 | 4 | Ai-Thinker's equivalent to Espressif's ESP32-WROVER series module. | |
AnalogLamb | ESP-32S-ALB | PCB trace | 4 | 0 | Clone of the ESP-32S module (ESP-WROOM-32 compatible footprint). Seen with a green solder mask coating.<ref name="AnalogLambCloneModule">Template:Cite web</ref> |
ALB-WROOM | PCB trace | 16 | 0 | Variation of ESP-32S-ALB with 16 MiB of flash memory.<ref name="AnalogLambCloneModule" /> | |
ALB32-WROVER | PCB trace | 4 | 4 | ESP32 module board with 4 MiB pSRAM with the same footprint as the ESP-WROOM-32 module.<ref>Template:Cite web</ref> | |
DFRobot | ESP-WROOM-32 | PCB trace | 4 | 0 | Module board similar to Espressif Systems's ESP-WROOM-32, but is not FCC certified, and uses 26 MHz or 32 kHz crystal oscillator.<ref>Template:Cite web</ref> |
eBox & Widora | ESP32-Bit | Ceramic, U.FL socket | 4 | 0 | Module has a ceramic antenna and an U.FL antenna connector. This module has a different footprint than the ESP-WROOM-32/ESP-32S modules. |
Goouuu Tech | ESP-32F | PCB trace | 4 | 0 | Module board similar to Espressif Systems's ESP-WROOM-32. FCC certified (ID 2AM77-ESP-32F). |
IntoRobot | W32 | PCB trace | 4 | 0 | Module similar in appearance to Espressif's ESP-WROOM-32, but footprint pinout differs.<ref>Template:Cite web</ref> |
W33 | Ceramic, U.FL socket | 4 | 0 | Differs from IntoRobot W32 module in its antenna configuration. | |
ITEAD | PSH-C32 | PCB trace | 1<ref name="IteadPSHC32Schematic">Template:Cite web</ref> | 0 | Module has unusually small flash memory on board. Also, footprint is unique and differs from all other ESP32 modules.<ref name="IteadPSHC32">Template:Cite web</ref> |
Pycom<ref name="PycomOEMProducts">Template:Cite web</ref> | W01 | (Not included.) | 8 | 4 | OEM module version of the WiPy 2.0. Supports Wi-Fi and Bluetooth. FCC ID 2AJMTWIPY01R. |
L01 | (Not included.) | 8 | 4 | OEM module version of the LoPy. Supports Wi-Fi, Bluetooth, and LoRa. FCC ID 2AJMTLOPY01R. | |
L04 | (Not included.) | 8 | 4 | OEM module version of the LoPy4. Supports Wi-Fi, Bluetooth, LoRa, and Sigfox. | |
S01 | (Not included.) | 8 | 4 | Discontinued. OEM module version of the SiPy. Supported Wi-Fi, Bluetooth, and Sigfox (14 dBm and 22 dBm). | |
G01 | (Not included.) | 8 | 4 | OEM module version of the GPy. Supports Cellular LTE-CAT M1/NB1, Wi-Fi and Bluetooth. | |
u-blox | NINA-W131 | (Not included.) | 2 | 0 | Belongs to the u-blox NINA-W13 series of Wi-Fi modules.<ref name="ublox_NINA-W13-series">Template:Cite web</ref> |
NINA-W132 | PIFA | 2 | 0 | Belongs to the u-blox NINA-W13 series of Wi-Fi modules.<ref name="ublox_NINA-W13-series" /> On board planar inverted-F antenna (PIFA) is shaped (cut & bent) metal, not a PCB trace. |
Development and other boards
Development & break-out boards extend wiring and may add functionality, often building upon ESP32 module boards and making them easier to use for development purposes (especially with breadboards).
Vendor | Name | Surface-mount module used | Description |
---|---|---|---|
Espressif | ESP_Module_Testboard | ESP-WROOM-03 | Break-out board included with ESP-WROOM-03 beta modules.<ref name="SparkfunFristImpressions" /><ref name="AdafruitVideoESP32BetaModule" /> |
Template:Nowrap | Template:Nowrap | Development & demonstration board created by Espressif.<ref name="WilliamHooiESP32DemoBoardV2">Template:Cite web</ref><ref name="AdyESP32DemoBoardV2">Template:Cite web</ref> | |
ESP32-DevKitC | ESP-WROOM-32 | Compact development board created by Espressif.<ref name="EspressifWROOM32DevBoard">Template:Cite web</ref> Silkscreen labeling on PCB reads "Core Board". | |
ESP-WROVER-KIT | ESP-WROOM-32 or ESP32-WROVER | Large development board created by Espressif.<ref name="EspressifESPWROVERKIT">Template:Cite web</ref> Previously named ESP32-DevKitJ.<ref name="IgrrESP32CameraDemo">Template:Cite web</ref> | |
ESP32-PICO-KIT | ESP32-PICO-D4 | Small development board created by Espressif. FCC ID 2AC7Z-ESP32PICOKIT. | |
Adafruit | HUZZAH32 | ESP-WROOM-32 | Also referred to as the "ESP32 Feather Board", the HUZZAH32 is a compact development board/module that is compatible with the Adafruit Feather family of products. |
Banana pi | BPI:bit | ESP-32S | a development for Webduino and arduino |
BPI-UNO32 | ESP32-S | a development board for arduino | |
Ai-Thinker | NodeMCU-32S | ESP-32S | NodeMCU-like development board.<ref name="AiThinkerNodeMCU32S">Template:Cite web</ref> |
ESP32-CAM | ESP32-S | Compact development board with SD card slot and ribbon cable interface intended for camera connection. | |
AnalogLamb | ESP32 Development Board | ESP-32S-ALB or ALB-WROOM | Development board similar to Espressif's ESP32-DevKitC with on board a CP2102 USB/serial bridge. 4 MiB variation uses ESP-32S-ALB; 16 MiB variation uses ALB-WROOM module.<ref>Template:Cite web</ref> |
Maple ESP32 | ESP-32S-ALB | Development board with Arduino-style connections and CP2104 USB/serial interface.<ref>Template:Cite web</ref> | |
April Brother | ESPea32 | † | Development board with perfboard area that may be optionally cut-off. |
ArduCAM | ESP32 UNO | ESP-32S | Arduino Uno-like development board based on ESP32 IoT UNO framework with support for SPI ArduCAM, Battery pins and uSD card slot.<ref>Template:Cite web</ref> |
DoIT | ESPduino32 | ESP-WROOM-32 | Full-featured Arduino Uno-like development board compatible with Arduino Shields. It also adds additional SPI & IO pins. |
EzSBC | ESP32-01 Breakout and Development Board | ESP-WROOM-32 | Full-featured development board with two tri-color LEDs and fits on a breadboard. |
Gravitech & MakerAsia | Nano32 | † | Development board that directly incorporates the ESP32 chip. |
HydraBus | HydraESP32 | ESP-WROOM-32 or ESP-32S | HydraESP32 HydraBus v1.1 Rev1 shield/breakout board for ESP-WROOM-32 or ESP-32S. This shield can be used with or without a HydraBus board. |
Noduino | Quantum | † | Arduino-style development board that directly incorporates the ESP32 chip. |
Pycom | WiPy | † | MicroPython programmable Wi-Fi & Bluetooth IoT development platform with a 1 km Wi-Fi range. WiPy versions 2.0 and 3.0 use ESP32. |
LoPy | † | Triple network Pycom board featuring LoRa, Wi-Fi (1 km range), and BLE. | |
LoPy4 | ? | Quadruple network Pycom board featuring LoRa, Sigfox, Wi-Fi (1 km range), and BLE. | |
SiPy | † | Triple network Pycom board featuring Sigfox, Wi-Fi (1 km range), and BLE. | |
GPy | † | Triple network Pycom board featuring LTE-M, Wi-Fi (1 km range), and BLE. | |
FiPy | † | Quintuple network Pycom board featuring LTE-M, LoRa, Sigfox, Wi-Fi (1 km range), and BLE. | |
SparkFun | ESP32 Thing | † | Compact development board with FTDI FT231x USB/serial interface and LiPo charger built-in. |
SunDUINO | ESP32 MiniBoard | ESP-WROOM-32 | Breakout compatible with the Espressif ESP32-DevKitC. Lacks on-board USB-UART. |
ESP32 MiniBoard v2 | ESP32-Wrover-B/IB | Breakout Board with Silabs CP2102 , baterry charger. Compatybile witch ESpressif DEVkit. | |
ESP32 SunDUINO | ESP-WROOM-32 or ESP-32S | Arduino-style development board. Lacks on-board USB-UART. | |
SwitchDoc Labs | BC24 | ESP-WROOM-32 | ESP32 Breakout with 24 SK6812RGBW LEDs with Grove Connectors for easy prototyping. Comes with USB-UART and Feather compatible pinout. <ref>Template:Cite web</ref> |
Watterott | ESP-WROOM32-Breakout | ESP-WROOM-32 | Breakout which is compatible with the Espressif ESP32-DevKitC. |
WEMOS<ref name="WEMOSProducts">Template:Cite web</ref> | LOLIN32 [Retired]<ref>Template:Cite web</ref> | ESP-WROOM-32 | |
LOLIN32 Lite [Retired]<ref>Template:Cite web</ref> | † | ESP32-D0WDQ6 | |
LOLIN32 Pro [Retired]<ref>Template:Cite web</ref> | ESP32-WROVER | MicroSD card slot (supports SD and SPI mode) | |
LOLIN D32<ref>Template:Cite web</ref> | ESP-WROOM-32 | ||
LOLIN D32 Pro<ref>Template:Cite web</ref> | ESP32-WROVER | I2C port, TFT port and Micro SD Card slot (support SPI mode) | |
Widora | Air | † | Compact ESP32 development board. |
† ESP32 SoC incorporated directly onto development board; no module board used.
Programming
Programming languages, frameworks, platforms, and environments used for ESP32 programming:
- Arduino IDE with the ESP32 Arduino Core
- Espressif Mesh Development Framework
- Espressif IoT Development Framework (IDF) – official Espressif development framework for ESP32
- FabGL - ESP32 Display Controller and Graphics Library
- espressif arduino-esp32
- ESP32 Hardware Reference
- https://github.com/espressif/esptool
- Espressif IoT Development Framework
- ESP32 mqtt component
- ESP32-NESEMU a Nintendo Entertainment System emulator
- ESP32 WiFi Stack Libraries
- ESP32 Bluetooth stack
- ESP32-DOOM a port of PrBoom
- Espruino – JavaScript SDK and firmware closely emulating Node.js
- FreeRTOS
- MicroPython A lean implementation of Python 3 for microcontrollers
- Lua RTOS for ESP32
- Mongoose OS – an operating system for connected products on microcontrollers; programmable with JavaScript or C.
- mruby for the ESP32
- .NET nanoFramework - Coding in .NET C#, deploy and debug from Visual Studio
- NodeMCU – Lua (programming language) -based firmware
- PlatformIO Ecosystem and IDE
- Simba Embedded Programming Platform
- Whitecat Ecosystem Blockly Based Web IDE
- Zerynth – Python for IoT and microcontrollers, including the ESP32