ESP32 Mana Nak Beli? DevKit V1, WROOM-32E, S3 & C3

Cartoon comparison of three matte-black ESP32 boards - a 30-pin classic board with a silver shield can and one USB-C port, a wide S3 board with two USB-C ports and a black camera on an orange ribbon, and a tiny C3 Super Mini with gold castellated pads

Untuk hampir setiap projek di laman ini, beli ESP-32 (CH340) 30-pin β€” itulah board yang dimaksudkan tutorial apabila mereka menulis “ESP32 DevKit V1”, dan dalam katalog kami itulah yang berport USB Type-C. Ambil WROOM-32E 38-pin kalau anda mahu lebih banyak posisi header, S3 hanya untuk kerja kamera atau AI, dan C3 Super Mini bila board itu memang kena kecil.

Empat listing di sini membawa silikon ESP32 dual-core yang serupa dan berbeza hanya pada cip USB, bentuk port dan panjang header; S3 dan C3 pula menukar cipnya sekali. Masih memilih antara keluarga cip? Perbandingan ESP32 vs ESP8266 vs Arduino UNO kami menjawab soalan itu; semua di bawah ini menganggap anda sudah tetapkan pilihan pada ESP32.

Variant ESP32 mana patut anda beli?

Setiap board di bawah menjalankan kod Arduino yang sama untuk kerja Wi-Fi, GPIO dan sensor biasa. Bezanya cuma terasa pada tiga saat sahaja: masa mencucuk kabel, masa memilih board dalam IDE, dan masa pin atau memori mula kehabisan.

Board Posisi header Port USB dan cipnya Cip di dalamnya Bila patut beli
ESP-32 (CH340) 30 Type-C, CH340 ESP32 dual-core Pilihan lalai β€” setiap tutorial di sini muat padanya
ESP-32 (CP2102) 30 Micro-USB, CP2102 ESP32 dual-core Anda memang sudah ada driver CP210x dan kabel micro-USB
ESP-WROOM-32E 38 Micro-USB, CH340 ESP32 dual-core Anda mahu header yang lebih panjang, GPIO0 dan satu ground tambahan
ESP-32S 38 Micro-USB, CH340 ESP32 dual-core Sama seperti di atas, dengan antena PCB emas bogel di sebelah shield can-nya
ESP32-S3 WROOM CAM 40 (2 Γ— 20) + soket kamera Dua Type-C (UART + USB natif) S3 dual-core, flash 16 MB, PSRAM 8 MB Kamera, audio atau buffer besar
ESP32-C3 Super Mini 16 pad (13 GPIO) Type-C, USB natif RISC-V C3 single-core Saiz 18 Γ— 22.5 mm lebih penting daripada bilangan pin

Apa yang anda mungkin perlukan sekali

ItemPriceQty
ESP32 Expansion Board 30P Expansion Board ESP32 Shield GPIO Expansion Development KitESP32 Expansion Board 30P Expansion Board ESP32 Shield GPIO Expansion Development Kit32DEVBDRM8.90
Data Cable Type-A Type-C MicroUSB Type-B 0.5m 1m 30cm 0.3m 100cm Data Transfer Upload Code - TYPE-A TO TYPE-C CABLE (1.0M)Data Cable Type-A Type-C MicroUSB Type-B 0.5m 1m 30cm 0.3m 100cm Data Transfer Upload Code - TYPE-A TO TYPE-C CABLE (1.0M)ATCC100RM5.90
Data Cable Type-A Type-C MicroUSB Type-B 0.5m 1m 30cm 0.3m 100cm Data Transfer Upload Code - MicroUSB CABLE (1.0M)Data Cable Type-A Type-C MicroUSB Type-B 0.5m 1m 30cm 0.3m 100cm Data Transfer Upload Code - MicroUSB CABLE (1.0M)ATMC100RM5.90

Expansion board itu bersoket 30 posisi, jadi ia hanya menerima dua board ESP-32 30-pin β€” WROOM-32E dan ESP-32S 38-pin yang lebih panjang tidak akan masuk. Ambil kabel yang padan dengan port board anda: Type-C untuk ESP-32 CH340, S3 CAM dan C3 Super Mini, micro-USB untuk CP2102, WROOM-32E dan ESP-32S. Ia mesti kabel data; kabel charge sahaja memang menghidupkan board tetapi tidak pernah mengeluarkan COM port.

Dua daripada enam ini dihantar dengan headernya masih longgar dalam beg β€” ESP32-S3 WROOM CAM dan ESP32-C3 Super Mini β€” jadi peruntukkan sepuluh minit dengan soldering iron dan panduan solder header pin kami; empat lagi tiba dengan pinnya sudah terpasang. Kamera OV5640 pada S3 CAM berserta ribbonnya datang sekali dalam kotak.

