Bỏ qua, đến nội dung chính
Bài viếtHardwareMới

ESP32 Beginner Guide – P1: ESP32 là gì? Chọn board nào?

Phân biệt chip, module và development board ESP32, rồi chọn ESP32-C3, ESP32-S3 hay ESP32 DevKit phù hợp với dự án đầu tiên mà không mua thừa phần cứng.

Chia sẻ

LinkedInFacebookX
ESP32 development boards prepared for a beginner project beside a MacBook Pro on a real electronics workbench

Nếu mới tìm hiểu ESP32, bạn rất dễ gặp một danh sách tên dài: ESP32, ESP32-C3, ESP32-S3, WROOM, DevKitC, SuperMini, XIAO… Chúng trông khá giống nhau trên ảnh bán hàng nhưng không phải cùng một thứ. Mình từng mua board chỉ vì thấy nhiều GPIO, sau đó mới phát hiện nó không có PSRAM, không hỗ trợ Bluetooth Classic và pinout khác hẳn tutorial đang theo.

Đây là bài đầu tiên trong ESP32 Beginner Guide, series đi từ chọn board đến GPIO, cảm biến, Wi-Fi, BLE và một dự án hoàn chỉnh. Mục tiêu của P1 khá đơn giản: sau khi đọc xong, bạn biết chính xác mình đang mua chip, module hay development board, và chọn được board đầu tiên mà không cần học thuộc toàn bộ họ ESP32.

ESP32 không phải tên của một board duy nhất

Ba development board ESP32 đặt cạnh MacBook Pro và bộ linh kiện cơ bản trên bàn làm việc điện tử.

Bạn không cần board mạnh nhất để bắt đầu; board có tài liệu rõ và đúng với dự án sẽ giúp học nhanh hơn.

ESP32 ban đầu là tên một dòng SoC của Espressif, nhưng trong cách nói hằng ngày nó còn được dùng cho cả một họ chip và hàng trăm board phát triển. Điểm chung dễ nhận ra nhất là vi điều khiển có kết nối không dây, đủ GPIO để đọc cảm biến hoặc điều khiển thiết bị, và có hệ sinh thái Arduino/ESP-IDF lớn.

Điểm khác nhau mới là phần quyết định của dự án:

  • ESP32 đời đầu thường có hai core Xtensa, Wi-Fi 2,4 GHz, Bluetooth Classic và BLE 4.2.
  • ESP32-C3 dùng một core RISC-V, Wi-Fi 2,4 GHz và BLE 5; phù hợp với node cảm biến và thiết bị IoT gọn.
  • ESP32-S3 dùng hai core Xtensa LX7, có BLE 5, nhiều GPIO hơn, hỗ trợ USB OTG và các module có PSRAM; hợp với màn hình, camera, audio hoặc TinyML nhẹ.
  • ESP32-C6 đáng xem xét khi dự án thực sự cần Wi-Fi 6, Thread hoặc Zigbee. Với bài học GPIO/Wi-Fi cơ bản, không bắt buộc phải là board đầu tiên.

Các dòng này không phải là bản “lớn, vừa, nhỏ” của cùng một chip. Kiến trúc CPU, Bluetooth, USB, peripheral và pinout có thể khác. Code Arduino cơ bản thường chuyển được, nhưng binary, cấu hình board và số GPIO thì không thể dùng lẫn.

Chip, module và development board khác nhau thế nào?

Chip ESP32, module có shield kim loại và development board USB được đặt cạnh nhau để so sánh.

Chip, module và development board là ba cấp phần cứng khác nhau, dù cửa hàng thường gọi chung là ESP32.

Đây là chỗ mình muốn làm rõ nhất ngay từ đầu:

Thành phầnBạn sẽ thấy gìDùng khi nào
Chip/SoCIC vuông nhỏ, không có USB hay ăng-ten hoàn chỉnhThiết kế phần cứng chuyên sâu và sản xuất số lượng lớn
ModuleChip, flash, crystal và mạch RF nằm dưới shield kim loại; thường có antenna PCBHàn lên PCB sản phẩm riêng
Development board/kitModule cộng thêm USB, regulator, nút BOOT/RESET và hàng chân cắmHọc, thử code, cắm breadboard và làm prototype

Ví dụ, ESP32-S3 là dòng chip; ESP32-S3-WROOM-1-N8R8 là module có 8 MB flash và 8 MB PSRAM; ESP32-S3-DevKitC-1-N8R8 là development board mang module đó. Còn ESP32-C3 SuperMini là tên một kiểu board nhỏ do nhiều nhà sản xuất làm, không phải module chính thức của Espressif.

Nếu mới bắt đầu, gần như chắc chắn bạn cần development board đã có cổng USB và chân header, không phải chip rời hay module WROOM chưa gắn lên PCB.

