Forked from sekcompsci/Comparison Espressif ESP MCUs.md
Created
January 6, 2023 18:24
-
-
Save jonathanpmartins/6ef0348c47ab57c5a7068d042d5cf9bc to your computer and use it in GitHub Desktop.
Revisions
-
fabianoriccardi revised this gist
Apr 11, 2021 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -40,7 +40,7 @@ A minimal table to compare the Espressif's MCU families. | Hall Sensor | X | ✓ | X | ? | X | ? | | Touch Sensor | 0 | 10 | 14 | ? | X | ? | \* All the MCUs have some sort of DMA. However, if this field is not checked, it means that the user hasn't the direct control over DMA. With *General DMA* term, Espressif intends a specific DMA peripheral in full control of user. He will be responsible to manage such peripheral. ** In some old datasheet and documentation, it was referred as CAN bus. -
fabianoriccardi revised this gist
Apr 11, 2021 . 1 changed file with 1 addition and 3 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -2,8 +2,6 @@ A minimal table to compare the Espressif's MCU families. | | ESP8266 | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C6 | |--------------------------- |-------------------------------------- |------------------------------------------------------------------- |--------------------------------------------- |------------------------------------------------------ |--------------------------------------------- |--------------------------------------------- | | Announcement Date | 2014, August | 2016, September | 2019, September | 2020, December | 2020, November | 2021, April | @@ -50,4 +48,4 @@ A minimal table to compare the Espressif's MCU families. For more details about specific models and variants, look at [Espressif Product Selector](https://products.espressif.com/). The table will be updated as new information will be released. Contributions and suggestions are welcomed! -
fabianoriccardi revised this gist
Apr 11, 2021 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,6 +1,6 @@ # Comparison table for ESP8266/ESP32/ESP32-S2/ESP32-S3/ESP32-C3/ESP32-C6 A minimal table to compare the Espressif's MCU families. **work in progress** -
fabianoriccardi revised this gist
Apr 11, 2021 . 1 changed file with 19 additions and 15 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -9,13 +9,13 @@ A minimal table to compare the families of Espressif's processors. | Announcement Date | 2014, August | 2016, September | 2019, September | 2020, December | 2020, November | 2021, April | | Main processor | Tensilica L106 32-bit (up to 160MHz) | Tensilica Xtensa 32-bit LX6 (up to 240MHz) (optionally dual core) | Tensilica Xtensa 32-bit LX7 (up to 240MHz) | Tensilica Xtensa 32-bit LX7 dual core (up to 240MHz) | RISC-V 32-bit (up to 160MHz) | RISC-V 32-bit (up to 160MHz) | | SRAM | 160KB | 520KB | 320KB | 512KB | 400KB | 400KB | | ROM | 0 | 448KB | 128KB | 384KB | 384KB | 384KB | | JTAG | X | ✓ | ✓ | ? | ✓ | ✓ | | Cache | 32 KB instruction | 64KB | 8/16KB (configurable) | ? | 16KB | ? | | WiFi | Wi-Fi 4 (only up to 72.2Mbps) | Wi-Fi 4 | Wi-Fi 4 | Wi-Fi 4 | Wi-Fi 4 | Wi-Fi 6 | | Bluetooth | X | BLE 4.2 (upgrade to 5.0, with limitations) | X | BLE 5.0 | BLE 5.0 | BLE 5.0 | | Ethernet | X | ✓ | X | ? | X | ? | | RTC memory | 768B | 16KB | 16KB | 16KB | 8KB | ? | | PMU | ✓ | ✓ | ✓ | ? | ✓ | ? | | ULP coprocessor | X | ✓ | ULP-RISC-V | ? | X | ? | | Cryptographic Accelerator | X | SHA, RSA, AES, RNG | SHA, RSA, AES, RNG, HMAC, Digital Signature | SHA, RSA, AES, RNG, HMAC, Digital Signature | SHA, RSA, AES, RNG, HMAC, Digital Signature | SHA, RSA, AES, RNG, HMAC, Digital Signature | @@ -25,25 +25,29 @@ A minimal table to compare the families of Espressif's processors. | I2C | 1 | 2 | 2 | ? | 1 | ? | | I2S | 1 | 2 | 1 | ? | 1 | ? | | UART | 2 (one TX only) | 3 | 2 | ? | 2 | ? | | SDIO Host | 0 | 1 | 0 | 2 | 0 | 0 | | SDIO Slave | 0 | 1 | 0 | 0 | 0 | 0 | | GPIO | 17 | 34 | 43 | 44 | 22 | 22 | | LED PWM | 5 | 16 | 8 | ? | 6 | ? | | MCPWM | 0 | 6 | 0 | 2 | 0 | 0 | | Pulse counter | 0 | 8 | 4 | ? | 0 | X | | GDMA* | 0 | 0 | 0 | ? | 6 | ? | | USB | X | X | USB OTG 1.1 | ? | Serial/JTAG | ? | | TWAI** | 0 | 1 | 1 | ? | 1 | ? | | ADC | 1x 10-bit SAR | 2x 12-bit SAR, up to 18 channels | 2x 13-bit SAR, up to 20 channels | ? | 2x 12-bit SAR, up to 6 channels | ? | | DAC | X | 2x 8-bit | 2x 8-bit | ? | X | X | | RMT | 1x transmission + 1x reception | 8x transmission/reception | 4x transmission/reception | ? | 2x transmission + 2x reception | ? | | Timer | 2x 23-bit*** | 4x 64-bit | 4x 64-bit | ? | 2x 54-bit + 1x 52-bit | ? | | Temperature Sensor | ✓ | ✓ | ✓ | ? | ✓ | ? | | Hall Sensor | X | ✓ | X | ? | X | ? | | Touch Sensor | 0 | 10 | 14 | ? | X | ? | * All the MCUs have some sort of DMA. However, if this field is not checked, it means that the user hasn't the direct control over DMA. With *General DMA* term, Espressif intends a specific DMA peripheral in full control of user. He will be responsible to manage such peripheral. ** In some old datasheet and documentation, it was referred as CAN bus. *** A timer is dedicated to Wi-Fi, so you cannot freely use it. For more details about specific models and variants, look at [Espressif Product Selector](https://products.espressif.com/). Contributions and suggestions are welcomed! -
fabianoriccardi revised this gist
Apr 10, 2021 . 1 changed file with 39 additions and 29 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,35 +4,45 @@ A minimal table to compare the families of Espressif's processors. **work in progress** | | ESP8266 | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C6 | |--------------------------- |-------------------------------------- |------------------------------------------------------------------- |--------------------------------------------- |------------------------------------------------------ |--------------------------------------------- |--------------------------------------------- | | Announcement Date | 2014, August | 2016, September | 2019, September | 2020, December | 2020, November | 2021, April | | Main processor | Tensilica L106 32-bit (up to 160MHz) | Tensilica Xtensa 32-bit LX6 (up to 240MHz) (optionally dual core) | Tensilica Xtensa 32-bit LX7 (up to 240MHz) | Tensilica Xtensa 32-bit LX7 dual core (up to 240MHz) | RISC-V 32-bit (up to 160MHz) | RISC-V 32-bit (up to 160MHz) | | SRAM | 160KB | 520KB | 320KB | 512KB | 400KB | 400KB | | ROM | X | 448KB | 128KB | ? | 384KB | 384KB | | JTAG | X | | ✓ | ? | ✓ | ✓ | | Cache | 32 KB instruction | | 8/16KB (configurable) | ? | 16KB | ? | | WiFi | WiFi 4 | | WiFi 4 | WiFi 4 | WiFi 4 | WiFi 6 | | Bluetooth | X | BLE 4.2 (upgrade to 5.0, with limitations) | X | ? | BLE 5.0 | BLE 5.0 | | Ethernet | X | ✓ | X | ? | X | ? | | RTC memory | 768 B | 16KB | 16KB | ? | 8KB | ? | | PMU | ✓ | ✓ | ✓ | ? | ✓ | ? | | ULP coprocessor | X | ✓ | ULP-RISC-V | ? | X | ? | | Cryptographic Accelerator | X | SHA, RSA, AES, RNG | SHA, RSA, AES, RNG, HMAC, Digital Signature | SHA, RSA, AES, RNG, HMAC, Digital Signature | SHA, RSA, AES, RNG, HMAC, Digital Signature | SHA, RSA, AES, RNG, HMAC, Digital Signature | | Secure boot | X | ✓ | ✓ | ✓ | ✓ | ✓ | | Flash encryption | X | ✓ | XTS-AES-128/256 | ✓ | XTS-AES-128 | XTS-AES-128 | | SPI | 2 | 4 | 4 | ? | 3 | ? | | I2C | 1 | 2 | 2 | ? | 1 | ? | | I2S | 1 | 2 | 1 | ? | 1 | ? | | UART | 2 (one TX only) | 3 | 2 | ? | 2 | ? | | SDIO | X | 1 | | | | | | GPIO | 17 | 34 | 43 | 44 | 22 | 22 | | LED PWM | 5 | 16 | 8 channels | ? | 6 channels | ? | | Pulse counter | | | | | | | | GDMA* | X | X | X | ? | 6 channels | ? | | USB | X | X | USB OTG 1.1 | ? | Serial/JTAG | ? | | TWAI** | X | 1 | 1 | ? | 1 | ? | | ADC | 1x 10-bit SAR | 2x 12-bit SAR, up to 18 channels | 2x 13-bit SAR, up to 20 channels | ? | 2x 12-bit SAR, up to 6 channels | ? | | DAC | X | 2x 8-bit | 2x 8-bit | ? | X | X | | RMT | 1x transmission + 1x reception | 8x transmission/reception | 4x transmission/reception | ? | 2x transmission + 2x reception | ? | | Timer | | | 4x 64-bit | ? | 2x 54-bit + 1x 52-bit | ? | | Temperature Sensor | 1 | | ✓ | ? | ✓ | ? | | Hall Sensor | | | | | | | | Touch Sensor | X | 10 | | | | | * All the MCUs have some sort of DMA. However, if this field is not checked, it means that the user hasn't the direct control over DMA. With *General DMA* term, Espressif intends a specific DMA peripheral in full control of user. He will be responsible to manage such peripheral. ** In some old datasheet and documentation, it was referred as CAN bus. For more details about specific models and variants, look at [Espressif Product Selector](https://products.espressif.com/). -
fabianoriccardi revised this gist
Apr 10, 2021 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,4 +1,4 @@ # Comparison table for ESP8266/ESP32/ESP32-S2/ESP32-S3/ESP32-C3/ESP32-C6 A minimal table to compare the families of Espressif's processors. -
fabianoriccardi renamed this gist
Apr 10, 2021 . 1 changed file with 3 additions and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,4 +1,6 @@ # Comparison table of ESP8266/ESP32/ESP32-S2/ESP32-S3/ESP32-C3/ESP32-C6 A minimal table to compare the families of Espressif's processors. **work in progress** -
fabianoriccardi revised this gist
Apr 10, 2021 . 1 changed file with 30 additions and 28 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -2,34 +2,36 @@ A minimal table to compare the Espressif processors. **work in progress** | | ESP8266 | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C6 | |--------------------------- |-------------------------------------- |---------------------------------- |--------------------------------------------- |------------------------------------------------------ |--------------------------------------------- |--------------------------------------------- | | Announcement Date | 2014, August | 2016, September | 2019, September | 2020, December | 2020, November | 2021, April | | Main processor | Tensilica L106 32-bit (up to 160MHz) | | Tensilica Xtensa 32-bit LX7 (up to 240MHz) | Tensilica Xtensa 32-bit LX7 dual core (up to 240MHz) | RISC-V 32-bit (up to 160MHz) | RISC-V 32-bit (up to 160MHz) | | SRAM | 32 KB instruction + 80 KB user data | | 320KB | 512KB | 400KB | 400KB | | ROM | X | 448KB | 128KB | ? | 384KB | 384KB | | JTAG | X | | ✓ | ? | ✓ | ✓ | | Cache | 32 KB instruction | | 8/16KB (configurable) | ? | 16KB | ? | | WiFi | WiFi 4 | | WiFi 4 | WiFi 4 | WiFi 4 | WiFi 6 | | Bluetooth | X | | X | ? | BLE 5.0 | BLE 5.0 | | RTC memory | 768 B | | 16KB | ? | 8KB | ? | | PMU | ✓ | ✓ | ✓ | ? | ✓ | ? | | ULP coprocessor | X | | ULP-RISC-V | ? | X | ? | | Cryptographic Accelerator | X | | SHA, RSA, AES, RNG, HMAC, Digital Signature | SHA, RSA, AES, RNG, HMAC, Digital Signature | SHA, RSA, AES, RNG, HMAC, Digital Signature | SHA, RSA, AES, RNG, HMAC, Digital Signature | | Secure boot | X | | ✓ | ✓ | ✓ | ✓ | | Flash encryption | X | | XTS-AES-128/256 | ✓ | XTS-AES-128 | XTS-AES-128 | | SPI | | | 4 | ? | 3 | ? | | I2C | | | 2 | ? | 1 | ? | | I2S | | | 1 | ? | 1 | ? | | UART | | | 2 | ? | 2 | ? | | GPIO | | | 43 | 44 | 22 | 22 | | LED PWM | | | 8 channels | ? | 6 channels | ? | | GDMA | | | ✓ | ? | 6 channels | ? | | USB | | | USB OTG 1.1 | ? | Serial/JTAG | ? | | TWAI | | | 1 | ? | 1 | ? | | ADC | 1x 10-bit SAR | 2x 12-bit SAR, up to 18 channels | 2x 13-bit SAR, up to 20 channels | ? | 2x 12-bit SAR, up to 6 channels | ? | | RMT | 1x transmission + 1x reception | | 4x transmission/reception | ? | 2x transmission + 2x reception | ? | | Timer | | | 4x 64-bit | ? | 2x 54-bit + 1x 52-bit | ? | | Temperature Sensor | | | ✓ | ? | ✓ | ? | For more details about specific models and variants, look at [Espressif Product Selector](https://products.espressif.com/). Contributions and suggestions are welcomed! -
fabianoriccardi revised this gist
Apr 10, 2021 . 1 changed file with 3 additions and 3 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -30,6 +30,6 @@ A minimal table to compare the Espressif processors. | RTM | 4x transmission/reception | ? | 2x transmission + 2x reception | ? | | Timer | 4x 64-bit | ? | 2x 54-bit + 1x 52-bit | ? | | Temperature Sensor | ✓ | ? | ✓ | ? | Contributions and suggestions are welcomed! -
fabianoriccardi renamed this gist
Apr 10, 2021 . 1 changed file with 0 additions and 0 deletions.There are no files selected for viewing
File renamed without changes. -
fabianoriccardi created this gist
Apr 10, 2021 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,35 @@ A minimal table to compare the Espressif processors. **work in progress** | | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C6 | |--------------------------- |--------------------------------------------- |--------------------------------------------- |--------------------------------------------- |--------------------------------------------- | | Main CPU Architecture | Xtensa 32-bit LX7 (up to 240MHz) | Xtensa 32-bit LX7 dual core (up to 240MHz) | RISC-V 32-bit (up to 160MHz) | RISC-V 32-bit (up to 160MHz) | | SRAM | 320KB | 512KB | 400KB | 400KB | | ROM | 128KB | ? | 384KB | 384KB | | JTAG | ✓ | ? | ✓ | ✓ | | Cache | 8/16KB (configurable) | ? | 16KB | ? | | WiFi | WiFi 4 | WiFi 4 | WiFi 4 | WiFi 6 | | Bluetooth | X | ? | BLE 5.0 | BLE 5.0 | | RTC memory | 16KB | ? | 8KB | ? | | PMU | ✓ | ? | ✓ | ? | | ULP coprocessor | ULP-RISC-V | ? | X | ? | | Cryptographic Accelerator | SHA, RSA, AES, RNG, HMAC, Digital Signature | SHA, RSA, AES, RNG, HMAC, Digital Signature | SHA, RSA, AES, RNG, HMAC, Digital Signature | SHA, RSA, AES, RNG, HMAC, Digital Signature | | Secure boot | ✓ | ✓ | ✓ | ✓ | | Flash encryption | XTS-AES-128/256 | ✓ | XTS-AES-128 | XTS-AES-128 | | SPI | 4 | ? | 3 | ? | | I2C | 2 | ? | 1 | ? | | I2S | 1 | ? | 1 | ? | | UART | 2 | ? | 2 | ? | | GPIO | 43 | 44 | 22 | 22 | | LED PWM | 8 channels | ? | 6 channels | ? | | GDMA | ✓ | ? | 6 channels | ? | | USB | USB OTG 1.1 | ? | Serial/JTAG | ? | | TWAI | 1 | ? | 1 | ? | | ADC | 2x 13-bit SAR, up to 20 channels | ? | 2x 12-bit SAR, up to 6 channels | ? | | RTM | 4x transmission/reception | ? | 2x transmission + 2x reception | ? | | Timer | 4x 64-bit | ? | 2x 54-bit + 1x 52-bit | ? | | Temperature Sensor | ✓ | ? | ✓ | ? | | | | | | | | | | | | | | | | | | |