CH340 atau CP2102 β€” apa sebenarnya yang berubah?

CH340 dan CP2102 ialah bridge USB-ke-UART, dan tiada satu pun antaranya cip yang lebih baik. ESP32 klasik tiada perkakasan USB sendiri β€” ia bercakap melalui talian serial biasa pada logik 3.3 V, dan tiada laptop yang mempunyai soket untuk itu β€” jadi sebuah bridge duduk antara penyambung dengan modul lalu menterjemahkannya. Pilihan itu menentukan dua perkara.

Drivernya. Setiap bridge ialah peranti USB yang berlainan, jadi komputer anda perlukan driver vendor itu dahulu sebelum sebuah COM port (atau /dev/tty…) muncul β€” CH340 daripada WCH, CP210x daripada Silicon Labs. macOS dan kernel Linux terkini sudah membawa kedua-duanya; Windows biasanya perlu dipasangkan yang CH340 secara manual. Sekali untuk setiap komputer, bukan sekali untuk setiap board.

Kabelnya. Dalam rangkaian kami, ESP-32 CH340 membawa soket USB Type-C manakala CP2102, WROOM-32E dan ESP-32S membawa micro-USB. Apa pun pilihannya, kabel itu perlu ada wayar data di dalamnya: kabel charge sahaja didawaikan untuk kuasa semata-mata, jadi bridge itu tidak pernah enumerate dan LED kuasa board menyala sedangkan senarai port kekal kosong.

Selain itu, tiada apa-apa lagi. Kedua-dua board mendawaikan talian DTR dan RTS bridge itu ke EN dan IO0 melalui litar dua-transistor yang sama, jadi kedua-duanya masuk ke bootloader dengan sendiri dan kedua-duanya upload pada baud 921600 yang sama seperti dipilih IDE secara lalai. Kalau port itu memang langsung tidak muncul, panduan ESP32 tak detect kami menyelesaikannya satu per satu. Beginilah rupa pemasangan driver itu:

Kartun rapat membandingkan tepi board hitam matte dengan soket USB Type-C bujur berwarna perak dan sebuah cip kecil berkaki, di sebelah tepi board dengan soket micro-USB trapezoid berwarna perak dan sebuah cip segi empat rata
Kenal pasti board anda melalui soketnya dahulu sebelum memesan kabel: port Type-C bujur dengan cip kecil berkaki di atasnya ialah board CH340, port micro-USB trapezoid dengan cip segi empat rata di atasnya ialah board CP2102.

Nama board mana saya pilih dalam Arduino IDE?

Entri board itu bukan sekadar label β€” ia memilih sasaran compiler, susun atur flash dan peta pin, jadi keluarga yang salah menghasilkan binari yang cip itu tidak mampu jalankan. Antara empat board klasik itu ia hampir tidak menjadi hal (silikon sama, flash 4 MB sama); merentas generasi pula ia menjadi hal sepenuhnya.

Mula-mula senarai itu kena wujud dahulu. Arduino tidak menghantar entri ESP32 sekali: buka Tools > Board > Boards Manager, cari esp32 dan pasang esp32 by Espressif Systems. Kalau tiada apa-apa muncul, tampal https://espressif.github.io/arduino-esp32/package_esp32_index.json ke dalam File > Preferences > Additional Boards Manager URLs dan cari semula. Satu pakej itu sahaja membawa setiap board pada halaman ini.

Board yang anda beli Entri di bawah Tools > Board > ESP32 Arduino Tetapan yang perlu ditukar
ESP-32 (CH340), 30-pin ESP32 Dev Module (atau DOIT ESP32 DEVKIT V1) Tiada
ESP-32 (CP2102), 30-pin ESP32 Dev Module (atau DOIT ESP32 DEVKIT V1) Tiada
ESP-WROOM-32E, 38-pin ESP32 Dev Module Tiada
ESP-32S, 38-pin ESP32 Dev Module Tiada
ESP32-S3 WROOM CAM ESP32S3 Dev Module Flash Size 16MB, PSRAM: OPI PSRAM
ESP32-C3 Super Mini ESP32C3 Dev Module USB CDC On Boot: Enabled

Dua tetapan pada ESP32-S3 CAM itu datang terus daripada tanda pada modulnya sendiri, N16R8 β€” flash 16 MB campur PSRAM 8 MB atas bas oktal lapan talian. Biarkan Flash Size pada 4MB, maka jadual partition itu disusun untuk cip sesuku daripada saiz sebenarnya; biarkan PSRAM pada QSPI, maka core memeriksa bas yang salah, psramFound() pulang sebagai false, dan sketch kamera gagal tepat pada saat ia meminta frame buffernya.

