ESP32-C3 giá rẻ thách thức thay thế ESP8266, ESP32-S2, ESP32?

ESP32-C3 là dòng SoC Wi-Fi – BLE được Espressif ra mắt vào cuối năm 2020 với giá thành phù hợp cũng như nhiều tính năng phù hợp cho các ứng  dụng IoT

 

ESP32-C3

ESP32-S2

ESP32

ESP8266

Release Date

2020

2019

2016

2014

CPU

RISC-V 32-bit Single-Core @ 160 MHz

Tensilica Xtensa LX7
32 bit Single-Core @ 240Mhz

Tensilica Xtensa LX6
32 bit Dual-Core @ 160 / 240Mhz

Tensilica LX106
32 bit @ 80 MHz (up to 160 MHz)

Coprocessor

 

ULP (RISC-V)

ULP

 

RAM

400 KB

320 KB

520 KB

160 KB (36 KB available to user)

UART

2

2

3

2

SPI

3

4 (OSPI)

4

2

Wi-Fi

802.11b/g/n

802.11b/g/n

802.11b/g/n

802.11b/g/n

Bluetooth®

 5.0 + BLE

 

4.2 BR/EDR + BLE

 

USB Host

 

Yes

 

 

Ethernet (LAN)

 

 

10/100Mbps

 

RTC Memory

8kB

16kB

16kB

 

External SPIRAM

No

Up to 128MB

Up to 16MB

Up to 16 MB

External Flash

 

Up to 1GB

 

 

CAN

Yes

 

2.0B

 

GPIO

Up to 22

43

Up to 32

Up to 17

Temperature Sensor

 

 

Yes

 

Touch sensor

 

14

10

 

I2C

Up to 1

Up to 2

Up to 2

Up to 1

I2S

1

1

2

2

ADC

2 x 12-bit SAR ADCs, up to 6 channels

12-bit SAR ADC up to 20 channels

12-bit SAR ADC up to 18 channels

10-bit 1 channel

DAC

 

8-bit up to 2 channels

8-bit up to 2 channels

 

PWM

Up to 6

8

Up to 8

Only software by timer

ADMMC

 

 

Yes

 

RMT (Remote Control)

 

Yes

Yes

 

LCD Interface

 

Yes

 

 

Camera Interface

 

Yes

 

 

Secure flash

4096-bit OTP

4096-bit OTP secure boot

1024-bit OTP

 

Cryptography support

AES-128/256, RSA Accelerator, SHA Accelerator, Random Number Generator (RNG), HMAC

AES-128/192/256, SHA-2, RSA, RNG, HMAC, Digital Signature

AES, SHA-2, RSA, ECC, RNG

 

 

1. Wi-Fi SoC ESP8266

 

Đây là dòng Wi-Fi SoC của ESPRESSIF được phát hành năm 2014. Với ưu điểm thời điểm ra mắt là hỗ trợ bộ nhớ flash lớn (lên tới 16MB), RAM nhiều (160kB) đồng thời tốc độ CPU cao và giá thành tốt. Vì vậy dòng SoC này nhanh chóng được nhiều người sử dụng trong các ứng dụng IoT cũng như điều khiển cơ bản.

Tuy nhiên dòng ESP8266 này đã có một số nhược điểm khi các ứng dụng IoT đòi hỏi nhiều hơn:

  • Số chân GPIO hạn chế: Mặc dù được giới thiệu có nhiều chân (17 GPIO) tuy nhiên, nhiều chân đã bị sử dụng bởi SPI flash, nên số chân dùng được bị hạn chế

  • ADC hạn chế: Bộ ADC chỉ sử dụng được 1 chân, đồng thời chỉ 10 bit và tốc độ hạn chế, đây là nhược điểm mà ESP8266 không thể sử dụng trong các ứng dụng đo lường.

  • PWM: dòng MCU này không hỗ trợ hardware PWM, vì vậy cần dùng timer tạo software PWM với rất nhiều hạn chế.

  • UART: Mặc dù được quảng cáo là có thể sử dụng 2 bộ UART, tuy nhiên 1 bộ UART đã được sử dụng để flash firmware. Bộ còn lại chỉ được sử dụng chân Tx. Vì vậy khó sử dụng UART để giao tiếp với các module khác cũng như debug.

  • RAM: Mặc dù hỗ trợ RAM tới 160kB. Tuy nhiên với các ứng dụng IoT cần bảo mật cao sử dụng TLS/SSL cần khá nhiều RAM thì ESP8266 sẽ khó phát triển.

  • Tốc độ xử lý khi sử dụng các kết nối TLS/SSL: Với ứng dụng IoT giao tiếp MQTTS, HTTPS thì việc kết nối của ESP8266 rất chậm vì phải sử dụng các thuật toán ECC, RSA bằng software.

  • Bảo mật code: Đây cũng là một trong những nhược điểm mà các dòng MCU đều đã hỗ trợ.

