meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
esp:index [2025/11/19 17:49] – [Types of ESP32] vamsanesp:index [2025/11/20 23:08] (current) – [Communication topics on lamaPLC] vamsan
Line 1: Line 1:
 +~~NOCACHE~~
 ====== lamaPLC: ESP32 / ESP8266 ====== ====== lamaPLC: ESP32 / ESP8266 ======
-The ESP32 can operate as a standalone system or as a slave device to a host MCU, reducing communication stack overhead on the main application processor. It can interface with other systems to provide Wi-Fi and Bluetooth functionality via its [[com:basic_spi|SPI]]/SDIO or [[com:basic_i2c|I²C]]/[[com:basic_uart|UART]] interfaces.+{{ :esp:esp32_ic_1.png?120|ESP32 / ESP8266}} 
 +The ESP32 can operate as a standalone system or as a slave device to a host MCU, reducing communication stack overhead on the central application processor. It can interface with other systems to provide Wi-Fi and Bluetooth functionality via its [[com:basic_spi|SPI]]/SDIO or [[com:basic_i2c|I²C]]/[[com:basic_uart|UART]] interfaces. The **ESP32 / ESP8266** was designed by **Espressif Systems** and is manufactured by TSMC using their 40 nm process
  
 ===== Different between ESP32 and ESP8266 ===== ===== Different between ESP32 and ESP8266 =====
-The main differences are that the ESP32 has significantly more processing power (a dual-core CPU), more memory, and Bluetooth, while the ESP8266 is older, single-core, and Wi-Fi-only. The ESP32 is better for complex projects because of its improved performance and peripheral features, while the ESP8266 is a more affordable choice for simple IoT applications. +The main differences are that the ESP32 has significantly more processing power (a dual-core CPU), more memory, and Bluetooth, while the ESP8266 is older, single-core, and Wi-Fi-only. The ESP32 is better suited to complex projects due to its improved performance and peripheral features, while the ESP8266 is a more affordable choice for simple IoT applications. 
  
-^Feature|ESP32|ESP8266| +===== Types of ESP32 / ESP8266 =====
-^Processor|Dual-core LX6/LX7, up to 240 MHz|Single-core L106, up to 160 MHz| +
-^Connectivity|Wi-Fi and Bluetooth (BLE)|Wi-Fi only| +
-^RAM|Up to 520KB|160KB SRAM| +
-^GPIO Pins|Up to 34|17| +
-^ADC|12-bit ADC|10-bit ADC| +
-^Peripherals|More advanced peripherals like Ethernet, USB, touch sensors, CAN, and hall sensor|Basic peripherals like SPI, I2C, and UART| +
-^Cost|Higher price point|Lower price point| +
- +
-===== Types of ESP32 =====+
 ^Type of ESP32^CPU^Max clock speed^Connectivity^RAM^GPIO^ADC^Security^Peripherials/Note| ^Type of ESP32^CPU^Max clock speed^Connectivity^RAM^GPIO^ADC^Security^Peripherials/Note|