Bốn lựa chọn thực tế cho board đầu tiên

1. ESP32-C3-DevKitM-1: lựa chọn gọn cho sensor và IoT

ESP32-C3-DevKitM-1 là board entry-level chính thức dựa trên module ESP32-C3-MINI-1. Nó có Wi-Fi, BLE 5, LED RGB và đưa các GPIO khả dụng ra hai hàng header. Với Blink, nút nhấn, I2C, MQTT, web server nhỏ hoặc cảm biến chạy bằng pin, C3 đã đủ dùng.

Điểm mình thích là kiến trúc tương đối gọn: một core RISC-V, ít GPIO hơn S3 nhưng cũng ít thứ khiến người mới phân tâm. Điểm cần nhớ là C3 không có Bluetooth Classic. Nếu tutorial dùng BluetoothSerial để giả lập cổng serial Bluetooth, đừng mặc định nó sẽ chạy trên C3.

Nếu bạn mua C3 SuperMini vì kích thước và giá hấp dẫn, hãy tải pinout/schematic từ đúng người bán. Các revision có thể khác LED, cổng USB, regulator hoặc cách ghi chân. Nó tốt khi bạn đã biết mình cần board nhỏ; để học từ đầu, DevKitM-1 có tài liệu rõ ràng và dễ đo hơn.

2. ESP32-DevKitC: dễ theo tutorial cũ nhất

ESP32-DevKitC V4 mang module ESP32-WROOM hoặc WROVER và có USB-to-UART, BOOT, EN cùng nhiều GPIO. Đây là kiểu board xuất hiện trong rất nhiều tutorial ESP32 đời đầu. Nếu khóa học của bạn ghi rõ “ESP32 DevKit V1”, GPIO23, GPIO22 hoặc BluetoothSerial, chọn một board ESP32 classic tương thích giúp giảm số thứ phải dịch lại.

Đổi lại, board thường rộng, dùng Micro-USB trên bản chính thức và không có USB OTG đa năng như S3. Tên “DevKit V1” trên các sàn cũng khá mơ hồ: board clone 30 chân và 38 chân có pinout khác nhau. Hãy nhìn ảnh hai mặt bo mạch và đếm chân trước khi đặt hàng.

3. ESP32-S3-DevKitC-1 N8R8: dư địa tốt cho dự án lớn hơn

Nếu bạn đã biết mình muốn gắn màn hình màu, camera, microphone, phát GIF hoặc thử TinyML, mình chọn ESP32-S3-DevKitC-1-N8R8. Ký hiệu N8R8 cho biết variant chính thức có 8 MB flash và 8 MB PSRAM. PSRAM là phần rất đáng tiền khi cần framebuffer hoặc buffer lớn.

S3 có BLE 5 nhưng không có Bluetooth Classic. Board DevKitC-1 còn có cả đường USB-to-UART và USB native; tiện cho debug, nhưng người mới cần nhìn đúng nhãn cổng trước khi cắm. Một số variant flash/PSRAM Octal cũng dùng nội bộ GPIO35–37, vì vậy đừng copy pinout của variant khác.

Nếu nhu cầu chỉ là đọc nhiệt độ rồi gửi MQTT, S3 vẫn làm được, nhưng bạn đang trả thêm cho tài nguyên chưa dùng. Nếu roadmap có giao diện hoặc camera, mua S3 từ đầu sẽ tránh đổi board giữa dự án. Bạn có thể xem bài so sánh ESP32-C3 và ESP32-S3 khi cần đi sâu vào RAM, USB, I2S và màn hình.

4. XIAO ESP32-C3/S3: nhỏ đẹp nhưng ít chỗ để thử sai

XIAO là development board nhỏ, không phải module. Tài liệu và file thiết kế của Seeed khá rõ, USB-C tiện, nhưng kích thước nhỏ đồng nghĩa với việc ít chân được đưa ra ngoài và thao tác đo khó hơn so với DevKit lớn. XIAO hợp với wearable, thiết bị dùng pin hoặc prototype cần nhét vào vỏ nhỏ; không phải lựa chọn mình ưu tiên khi bạn vẫn đang học cách đọc pinout và cắm breadboard.

Bảng chọn nhanh

Các board ESP32 DevKitC, ESP32-C3 và ESP32-S3 được xếp cạnh nhau trên thảm chống tĩnh điện.

Kích thước giống nhau không có nghĩa pinout, Bluetooth, USB và bộ nhớ giống nhau.