2. Wi-Fi – BLE SoC ESP32-S2/ESP32

Đây là dòng SoC Wi-Fi BLE được ESPRESSIF ra mắt vào năm 2016. Với mục đích khắc phục những nhược điểm tồn tại trên dòng ESP8266. Với số chân nhiều hơn, ADC, PWM, UART mạnh hơn. Bên cạnh đó RAM cũng đã được nâng cấp nhiều hơn, dư dả cho các ứng dụng IoT đòi hỏi phức tạp hơn. Và một thứ quan trọng nhất yêu cầu cho các ứng dụng IoT cần bảo mật chính là hỗ trợ các thuật toán mã hoá như AES-128/192/256, SHA-2, RSA, HMAC, làm tăng tính đơn giản, bảo mật cũng như tốc độ phát triển.

Đồng thời dòng SoC này cũng hỗ trợ BLE, tăng được các ứng dụng hỗ trợ IoT. BLE cũng được sử dụng như 1 giao thức để provision thông tin cho thiết bị (register).

Có thể nói đây là dòng SoC Wi-Fi lý tưởng cho các ứng dụng IoT với tốc độ tốt, khả năng xử lý cao. Với những ứng dụng không cần nhiều tài nguyên như GPIO, ADC, PWM, … thì việc cân đối giữa hiệu năng và giá thành là rất cần thiết.

3. Wi-Fi – BLE SoC ESP32-C3

Đây là dòng SoC Wi-Fi BLE mới nhất hiện nay của ESPRESSIF, được ra mắt vào cuối năm 2020. ESP32-C3 là sử dụng CPU RISC-V (open source – miễn phí) cộng đồng bắt đầu lớn mạnh. Đồng thời với RF hỗ trợ BLE 5 đây là điểm cộng khi so sánh với ESP32/ESP32-S2.

Dòng ESP32-C3 được xem là dòng low cost (giá rẻ) của ESPRESSIF tuy nhiên đây có thể được xem là dòng SoC phổ biến trong thời gian tới với những ưu điểm sau:

  • Ngoại vi hỗ trợ mạnh: Bộ ADC, UART, I2C, SPI, … linh động, có thể mapping tới bất kì GPIO nào. Đồng thời số chân GPIO cũng nhiều hơn ESP8266 phù hợp với các ứng dụng cần nhiều GPIO.

  • Hỗ trợ BLE 5.0 long range: Đây là một trong những điểm cộng, vì nó có thể dùng trong các ứng dụng kết nối BLE cần khoảng cách xa (thu thập dữ liệu sensor) với chi phí thấp.

  • Hỗ trợ thuật mã hoá phần cứng (cho TLS/SSL): AES-128/AES-256 (FIPS PUB 197), ECB/CBC/OFB/CFB/CTR (NIST SP 800-38A), SHA1/SHA224/SHA256 (FIPS PUB 180-4), RSA3072, and ECC. Đây là một trong những thuật toán cơ bản cho kết nối MQTTS, HTTPS cũng như giao tiếp peer to peer.

  • Bộ nhớ RAM phù hợp cho các ứng dụng IoT

Qua so sánh cũng như phân tính, ta thấy ESP32-C3 là một trong những dòng SoC Wi-Fi BLE phù hợp cho các ứng dụng IoT, cũng như là dòng MCU thay thế cho các dòng MCU có giá quá cao như hiện nay.

4. Tài liệu

ESP32 C3F Specs

ESP32-C3S Specs

ESP32 C3 Docs (AI Thinker)

5. Link mua hàng:

ESP8266

ESP8266 LUA NODEMCU

Module ESP12F

ESP32/ESP32S

Module ESP32S

ESP32 Ethernet LAN8720A Module

ESP32 NodeMCU

Module ESP32 WROOM 32

ESP32-C3

Module ESP32-C3S: Đây là dòng Module tương thích Pin với ESP32-WROOM32 và ESP32S

Module ESP32-C3F: Đây là dòng Module tương thích Pin với ESP12E/ESP12F

KIT PHÁT TRIỂN WIFI BLUETOOTH ESP32-C3U

KIT PHÁT TRIỂN WIFI BLUETOOTH ESP32-C3S