ESP32 là một series các vi điều khiển trên một vi mạch giá rẻ, năng lượng thấp có hỗ trợ WiFi và dual-mode Bluetooth (tạm dịch: Bluetooth chế độ kép). Dòng ESP32 sử dụng bộ vi xử lý Tensilica Xtensa LX6 ở cả hai biến thể lõi kép và lõi đơn, và bao gồm các công tắc antenna tích hợp, RF balun, bộ khuếch đại công suất, bộ khuếch đại thu nhiễu thấp, bộ lọc và module quản lý năng lượng. ESP32 được chế tạo và phát triển bởi Espressif Systems, một công ty Trung Quốc có trụ sở tại Thượng Hải, và được sản xuất bởi TSMC bằng cách sử dụng công nghệ 40 nm.[2][3] ESP32 là sản phẩm kế thừa từ vi điều khiển ESP8266.
Tính năng
Sơ đồ khối chức năng của ESP32.
Các tính năng của ESP32 bao gồm:
Bộ xử lý:
CPU: Bộ vi xử lý Xtensa lõi kép (hoặc lõi đơn) 32-bit LX6, hoạt động ở tần số 240 MHz (160 MHz cho ESP32-S0WD và ESP32-U4WDH)[4] và hoạt động ở tối đa 600 MIPS (200 MIPS với ESP32-S0WD/ESP32-U4WDH)[5]
Bộ đồng xử lý (co-processor) công suất cực thấp (Ultra low power, viết tắt: ULP) hỗ trợ việc đọc ADC và các ngoại vi khi bộ xử lý chính (main processor) vào chế độ deep sleep.[6]
Hệ thống xung nhịp:[7] CPU Clock, RTC Clock và Audio PLL Clock
3 SPI (SPI, HSPI và VSPI) hoạt động ở cả 2 chế độ master/slave.[9] Module ESP32 hỗ trợ 4 ngoại vi SPI với SPI0 và SPI1 kết nối đến bộ nhớ flash của ESP32 còn SPI2 và SPI3 tương ứng với HSPI và VSPI.[10] Các GPIO đều có thể được dùng để triển khai HSPI và VSPI.[11]
2 I²S
2 I²C, hoạt động được ở cả chế độ master và slave, với chế độ Standard mode (100 Kbit/s) và Fast mode (400 Kbit/s). Hỗ trợ 2 chế độ định địa chỉ là 7-bit và 10-bit.[12] Các GPIO đều có thể được dùng để triển khai I²C.[13]
3 UART (UART0, UART1, UART2) với tốc độ lên đến 5 Mbps[12]
Bộ tiền khuếch đại analog công suất cực thấp (Ultra low power analog pre-amplifier)
Bảo mật:
Hỗ trợ tất cả các tính năng bảo mật chuẩn IEEE 802.11, bao gồm WFA, WPA/WPA2 và WAPI.
Secure boot (tạm dịch: khởi động an toàn)
Mã hóa flash
1024-bit OTP, lên đến 768-bit cho khách hàng
Tăng tốc mã hóa phần cứng: AES, SHA-2, RSA, elliptic curve cryptography (ECC, tạm dịch: mật mã đường cong ellip), random number generator (viết tắt: RNG, tạm dịch: trình tạo số ngẫu nhiên)
Quản lý năng lượng:
Hỗ trợ 5 chế độ hoạt động với mức tiêu thụ năng lượng khác nhau: Active, Modem-sleep, Light-sleep, Deep-sleep và Hibernation[14]
Bộ ổn áp nội với điện áp rơi thấp (internal low-dropout regulator)
Individual power domain (tạm dịch: Miền nguồn riêng) cho RTC
Trở lại hoạt động từ ngắt GPIO, timer, đo ADC, ngắt với cảm ứng điện dung
ESP32 được đặt trong các gói QFN (quad-flat no-leads, tạm dịch: các gói phẳng bốn góc, không có dây dẫn) có kích thước khác nhau với 49 pad. Cụ thể, 48 pad kết nối dọc theo hai bên và một pad nhiệt lớn (nối đất) ở phía dưới.
Chip
Hệ thống một vi mạch ESP32 được đóng gói trong cả kích thước 6 mm × 6 mm và 5 mm × 5 mm gói QFN.
Chip SoC được phát hành trước cho để thử nghiệm bản beta; hiện không còn trên thị trường nữa
ESP32-D0WDQ6
2
0
Chip sản xuất ban đầu của dòng ESP32 được phát hành.
ESP32-D0WD
2
0
5 mm × 5 mm
Biến thể gói vật lý nhỏ hơn tương tự như ESP32-D0WDQ6.
ESP32‑D2WD
2
2
Biến thể với bộ nhớ flash 2 MiB (16 Mibit).
ESP32-U4WDH
1
4
Bộ xử lý lõi đơn và biến thể với bộ nhớ flash 4 MiB (32 Mibit).
ESP32‑S0WD
1
0
Biến thể bộ xử lý lõi đơn.
Vào năm 2020, chip ESP32-D0WDQ6 và ESP32-D0WD cũng có phiên bản V3 (ESP32 ECO V3), với một số lỗi đã được sửa và có thêm các cải tiến so với các phiên bản trước.
Module
Module hệ thống đóng gói ESP32-PICO-D4 bao gồm chip silicon ESP32, bộ dao động thạch anh, chip nhớ flash, tụ lọc và RF matching link, tất cả đều nằm trong một gói QFN có kích thước 7 mm × 7 mm.
Bao gồm chip ESP32, bộ dao động thạch anh, bộ nhớ flash, tụ lọc và RF matching link.[16]
Board mạch in
Module dạng chip dán
Module bảng mạch intrên bề mặt ESP32 chứa trực tiếp SoC ESP32 và được thiết kế để có thể dễ dàng tích hợp vào các bảng mạch khác. Các thiết kế antenna F đảo ngược có chiều được sử dụng cho các antenna bằng đường mạch trên PCB trên các module được liệt kê bên dưới. Ngoài bộ nhớ flash, một số module bao gồm RAM giả (pseudostatic RAM, viết tắt pSRAM).
Bị gián đoạn. Được phân phối có giới hạn, đây là module được bởi Espressif cho việc kiểm thử phiên bản beta. ESP-WROOM-03 sử dụng ESP31B, chip kiểm thử beta cho series ESP32.[17][18][19][20][21] FCC Part 15.247 tested (FCC ID: 2AC7Z-ESP32).[22]
ESP32-WROOM-32
Trên đường mạch PCB
4
0
Board ESP32 đầu tiên được công bố trên thị trường của Espressif.[23] Kiểm tra FCC Part 15.247 (FCC ID: 2AC7Z-ESPWROOM32).[24] Dựa trên ESP32-D0WDQ6 chip. Tên ban đầu "ESP-WROOM-32".
ESP32-WROOM-32D
Trên đường mạch PCB
4
0
Bản sửa đổi module ESP-WROOM-32 sử dụng chip ESP32-D0WD thay cho chip ESP32-D0WDQ6.[25] Ban đầu được đặt tên là "ESP-WROOM-32D".
ESP32-SOLO-1
Trên đường mạch PCB
4
0
Giống với module ESP32-WROOM-32D, nhưng sử dụng chip lõi đơn ESP32-S0WD thay vì chip lõi kép ESP32-D0WD.
ESP32-WROOM-32U
U.FL socket
4
0
Module thay thế cho ESP-WROOM-32D, có đầu nối U.FL cho antenna ngoại thay cho antenna trên đường mạch PCB.
ESP32-WROVER
Trên đường mạch PCB
4
4
ESP32 module board với 4 MiB pSRAM. Kiểm tra FCC part 15.247 (FCC ID 2AC7Z-ESP32WROVER). Sử dụng bộ dao động thạch anh 40 MHz. Không bao gồm U.FL connector. Dựa trên chip ESP32-D0WDQ6. Từ tháng 6 2018, các module mới được nâng cấp lên 8 MiB pSRAM.
ESP32-WROVER-I
U.FL socket, trên đường mạch PCB
4
4
Biến thể của module ESP32-WROVER được cấu hình để sử dụng đầu cắm tương thích U.FL trên board. Antenna trên đường mạch không được kết nối.
ESP32-WROVER-B
Trên đường mạch PCB
4
8
Một phiên bản sửa đổi của module ESP32-WROVER với 8 MiB pSRAM (thay vì 4 MiB pSRAM), điện áp hoạt động 3.3V (thay vì 1.8V ở phiên bản trước) và sử dụng chip ESP32-D0WD (thay vì ESP32-D0WDQ6). Kiểm định với FCC part 15.247 (FCC ID 2AC7Z-ESP32WROVERB). Module không bao gồm U.FL connector. Người dùng có thể tùy chọn kích thước bộ nhớ 8 MiB or 16 MiB khi flash chương trình.
ESP32-WROVER-IB
U.FL socket, trên đường mạch PCB
4
8
Biến thể của module ESP32-WROVER-B được cấu hình để sử dụng đầu cắm U.FL trên board. Mặc định, antenna trên đường mạch không được nối.
Ai-Thinker
ESP32-S
Trên đường mạch PCB
4
0
Module của Ai-Thinker tương đương với module ESP-WROOM-32 của Espressif, với cùng hình dáng và các thông số kĩ thuật chung.[26] Module ban đầu được lấy tên "ESP-32S", nhưng module đựợc dự tính ra mắt thị trường lần đầu lại mang tên ESP3212, dù thực tế nó không được ra mắt.
ESP32-A1S
U.FL socket, trên đường mạch PCB
8
4
Bao gồm AC101, một IC audio codec với các chân IO (line, mic,...) được nối tới các chân của board. Module được cung cấp dạng rời hoặc được hàn trên các board audio phát triển tương ứng ("ESP32-Audio-Kit").[27][28][29]
AnalogLamb
ESP-32S-ALB
Trên đường mạch PCB
4
0
Module "nhái" từ module ESP-32S (tương thích footprint ESP-WROOM-32). Lớp phủ mạch màu xanh lá cây.[30]
ALB-WROOM
Trên đường mạch PCB
16
0
Biến thể của ESP-32S-ALB với 16 MiB bộ nhớ flash.
ALB32-WROVER
Trên đường mạch PCB
4
4
Module ESP32 với 4 MiB pSRAM với cùng footprint như module ESP-WROOM-32.[31]
DFRobot
ESP-WROOM-32
Trên đường mạch PCB
4
0
Module giống với ESP-WROOM-32 của Espressif Systems nhưng không được FCC chứng nhận, sử dụng bộ dao động thạch anh 26 MHz và 32 kHz.[32]
eBox & Widora
ESP32-Bit
Ceramic, U.FL socket
4
0
Module có antenna gốm và một U.FL connector cho antenna. Module cũng có footprint khác với các module ESP-WROOM-32/ESP-32S.
Goouuu Tech
ESP-32F
Trên đường mạch PCB
4
0
Module giống ESP-WROOM-32 của Espressif Systems. Đạt chứng nhận FCC, ID 2AM77-ESP-32F.
IntoRobot
W32
Trên đường mạch PCB
4
0
Module giống với Espressif's ESP-WROOM-32, nhưng khác footprint.[33]
W33
Ceramic, U.FL socket
4
0
Có cấu hình antenna khác với module IntoRobot W32.
Phiên bản module 2.0 của OEM WiPy. Hỗ trợ WiFi và Bluetooth. FCC ID 2AJMTWIPY01R.
L01
Không có
8
4
Phiên bản module OEM của LoPy. Hỗ trợ Wi-Fi, Bluetooth và LoRa. ID FCC ID 2AJMTLOPY01R.
L04
Không có
8
4
Phiên bản module OEM của LoPy4. Hỗ trợ Wi-Fi, Bluetooth, LoRa, và Sigfox.
S01
Không có
8
4
Bị gián đoạn, là module phiên bản OEM của SiPy. Hỗ trợ Wi-Fi, Bluetooth, và Sigfox (14 dBm và 22 dBm).
G01
Không có
8
4
OEM module của GPy. Hỗ trợ mạng LTE-CAT M1/NB1, Wi-Fi và Bluetooth.
u-blox
NINA-W131
Không có
2
0
Nằm trong các WiFi module của series u-blox NINA-W13.[37]
NINA-W132
PIFA
2
0
Nằm trong các WiFi module của series u-blox NINA-W13. Hỗ trợ antenna PIFA (Planar Inverted-F Antenna) trên board.
Board phát triển và các loại board khác
Các loại board phát triển và các phiên bản board break-out mở rộng hệ thống nối dây dây điện cùng một số chức năng khác, thường xây dựng dựa trên board module ESP32 khiến chúng dễ dàng sử dụng hơn cho các mục đích phát triển phần mềm (đặc biệt là các thao tác cắm dây trên breadboards).
Nhà cung cấp
Tên
Module ESP32 được sử dụng
Mô tả
Espressif
ESP_Module_Testboard
ESP-WROOM-03
Break-out board bao gồm module ESP-WROOM-03 beta.[17][18]
Board phát triển nhỏ gọn với khe cắm thẻ nhớ SD và giao diện cáp ribbon dành cho kết nối camera.
AnalogLamb
ESP32 Development Board
ESP-32S-ALB or ALB-WROOM
Board phát triển giống với board ESP32-DevKitC của Espressif với chip chuyển đổi USB/UART CP21021. Phiên bản với ESP-32S-ALB dùng bộ nhớ flash 4 MiB, ALB-WROOM module dùng bộ nhớ flash 16 MiB.[44]
Maple ESP32
ESP-32S-ALB
Board phát triển với các kết nối như loại board và hỗ trợ giao diện USB/serial với CP2104.[45]
April Brother
ESPea32
†
Board phát triển với các phần trên board có thể được bỏ đi tùy ý.
ArduCAM
ESP32 UNO
ESP-32S
Board phát triển giống với Arduino Uno dựa trên ESP32 IoT UNO framework, hỗ trợ SPI ArduCAM, chân cắm pin và khe cắm uSD card.[46]
DoIT
ESPduino32
ESP-WROOM-32
Board phát triển giống Arduino Uno, là bản sao từ WeMos D1 R32, với đầy đủ tính năng, tương thích với các shield Arduino và hỗ trợ cổng USB type B. Board cũng hỗ trợ thêm các chân SPI và IO.
EzSBC
ESP32-01 Breakout and Development Board
ESP-WROOM-32
Board phát triển đầy đủ các tính năng với 2 LED 3 màu và tương thích với breadboard.
Gravitech & MakerAsia
Nano32
†
Board phát triển kết hợp trực tiếp với chip ESP32.
HydraBus
HydraESP32
ESP-WROOM-32 or ESP-32S
Shield/board phát triển HydraESP32 HydraBus phiên bản 1.1 Rev1 cho ESP-WROOM-32 hoặc ESP-32S. Shield có thể sử dụng cùng hoặc không cùng với board HydraBus.
Noduino
Quantum
†
Board phát triển theo phong cách Arduino với chip ESP32.
Pycom
WiPy
†
Nền tảng phát triển IoT với MicroPython hỗ trợ Wi-Fi & Bluetooth với phạm vi WiFi 1 km. Phiên bản WiPy 2.0 và 3.0 dùng ESP32.
Board phát triển nhỏ gọn với giao diện FTDI FT231x USB/serial và cổng sạc pin LiPo trên board.
SunDUINO
ESP32 MiniBoard
ESP-WROOM-32
Board phát triển tương thích Espressif ESP32-DevKitC, không hỗ trợ chip chuyển đổi USB-UART trên board.
ESP32 MiniBoard v2
ESP32-Wrover-B/IB
Board phát triển với Silabs CP2102 và pin sạc. Tương thích với Espressif DEVkit.
ESP32 SunDUINO
ESP-WROOM-32 or ESP-32S
Board phát triển theo phong cách Arduino, không hỗ trợ chip chuyển đổi USB-UART trên board.
SwitchDoc Labs
BC24
ESP-WROOM-32
Board ESP32 Breakout với 24 LED SK6812RGBW hỗ trợ Grove Connector cho các sản phẩm prototype, kèm theo các cổng kết nối tương thích với bộ chuyển đổi USB-UART và board ESP32 Adafruit Feather.[47]
Watterott
ESP-WROOM32-Breakout
ESP-WROOM-32
Board breakout tương thích với Espressif ESP32-DevKitC.
Moddable SDK: bao gồm ngôn ngữ JavaScript và hỗ trợ thư viện cho ESP32
Mongoose OS: hệ điều hành dành cho các sản phẩm kết nối trên vi điều khiển, có thể lập trình bằng JavaScript hoặc C. Mongoose OS là một nền tảng được đề xuất bởi Espressif Systems,[55] AWS IoT,[56] và Google Cloud IoT.[57]
mruby cho ESP32
.NET nanoFramework: Lập trình bằng.NET C #, triển khai và gỡ lỗi bằng Visual Studio.
Pymakr IDELưu trữ 2021-04-19 tại Wayback Machine: IDE được thiết kế để sử dụng với các thiết bị Pycom; xử lý các nâng cấp firmware và bao gồm bảng điều khiển MicroPython REPL
Các ứng dụng của ESP32 cho mục đích thương mại và công nghiệp bao gồm:
Sử dụng trong các thiết bị thương mại
Dây đeo tay IoT LED của Alibaba Group, được sử dụng bởi những người tham gia tại cuộc họp thường niên năm 2017 của tập đoàn. Mỗi vòng đeo tay hoạt động như một "pixel", nhận lệnh để điều khiển ánh sáng của đèn LED, từ đó có thể hình thành "màn hình trực tiếp và không dây".[58]
DingTalk's M1, hệ thống theo dõi sinh trắc học.[59]
LIFX Mini, series các đèn LED có thể điều khiển từ xa.[60]
Pium, dùng trong việc tạo hương thơm trong hộ gia đình.[61]
HardKernel's Odroid Go, một bộ thiết bị chơi game cầm tay dựa trên ESP32 được sản xuất để kỷ niệm 10 năm thành lập Odroid.[62]
Play-date, thiết bị chơi game cầm tay do Panic Inc. và Teenage Engineering cùng phát triển.
Sử dụng trong các thiết bị công nghiệp
Module Moduino X series X1 và X2 của TECHBASE là máy tính dựa trên ESP32-WROVER/ESP32-WROVER-B sử dụng trong tự động hóa và giám sát công nghiệp, hỗ trợ đầu vào/đầu ra kỹ thuật số, đầu vào với tín hiệu tương tự (analog) và hỗ trợ nhiều giao diện mạng máy tính khác nhau.[63]
Thiết bị công nghiệp NORVI IIOT với ESP32-WROVER/ESP32-WROVER-B SOC để tự động hóa và giám sát công nghiệp với đầu vào kỹ thuật số, đầu vào tương tự, đầu ra relay và nhiều giao diện truyền thông. Hỗ trợ LoRa và Nb-IoT dưới dạng module mở rộng.[64]
Các chip khác trong họ ESP32
Vào năm 2019, Espressif đã giới thiệu ESP32-S2, một chip mới dựa trên một CPU lõi Xtensa LX7 duy nhất với tốc độ xung nhịp lên đến 240 MHz. Nó có khả năng 64 FLOPS mỗi chu kỳ và bao gồm 320 kB SRAM, 128 kB ROM và 16 kB bộ nhớ RTC.[65]
Vào năm 2020, Espressif đã công bố ESP32-C3, một chip mới dựa trên lõi đơn CPU RISC-V 32-bit với tốc độ xung nhịp lên đến 160 MHz. Nó bao gồm 400 kB SRAM và 384 kB không gian lưu trữ ROM được tích hợp sẵn.[66]
Vào ngày 1 tháng 12 năm 2020, Espressif công bố ESP32-S3, một bộ vi điều khiển mới có CPU Xtensa LX7 lõi kép với tốc độ xung nhịp lên đến 240 MHz, 384 KB RAM và thêm 384 KB SRAM. Lõi LX7 có các phần mở rộng mới cho tập lệnh LX7 nhằm cải thiện hiệu suất của các ứng dụng Trí tuệ nhân tạo trên nền tảng Espressif. Dòng S3 tích hợp bảo mật cấp phần cứng được cải thiện của dòng S2, cũng như các tính năng khác của ESP32-S2 bao gồm hỗ trợ USB On-The-Go và triển khai cảm biến touchpad được cải tiến. ESP32-S3 cũng có tới 44 GPIO có thể lập trình được. Nó cũng mang đến một số tính năng của loạt vi điều khiển ESP32 ban đầu, đáng chú ý nhất là hỗ trợ Bluetooth 5 và Bluetooth LE, bộ điều khiển máy chủ SD/MMC và ngoại vi "World Controller" cung cấp môi trường thực thi hoàn toàn biệt lập cho các ứng dụng quan trọng về bảo mật.[67]
^“ESP-WROOM-32 Datasheet”(PDF). Espressif Systems. 22 tháng 8 năm 2016. Bản gốc(PDF) lưu trữ ngày 13 tháng 9 năm 2016. Truy cập ngày 2 tháng 9 năm 2016.