Bạn muốn làm gì?Board nên bắt đầuLý do chínhCần lưu ý
Học GPIO, sensor, Wi-Fi và BLEESP32-C3-DevKitM-1Gọn, tài liệu chính thức, đủ cho đa số bài cơ bảnKhông có Bluetooth Classic
Theo tutorial ESP32 cũESP32-DevKitC/WROOMTương thích ví dụ và pinout phổ biến đời đầuNhiều clone khác layout
Màn hình, camera, audio, PSRAMESP32-S3-DevKitC-1 N8R8Nhiều GPIO, USB native, 8 MB PSRAMChọn đúng variant và cổng USB
Sản phẩm rất nhỏXIAO ESP32-C3 hoặc S3USB-C và kích thước gọnÍt GPIO, khó đo/cắm thử hơn
Matter, Thread hoặc ZigbeeESP32-C6 DevKitCó radio 802.15.4 và Wi-Fi 6Chỉ nên chọn khi dự án thật sự cần

Nếu chưa có dự án cụ thể, lựa chọn mặc định của mình là ESP32-C3-DevKitM-1 chính hãng hoặc board từ nhà sản xuất có schematic rõ ràng. Nếu ngân sách cho phép và bạn muốn dùng cùng một board cho màn hình/camera, chọn ESP32-S3-DevKitC-1 N8R8.

Đừng mua chỉ dựa trên dòng tiêu đề của shop

Người dùng kiểm tra tên module và revision trên board ESP32 bằng kính lúp cạnh trang schematic trên MacBook Pro.

Dòng in trên shield module và schematic đúng revision đáng tin hơn tiêu đề ngắn trên trang bán hàng.

Trước khi bấm mua, mình kiểm tra tám điểm này:

  1. Tên chip chính xác: ESP32, C3, S3 hay C6.
  2. Tên module: WROOM/MINI và mã flash/PSRAM như N8R8.
  3. Tên board và revision: DevKitC-1 v1.0/v1.1, 30 hay 38 chân.
  4. Schematic và pinout: phải đúng board, không chỉ đúng chip.
  5. Cổng USB: Micro-USB hay USB-C; USB-to-UART hay USB native.
  6. Antenna: PCB antenna cần vùng trống; bản U thường cần antenna ngoài.
  7. Header: Đã hàn sẵn hay bạn phải tự hàn.
  8. Phụ kiện onboard: LED RGB, camera connector, battery charger hoặc sensor có thể chiếm GPIO.

Hai board cùng ghi “ESP32-S3” vẫn có thể khác về flash, PSRAM, LED pin và số cổng USB. Khi Arduino IDE có nhiều lựa chọn gần giống nhau, dòng in trên shield module và schematic đáng tin hơn tiêu đề listing.

Bộ đồ tối thiểu để đi cùng series

Bạn chưa cần mua một hộp 40 sensor. Một bộ nhỏ nhưng dễ debug hữu ích hơn:

  • Một ESP32-C3-DevKitM-1 hoặc ESP32-S3-DevKitC-1 N8R8.
  • Cáp USB có data đúng đầu cắm của board.
  • Breadboard và dây Dupont male–male, male–female.
  • LED rời, điện trở 220–1.000 Ω và một nút nhấn.
  • Một sensor I2C phổ biến như BME280 hoặc SHT30 từ nguồn đáng tin cậy.
  • Multimeter cơ bản.

Trước khi cắm cảm biến, hãy nối board với máy tính, đọc tên chip từ log nạp và lưu lại link pinout đúng revision. Công cụ ESP32 Pinout Diagram & Comparison Guide cũng giúp bạn xem từng development kit thay vì áp dụng một sơ đồ chung cho mọi board.

Kết luận: chọn theo dự án, không chọn theo board “mạnh nhất”

Board tốt nhất cho người mới không nhất thiết là board có nhiều RAM hay GPIO nhất. Nó là board có tài liệu rõ, cáp dễ tìm, pinout đúng với bài bạn đang học và đủ tài nguyên cho dự án trong vài tháng tới.

Nếu vẫn phân vân, hãy bắt đầu bằng C3-DevKitM-1 cho sensor/Wi-Fi/BLE hoặc S3-DevKitC-1 N8R8 khi đã có màn hình/camera trong kế hoạch. ESP32 Classic vẫn rất hữu ích để theo tutorial cũ và Bluetooth Classic. Còn SuperMini/XIAO nên là lựa chọn có chủ đích về kích thước, không chỉ vì chúng trông gọn hơn.

Trong P2, mình sẽ đi từ một board còn nguyên trong túi chống tĩnh điện đến lần nạp Blink đầu tiên: cài Arduino IDE, chọn đúng board/port, kiểm tra cáp data và đọc Serial Monitor.

Tham khảo

Chia sẻ

LinkedInFacebookX

Tiếp tục khám phá

Đọc tiếp

Bài viết liên quan

Xem thêm trong Bài viết

Nastrotek sử dụng cookie để phân tích truy cập và cá nhân hóa quảng cáo, giúp hiểu cách website được sử dụng. Bạn có thể chấp nhận hoặc từ chối các cookie không thiết yếu. Chính sách bảo mật