Tetapan tambahan C3 itulah yang selalu menangkap orang. Board itu langsung tiada cip bridge β€” C3 menjana port USBnya sendiri di dalam silikon β€” jadi dengan USB CDC On Boot dimatikan, core mengalihkan Serial ke pin UART perkakasan dan output anda keluar melalui GPIO20/21 ke udara kosong. Hidupkannya, dan sketch yang sama terus mencetak seperti biasa.

Kami juga menjual ESP32-C2 (ESP8684), dan ia tergolong dalam ayat yang berbeza: belilah ia untuk kerja ESP-IDF, bukan untuk Arduino IDE. Core Arduino ESP32 menyembunyikan entri C2nya dan langsung tidak menghantar library binaan C2 β€” permintaan untuk mengaktifkannya telah ditutup sebagai won’t-fix β€” jadi tiada board ESP32-C2 muncul dalam menu Tools, dan memaksanya masuk akan menggagalkan build.

Sketch ini mengesahkan pilihan anda dalam satu upload sahaja. Ia bertanya kepada silikon itu apa dirinya, bukan mengambil kata sesiapa, jadi flash size yang salah atau tetapan PSRAM yang tertinggal akan terserlah serta-merta.

// WhichESP32 - tanya board itu sendiri apa dirinya.
// Upload, buka Serial Monitor pada baud 115200, tekan butang RST/EN.

void setup() {
  Serial.begin(115200);
  delay(2000);  // beri masa board USB natif untuk enumerate semula sebelum mencetak

  Serial.println();
  Serial.println(F("--- what this board actually is ---"));

  // Baca terus daripada silikon, bukan daripada listing.
  Serial.print(F("Chip model    : "));
  Serial.println(ESP.getChipModel());

  Serial.print(F("CPU cores     : "));
  Serial.println(ESP.getChipCores());

  Serial.print(F("Silicon rev   : "));
  Serial.println(ESP.getChipRevision());

  Serial.print(F("CPU clock     : "));
  Serial.print(getCpuFrequencyMhz());
  Serial.println(F(" MHz"));

  // Saiz flash yang diberitahu kepada bootloader, dalam megabait penuh.
  Serial.print(F("Flash         : "));
  Serial.print(ESP.getFlashChipSize() / (1024 * 1024));
  Serial.println(F(" MB"));

  // PSRAM ialah RAM luaran. Hanya board yang membawa die tambahan itu melaporkan apa-apa.
  Serial.print(F("PSRAM         : "));
  if (psramFound()) {
    Serial.print(ESP.getPsramSize() / (1024 * 1024));
    Serial.println(F(" MB"));
  } else {
    Serial.println(F("none"));
  }

  // SRAM dalaman yang masih lapang setelah sketch dan stack Wi-Fi dimuatkan.
  Serial.print(F("Free heap     : "));
  Serial.print(ESP.getFreeHeap() / 1024);
  Serial.println(F(" KB"));
}

void loop() {
  // Tiada apa-apa untuk diulang - tekan RST untuk mencetak laporan itu semula.
}

Board klasik akan menjawab dengan nama pakej β€” ESP32-D0WD-V3 pada modul semasa, ESP32-D0WDQ6 pada yang lebih lama, tidak pernah perkataan kosong ESP32 β€” dengan 2 core, flash 4 MB, PSRAM none. S3 CAM menjawab ESP32-S3, 16 MB, PSRAM 8 MB. C3 Super Mini menjawab ESP32-C3, 1 core.

30 pin atau 38 pin β€” berapa banyak sebenarnya yang tambahan?

Board 38-pin memecah keluar lapan posisi header lagi, dan berbaloi tahu lapan itu apa sebenarnya. Enam daripadanya ialah GPIO6 hingga GPIO11, yang didawaikan di dalam modul terus ke cip flash SPInya sendiri β€” memori tempat program anda tinggal. Pandu salah satu daripadanya, cip itu kehilangan kodnya di tengah arahan lalu reboot, jadi ia terdedah tetapi tidak boleh diguna. Posisi yang benar-benar baharu ialah GPIO0 β€” pin pemilih boot, yang pada susun atur 30-pin dikekalkan pada butang BOOT sahaja β€” dan satu GND ketiga. Rel 5 V ada pada kedua-dua board; yang 30-pin itu cuma melabelkannya VIN.