-|ESP32 (original)|Dual-core LX6/LX7|Up to 240 MHz|Wi-Fi and Bluetooth (BLE)|Up to 520KB|Up to 34|12-bit ADC|Secure Boot, Flash Encryption, Hmac|More advanced peripherals like Ethernet, USB, touch sensors, CAN, and hall sensor| +|{{anchor:esp3266}} **ESP8266** \\ <color green>Cost-effective and highly integrated Wi-Fi MCU for IoT applications</color>|Single-core L106 32-bit RISC|160 MHz|Wi-Fi only|160KB SRAM|17|10-bit ADC|TLS encryption, validate certificates|SPI, I2C, and UART, no TWAI| 
-|ESP32-C2|Single-core RISC-V|120 MHz|Wi-Fi 2.4 GHz, Bluetooth 5 (LE)|272 KB SRAM \\ 576 KB ROM|20|12-bit ADC|Secure Boot, Flash Encryption|SPI, UART, I2C, LED PWM controller, General DMA controller (GDMA), SAR ADC| +|{{anchor:esp32}} **ESP32** \\ <color green>Integrated Wi-Fi and Bluetooth connectivity for a wide-range of applications</color>|Dual-core LX6/LX7|240 MHz|Wi-Fi and Bluetooth (BLE)|520KB|34|12-bit ADC|Secure Boot, Flash Encryption, HMAC|Ethernet, USB, touch sensors, CAN, and hall sensor, 1 TWAI
-|ESP32-C3|Single-core RISC-V|160 MHz|Wi-Fi 2.4 GHz, Bluetooth 5 (LE)|400 KB SRAM \\ 384 KB ROM|22|12-bit ADC|Secure Boot, Flash Encryption|Cost-sensitive applications, Pin compatible with ESP8266| +|{{anchor:esp32-dowd}} **ESP32-DOWD** \\ <color green>Wide variety of applications, ranging from low-power sensors networks</color>\\ \\ [[#esp-wroom-32d|ESP32-WROOM-32D]]|Dual-core LX6|240 MHz|Wi-Fi and Bluetooth (BLE)|520KB|32|two 12-bit SAR ADC|Secure Boot, Flash Encryption|SD card, UART, SPI, SDIO, I2C, LED PWM, Motor PWM, I2S, IR, pulse counter, GPIO, capacitive touch sensor, ADC, DAC, TWAI® (compatible with ISO 11898-1, i.e., CAN Specification 2.0)| 
-|ESP32-C6|Single-core RISC-V|160 MHz|Wi-Fi 6 2.4 GHz, Bluetooth 5.3 (LE), Thread, Zigbee, Matter|512 KB SRAM \\ 320 KB ROM|30 (QFN40) or 22 (QFN32)|12-bit ADC|RSA-3072 support|Matter Gateways, Thread Border Routers or Zigbee Matter Bridges, SPI, UART, I2C, I2S, RMT, TWAI, PWM, SDIO, Motor Control PWM| +|{{anchor:esp32-c2}} **ESP32-C2** \\ <color green>Small-sized, cost-effective SoC</color>|Single-core RISC-V|120 MHz|Wi-Fi 2.4 GHz, Bluetooth 5 (LE)|272 KB SRAM \\ 576 KB ROM|20|12-bit ADC|Secure Boot, Flash Encryption|SPI, UART, I2C, LED PWM controller, General DMA controller (GDMA), SAR ADC, no TWAI
-|ESP32-S2|Single-core Xtensa LX7|240 MHz|Wi-Fi 2.4 GHz, USB OTG|320KB SRAM \\ 128KB ROM|43|2 × 13-bit SAR ADC|RSA-3072 support|Camera Interface, fit for lower-power applications like secure IoT| +|{{anchor:esp32-c3}} **ESP32-C3** \\ <color green>A cost-effective RISC-V MCU with Wi-Fi and Bluetooth 5 (LE) connectivity for secure IoT applications</color>|Single-core RISC-V|160 MHz|Wi-Fi 2.4 GHz, Bluetooth 5 (LE)|400 KB SRAM \\ 384 KB ROM|22|12-bit ADC|Secure Boot, Flash Encryption|Cost-sensitive applications, Pin compatible with ESP8266, 1 TWAI
-|ESP32-S3|Dual-core Xtensa LX7|240 MHz|Wi-Fi 2.4 GHz, Bluetooth 5 (LE), USB OTG|512KB SRAM \\ 384KB ROM|45|2 × 12-bit SAR ADC|RSA-4096 support|Camera Interface, Accelerate machine learning applications|+|{{anchor:esp32-c5}} **ESP32-C5** \\ <color green>2.4 and 5 GHz dual-band Wi-Fi 6 MCU, along with Bluetooth 5 (LE) and 802.15.4 for secure and reliable connectivity</color>|Single-core 32-bit RISC-V|240 MHz|Wi-Fi 6 2.4/5 GHz, Bluetooth 5 (LE), Thread, Zigbee, Matter, HomeKit, MQTT|384KB SRAM \\ 320KB ROM|29|12-bit ADC|Secure boot, flash, and PSRAM encryption, and cryptographic accelerators|ADC, SPI, UART, I2C, I2S, RMT, PWM, 2 TWAI| 
 +|{{anchor:esp32-c6}} **ESP32-C6** \\ <color green>A low-power and cost-effective 2.4 GHz Wi-Fi 6 + Bluetooth 5 (LE) + Thread/Zigbee SoC</color>|Single-core RISC-V|160 MHz|Wi-Fi 6 2.4 GHz, Bluetooth 5.3 (LE), Thread, Zigbee, Matter|512 KB SRAM \\ 320 KB ROM|30 (QFN40) or 22 (QFN32)|12-bit ADC|RSA-3072 support|Matter Gateways, Thread Border Routers or Zigbee Matter Bridges, SPI, UART, I2C, I2S, RMT, TWAI, PWM, SDIO, Motor Control PWM, 2 TWAI
 +|{{anchor:esp32-c61}} **ESP32-C61** \\ <color green>Delivering affordable Wi-Fi 6 connectivity</color>|Single-core RISC-V|160 MHz|Wi-Fi 6 2.4 GHz, Bluetooth 5.3 (LE) + Mesh 1.1, Matter|320 KB SRAM \\ 256 KB ROM|30 (QFN40) or 22 (QFN32)|12-bit ADC|secure boot, flash and PSRAM encryption|I2C, I2S, SPI, UART, LED PWM, 2 TWAI, ADC, GPIO, LP IO, Timers, and GDMA. Specialized peripherals include the Event Task Matrix (ETM) for automation-triggered tasks and the Analog Voltage Comparator for easy zero-crossing detection| 
 +|{{anchor:esp32-h2}} **ESP32-H2** \\ <color green>Low power and secure connectivity</color>|Single-core 32-bit RISC-V|96 MHz|Wi-Fi 2.4 GHz, Bluetooth 5 (LE), Thread, Zigbee, Matter|320KB SRAM \\ 128KB ROM|19|12-bit ADC|Secure Boot, Flash Encryption|ADC, SPI, UART, I2C, I2S, RMT, 1 TWAI, GDMA and LED PWM| 
 +|{{anchor:esp32-s2}} **ESP32-S2** \\ <color green>Secure and Powerful Wi-Fi MCU with Numerous I/O Capabilities</color> \\ \\ [[#wemos_s2_mini|Wemos S2 mini]] |Single-core Xtensa LX7|240 MHz|Wi-Fi 2.4 GHz, USB OTG|320KB SRAM \\ 128KB ROM|43|2 × 13-bit SAR ADC|RSA-3072 support|Camera Interface, fit for lower-power applications like secure IoT| 
 +|{{anchor:esp32-s3}} **ESP32-S3** \\ <color green>Powerful AI acceleration Reliable security features</color>  \\ \\ [[#esp-s3_super_mini|ESP32-S3 Super Mini]]|Dual-core Xtensa LX7|240 MHz|Wi-Fi 2.4 GHz, Bluetooth 5 (LE), USB OTG|512KB SRAM \\ 384KB ROM|45|2 × 12-bit SAR ADC|RSA-4096 support|Camera Interface, Accelerate machine learning applications| 
 +|{{anchor:esp32-s4}} **ESP32-P4** \\ <color green>High-performing SoC offering extensive IO connectivity, HMI, and security</color>|Dual-core RISC-V|400 MHz|Wi-Fi 6, Bluetooth 5 (LE), USB OTG, ACK, AWS IoT ExpressLink, etc|768KB SRAM|55|-|Secure Boot, Flash Encryption, cryptographic accelerators, and TRNG ensure|SPI, I2S, I2C, LED PWM, MCPWM, RMT, ADC, UART, 3 TWAI. Additionally, it supports USB OTG 2.0 HS, Ethernet, and SDIO Host 3.0. Parallel display and camera interfaces.| 
 + 
 +===== ESP32-WROOM-32D =====  
 +{{anchor:esp-wroom-32d}} 
 +|{{ :esp:esp32-wroom-32d_2.png?250 |ESP32-WROOM-32D}}|{{ :esp:esp32-wroom-32d_4.png?250 |ESP32-WROOM-32D}}|{{ :esp:esp32-wroom-32d_1.png?250 |ESP32-WROOM-32D}}| 
 + 
 +==== Features ==== 
 +  * **CPU and On-Chip Memory** 
 +     * ESP32-D0WD embedded, Xtensa dual-core 32-bit LX6 microprocessor, up to 240 MHz 
 +     * 448 KB ROM 
 +     * 520 KB SRAM 
 +     * 8 KB SRAM in RTC 
 +  * **Wi-Fi** 
 +     * 802.11b/g/
 +     * Bit rate: 802.11n up to 150 Mbps 
 +     * A-MPDU and A-MSDU aggregation 
 +     * 0.4 µs guard interval support 
 +     * Center frequency range of operating channel: 2412 ~ 2484 MHz 
 +  * **Bluetooth** 
 +     * Bluetooth V4.2 BR/EDR and Bluetooth LE specification 
 +     * Class-1, class-2 and class-3 transmitter 
 +     * AFH 
 +     * CVSD and SBC 
 +  * **Peripherals** 
 +     * Up to 32 GPIOs (5 strapping GPIOs) 
 +     * SD card, UART, SPI, SDIO, I2C, LED PWM, Motor PWM, I2S, IR, pulse counter, GPIO, capacitive touch sensor, ADC, DAC, TWAI (compatible with ISO 11898-1, i.e., CAN Specification 2.0) 
 + 
 + 
 +===== Wemos S2 mini ===== 
 +{{anchor:wemos_s2_mini}} 
 +|{{ :esp:wemos_s2_mini_1.png?250 |Wemos S2 mini}}|{{ :esp:wemos_s2_mini_2.png?250 |Wemos S2 mini}}|{{ :esp:wemos_s2_mini_3.png?250 |Wemos S2 mini}}| 
 + 
 +==== Features ==== 
 +  * A mini wifi board based on [[#esp32-s2|ESP32-S2]]FN4R2 
 +  * Type-C USB 
 +  * ADC, DAC, I2C, SPI, UART, USB OTG 
 +  * Compatible with LOLIN D1 mini shields 
 +  * Compatible with MicroPython, Arduino, CircuitPython, and ESP-IDF 
 +  * Default firmware: MicroPython 
 +  * Operating Voltage: **3.3V** 
 +  * Digital I/O Pins: 27 
 +  * Clock Speed: 240MHz 
 +  * Flash: 4M Bytes 
 +  * PSRAM: 2M Bytes 
 +  * **Wi-Fi**: IEEE 802.11 b/g/n-compliant ** Supports 20 MHz, 40 MHz bandwidth in the 2.4 GHz band ** Single-band 1T1R mode with data rate up to 150 Mbps ** WMM ** TX/RX A-MPDU, RX A-MSDU ** Immediate Block ACK ** Fragmentation and defragmentation ** Automatic Beacon monitoring (hardware TSF) ** 4 × virtual Wi-Fi interfaces ** Simultaneous support for Infrastructure Station, SoftAP, and Promiscuous modes ** Note that when ESP32-S2 is in Station mode and performs a scan, the SoftAP channel will change along with the Station channel. ** Antenna diversity ** 802.11mc FTM 
 +  * **Security**: Secure boot ** Flash encryption ** 4096-bit OTP, up to 1792 bits for users ** Cryptographic hardware acceleration: AES-128/192/256 (FIPS PUB 197), Hash (FIPS PUB 180-4), RSA, Random Number Generator (RNG), HMAC ** Digital signature 
 +  * **Advanced Peripheral Interfaces:** 
 +      * 43 × programmable GPIs 
 +      * Digital interfaces: 
 +         * 4 × SPI 
 +         * 1 × I2S 
 +         * 2 × I²C 
 +         * 2 × UART 
 +         * 1 × RMT (TX/RX) 
 +         * LED PWM controller, up to 8 channels 
 +         * 4 × pulse counters 
 +         * 1 × full-speed USB OTG 
 +         * 1 × DVP 8/16 camera interface, implemented using the hardware resources of I2S 
 +         * 1 × LCD interface (8-bit serial RGB/8080/6800), implemented using the hardware resources of SPI2 
 +         * 1 × LCD interface (8/16/24-bit parallel) 
 +         * DMA controller 
 +         * 1 × TWAI® controller compatible with ISO 11898-1 (CAN Specification 2.0) 
 +      * Analog interfaces: 
 +         * 2 × 12-bit SAR ADCs, up to 20 channels 
 +         * 2 × 8-bit DACs 
 +         * 14 × touch sensing GPIOs 
 +         * 1 × temperature sensor 
 +==== Arduino ==== 
 +Choose board **LOLIN S2 MINI** or **LOLIN S2 PICO**. 
 + 
 + 
 +===== ESP32-S3 Super Mini =====  
 +{{anchor:esp-s3_super_mini}} 
 +|{{ :esp:esp32_s3_super_mini_1.png?250|ESP32-S3 Super Mini}}|{{ :esp:esp32_s3_super_mini_2.png?250|ESP32-S3 Super Mini}}|{{ :esp:esp32_s3_super_mini_3.png?250|ESP32-S3 Super Mini}}| 
 + 
 +==== Features ==== 
 +  * A mini wifi board based on [[#esp32-s3|ESP32-S3]] 
 +  * **Wi-Fi**: IEEE 802.11b/g/n-compliant ** Supports 20 MHz and 40 MHz bandwidth in 2.4 GHz band ** 1T1R mode with data rate up to 150 Mbps ** Wi-Fi Multimedia (WMM) ** TX/RX A-MPDU, TX/RX A-MSDU ** Immediate Block ACK ** Fragmentation and defragmentation ** Automatic Beacon monitoring (hardware TSF) ** Four virtual Wi-Fi interfaces ** Simultaneous support for Infrastructure BSS in Station, SoftAP, or Station + SoftAP modes 
 +Note that when ESP32-S3 scans in Station mode, the SoftAP channel will change along with the Station 
 +channel ** Antenna diversity ** 802.11mc FTM ** 
 +  * **Bluetooth**: Bluetooth LE: Bluetooth 5, Bluetooth mesh ** High power mode (20 dBm) ** Speed: 125 Kbps, 500 Kbps, 1 Mbps, 2 Mbps ** Advertising extensions ** Multiple advertisement sets ** Channel selection algorithm #2 ** Internal co-existence mechanism between Wi-Fi and Bluetooth to share the same antenna 
 +  * **CPU and Memory**: Xtensa® dual-core 32-bit LX7 microprocessor, Clock speed: up to 240 MHz 
 +  * **Advanced Peripheral Interfaces** 
 +      * 45 programmable GPIOs 
 +      * 4 strapping GPIOs 
 +      * 6 or 7 GPIOs needed for in-package flash or PSRAM 
 +      * ESP32-S3FN8、ESP32-S3R2、ESP32-S3R8、ESP32-S3R8V、ESP32-S3R16V: 6 GPIOs needed 
 +      * ESP32-S3FH4R2: 7 GPIOs needed 
 +      * **Digital interfaces:** 
 +         * Two SPI ports for communication with flash and RAM 
 +         * Two general-purpose SPI ports 
 +         * LCD interface (8-bit ~ 16-bit parallel RGB, I8080 and MOTO6800), supporting conversion between RGB565, YUV422, YUV420 and YUV411 
 +         * DVP 8-bit ~ 16-bit camera interface 
 +         * Three UARTs 
 +         * Two I2Cs 
 +         * Two I2Ss 
 +         * RMT (TX/RX) 
 +         * Pulse counter 
 +         * LED PWM controller, up to 8 channels 
 +         * Full-speed USB OTG 
 +         * USB Serial/JTAG controller 
 +         * Two Motor Control PWMs (MCPWM) 
 +         * SD/MMC host controller with 2 slots 
 +         * General DMA controller (GDMA), with 5 transmit channels and 5 receive channels 
 +         * TWAI® controller, compatible with ISO 11898-1 (CAN Specification 2.0) 
 +         * On-chip debug functionality via JTAG 
 +      * **Analog interfaces:** 
 +         * Two 12-bit SAR ADCs, up to 20 channels 
 +         * Temperature sensor 
 +         * 14 touch sensing IOs 
 + 
 +===== Sources ===== 
 +https://www.espressif.com/en/products/ \\ 
 +https://www.wemos.cc/en/latest/tutorials/s2/get_started_with_arduino_s2.html \\ 
 +https://documentation.espressif.com/esp32-s2_datasheet_en.pdf \\  
 +https://documentation.espressif.com/esp32-wroom-32d_esp32-wroom-32u_datasheet_en.pdf \\ 
 + 
 +===== Communication topics on lamaPLC ===== 
 +{{topic>communication}} 
 + 
 +\\ 
 +\\ 
 +{{tag>ESP8266 ESP32 ESP32-C2 ESP32-C3 ESP32-C5 ESP32-C6 ESP32-C61 ESP32-H2 ESP32-S2 ESP32-S3 ESP32-P4 Espressif_Systems communication ethernet ip esp32 esp8266 Wi-Fi Thread Zigbee Matter HomeKit Bluetooth MQTT ADC SPI UART I2C I2S RMT PWM USB USB_OTG TWAI}} 
 +\\ 
 +This page has been accessed for: Today: {{counter|today}}, Until now: {{counter|total}}