Jadi apabila pelanggan meminta kami board yang “banyak pin”, jawapan jujurnya ialah satu GPIO berguna tambahan dan satu ground tambahan. GPIO0 berfungsi sebagai output biasa sebaik board itu berjalan, asalkan tiada apa-apa menahannya rendah semasa reset β€” aras itulah yang cip baca untuk memutuskan sama ada hendak memulakan sketch anda atau menunggu dalam bootloader. Ambil ESP-WROOM-32E 38-pin kerana headernya lebih panjang dan susun aturnya lebih lapang, bukan kerana ada lapan isyarat baharu menanti padanya.

Panjang board menentukan aksesorinya. Expansion board 30-pin mempunyai dua soket female 15 posisi bersilkscreen EN, VP, VN, D34 hingga D13 dan GND β€” tepat mengikut pinout 30-pin itu. Board 38-pin yang lebih panjang tidak duduk padanya, jadi belilah shield itu hanya bersama ESP-32 (CH340) atau ESP-32 (CP2102).

Kartun menunjukkan board ESP32 hitam matte 30-pin yang pendek duduk elok dalam expansion shield hitam dengan tanda betul berwarna teal, di sebelah board 38-pin yang lebih panjang terapung di atas soket yang sama dan terjulur keluar dengan tanda silang berwarna oren
Soket pada expansion board itu panjangnya 30 posisi. ESP-32 30-pin terus masuk; WROOM-32E atau ESP-32S 38-pin terjulur keluar dan tidak akan duduk.

Klasik, S3 atau C3 β€” apa yang generasi lebih baharu beri anda?

ESP32 klasik ialah bahagian Xtensa LX6 dual-core yang berjalan sehingga 240 MHz dengan 520 KB SRAM dalaman, Wi-Fi, Bluetooth Classic dan BLE, dan β€” pada binaan lalai N4 WROOM-32E β€” flash 4 MB. Itulah silikon dalam keempat-empat listing klasik, termasuk ESP-32S berantena emas: core LX7 hanya tiba bersama generasi S3, dan senarai ciri yang tercetak pada modul ESP-32S itu sendiri ialah set klasik.

ESP32-S3 WROOM CAM berpindah kepada dua core Xtensa LX7 dengan Wi-Fi dan Bluetooth 5 LE sahaja β€” tiada Bluetooth Classic, jadi ia tidak akan berpasangan sebagai peranti audio. Modulnya bertanda N16R8: singkatan Espressif untuk flash 16 MB dan PSRAM 8 MB. PSRAM itulah sebab board ini wujud.

PSRAM ialah die memori kedua di dalam modul itu, dipetakan ke dalam ruang alamat cip melalui bas khusus. Anda memerlukannya kerana 520 KB SRAM dalaman terpaksa menampung stack Wi-Fi, pemboleh ubah anda dan sebarang buffer serentak, sedangkan satu frame kamera 640Γ—480 dalam RGB565 ialah 640 Γ— 480 Γ— 2 = 614,400 bait β€” lebih banyak daripada keseluruhan SRAM dalaman, sebelum Wi-Fi mengambil bahagiannya lagi. Dengan PSRAM, frame itu diambil daripada megabait sebaliknya, dengan kos capaian yang lebih perlahan. Tiada PSRAM, tiada buffer kamera.

Dua soket Type-Cnya bukan boleh saling tukar: port kiri berjalan melalui bridge UART dan itulah yang untuk kuasa dan upload, manakala port kanan ialah USB natif S3 itu sendiri, memberi debugging JTAG terbina dalam dan membolehkan board itu menampilkan dirinya sebagai papan kekunci atau pemacu USB. Kedua-duanya boleh menghidupkannya.

ESP32-C3 Super Mini pergi ke arah bertentangan: satu core RISC-V pada 160 MHz dengan SRAM 400 KB, Wi-Fi dan BLE 5, dan flash 4 MB di dalam pakej cip itu sendiri. Bahagian terakhir itulah yang mengecilkan boardnya: tiada die flash berasingan, jadi tiada juga modul bershield β€” hanya QFN bogel dengan sebuah antena seramik kecil β€” dan peripheral USB C3 sendiri turut menghapuskan cip bridge itu. Tiga belas GPIO sampai ke pad castellatednya pada 18 Γ— 22.5 mm, tetapi ia bernombor GPIO0–10 dan 20/21, jadi sketch yang ditulis mengikut label D21/D22 klasik perlu dituju semula sebelum ia mahu berjalan. Dua lorong sampingan: ESP32 berbentuk Uno untuk menggunakan semula shield Uno, dan S2 Mini, yang ada USB natif tetapi langsung tiada Bluetooth.

Kalau anda mahu melihat beberapa board ESP32 di-benchmark bersebelahan:

Kartun membandingkan sebuah kamera pada ribbon oren yang melimpah keluar daripada kotak memori teal kecil dengan tanda silang oren, berbanding kamera yang sama mengisi kotak memori teal jauh lebih besar dengan ruang berbaki dan tanda betul teal
Satu frame kamera 640×480 ialah 614,400 bait. SRAM dalaman 520 KB pada ESP32 klasik tidak mampu menampungnya setelah Wi-Fi mengambil bahagiannya; PSRAM 8 MB pada S3 masih berbaki ruang.

Adakah 5 V selamat pada ESP32?

Kuasa dan isyarat perlukan dua jawapan yang berasingan. Memberi 5 V memang betul: USB ialah 5 V, dan pin VIN atau 5V pergi ke regulator AMS1117 di atas board yang menurunkannya kepada 3.3 V yang modul itu jalankan. C3 Super Mini dan S3 CAM menerima 5 V pada pad 5V mereka dengan cara yang sama.

Isyarat pula sebaliknya. Setiap GPIO ialah pin 3.3 V, dan datasheet ESP32 mengehadkan input tinggi pada VDD + 0.3 V β€” lebih kurang 3.6 V. Output sensor 5 V yang didawaikan terus ke GPIO duduk jauh di atas had itu, jadi guna resistor divider atau level shifter. Panduan power supply ESP32 kami merangkumi bahagian bekalan kuasanya.

Kesilapan biasa yang kami lihat daripada pelanggan sebenar

“Esp wroom 32e tu ch340 atau cp2102?” β€” CH340, dengan soket micro-USB. Board Type-C dalam rangkaian kami ialah ESP-32 (CH340) 30-pin, satu listing yang berlainan, jadi periksa bentuk soket pada gambar dahulu sebelum memesan kabel.

“for this esp32 (ch340) what is the board name in arduino ide” β€” ESP32 Dev Module. CH340 itu bridge USB, bukan cipnya, jadi ia memang tidak pernah muncul dalam senarai board langsung.

“ini ada 2 usb type C…. blh terang sikit fungsi 2 usb type c ni” β€” pada S3 CAM, yang kiri ialah bridge UART untuk kuasa dan upload, yang kanan ialah USB natif untuk JTAG dan kerja peranti USB. Mulakan dengan yang kiri.

“esp32 sy beli tu sesuai ke guna expansion ni” β€” hanya kalau ia board 30-pin. Kira pin pada satu sisi: lima belas muat pada shield itu, sembilan belas tidak.

Soalan Lazim

ESP32 mana patut saya beli untuk projek sekolah?

ESP-32 (CH340) 30-pin. Setiap tutorial ESP32 ditulis mengikut label pinnya, headernya tiba sudah tersolder, dan itulah board yang expansion shield 30-pin itu dibina untuknya.

Adakah ESP32 DevKit V1 sama dengan ESP-32 (CH340)?

Ya. “DevKit V1” ialah nama bagi susun atur 30-pin itu, lima belas pin sebelah, dan kedua-dua listing 30-pin kami menggunakannya. Kedua-duanya dipilih sebagai ESP32 Dev Module atau DOIT ESP32 DEVKIT V1.

CH340 atau CP2102 β€” mana lebih baik?

Tiada yang lebih baik. Kedua-duanya bridge USB-ke-UART yang upload pada kelajuan sama. Pilihan itu menentukan driver mana yang anda pasang sekali sahaja, dan dalam rangkaian kami sama ada soketnya Type-C (CH340) atau micro-USB (CP2102).

Berapa banyak memori flash pada board ESP32?

Board klasik membawa 4 MB, iaitu binaan lalai modul WROOM-32 dan WROOM-32E, dan daripada jumlah itu skim partition standard IDE memberikan sketch anda 1,310,720 bait, lebih kurang 1.25 MB. S3 CAM ada 16 MB, C3 Super Mini pula 4 MB di dalam pakej cipnya.

Boleh saya sambung sensor 5 V ke ESP32?

Tidak boleh terus ke GPIO. Pinnya 3.3 V dan had input tinggi dalam datasheet lebih kurang 3.6 V, jadi guna resistor divider atau level shifter. Menghidupkan board itu daripada 5 V melalui USB atau VIN pula memang tiada masalah.

Kemas kini terakhir Ogos 2026. Tersangkut? Chat dengan kami di WhatsApp.

Leave a Reply

Your email address will not be published. Required fields are marked *