Pengantar ESP32-S3
ESP32-S3 adalah MCU System-on-Chip (SoC) yang diluncurkan oleh Espressif, yang mengintegrasikan kemampuan Wi-Fi 2,4 GHz dan Bluetooth 5 (LE), termasuk dukungan Long Range. Chip ini dilengkapi dengan prosesor dual-core Xtensa® 32-bit LX7 yang bertenaga, dengan kecepatan hingga 240 MHz, serta memiliki SRAM (TCM) terintegrasi sebesar 512 KB. Selain itu, chip ini menawarkan 45 pin GPIO yang dapat diprogram dan berbagai antarmuka komunikasi. ESP32-S3 juga mendukung flash Octal SPI berkecepatan tinggi berkapasitas lebih besar dan RAM eksternal, sehingga memungkinkan pengguna untuk mengonfigurasi penyimpanan data dan instruksi dalam cache guna meningkatkan kinerja.

Konfigurasi Pin ESP32-S3-DevKitC-1
ESP32-S3-DevKitC adalah papan pengembangan yang didasarkan pada modul ESP32-S3-WROOM-1. Papan ini dirancang untuk membantu pengembang membuat prototipe dan menguji proyek mereka menggunakan mikrokontroler seri ESP32-S3. Papan ini menawarkan berbagai fitur perangkat keras dan pin yang dapat digunakan untuk menghubungkan perangkat tambahan dan sensor. Berikut ini adalah penjelasan mengenai konfigurasi pin pada ESP32-S3-DevKitC:

Deskripsi Konfigurasi Pin
| Pin | Description |
|---|---|
| ESP32-S3-WROOM-1 Module | Main module with microcontroller, Wi-Fi, and Bluetooth. |
| USB-UART Bridge | Allows USB communication with ESP32-S3 module. |
| USB Port | Power and serial connection through USB. |
| BOOT Button | Puts ESP32-S3 into bootloader mode for firmware upload. |
| EN Button | Resets the ESP32-S3 module. |
| User Buttons | Two buttons for user-defined purposes. |
| User LEDs | LEDs controlled by the ESP32-S3 for visual feedback. |
| GPIO Pins | General Purpose Input/Output pins for various functions. |
| Analog Input Pins | Pins to read analog signals from sensors. |
| I2C Pins | Pins for I2C communication with sensors. |
| SPI Pins | Pins for high-speed communication with devices. |
| UART Pins | Pins for serial communication with other devices. |
| SD Card Slot | Slot for interfacing with SD cards. |
| JTAG Header | Header for advanced debugging and programming. |
| Power Supply Pins | Pins for 3.3V and GND connections. |
Prosesor Xtensa LX7 32-bit
Mengenai chip ini, Anda mungkin memiliki pertanyaan tentang prosesor dual-core Xtensa 32-bit LX7 yang terintegrasi di dalamnya, karena sebagian besar chip tertanam yang biasa kita temui umumnya berbasis ARM. Xtensa berbeda dari inti ARM; prosesor seri Xtensa LX menawarkan kemampuan rekonfigurasi dan skalabilitas yang tinggi, sehingga menjadikannya pilihan ideal untuk aplikasi pemrosesan sinyal digital yang kompleks dan intensif. Dengan teknologi Xtensa, insinyur desain sistem dapat memilih arsitektur unit yang diinginkan dan membuat instruksi baru serta unit eksekusi perangkat keras untuk merancang inti prosesor yang jauh lebih kuat daripada yang didasarkan pada metode tradisional. Generator Xtensa dapat secara efisien menghasilkan seperangkat alat perangkat lunak yang komprehensif, termasuk sistem operasi, yang disesuaikan dengan kombinasi spesifik setiap prosesor. Sifat prosesor Xtensa yang dapat disesuaikan memungkinkan fleksibilitas yang tinggi dalam desain dan efisiensi yang tinggi, menjadikannya pilihan optimal untuk semua sistem chip tunggal yang sangat tersintesis. Dengan menggunakan kombinasi rekonfigurabilitas perangkat keras dan pemrograman perangkat lunak, prosesor Xtensa tidak hanya meningkatkan kinerja komputasi tetapi juga menawarkan kemudahan implementasi untuk tujuan kontrol.

Aplikasi ESP32-S3
Chip berdaya rendah ESP32-S3 dirancang khusus untuk perangkat Internet of Things (IoT) dan memiliki beragam aplikasi. Dapat dikatakan bahwa hampir semua produk elektronik konsumen yang ada di pasaran saat ini dapat menggunakannya. Misalnya, peralatan rumah tangga seperti AC atau penanak nasi dapat dilengkapi dengan chip ini untuk memungkinkan pengendalian jarak jauh dan konektivitas. Beberapa bidang aplikasi spesifik meliputi:
- Perangkat Rumah Tangga Cerdas
- Hub Sensor IoT Berdaya Rendah Universal
- Industri Otomatis
- Perekam Data IoT Berdaya Rendah Universal
- Asuransi Kesehatan
- Streaming Video Kamera
- Perangkat Elektronik Konsumen
- Perangkat USB
- Penerapan IoT
- Pengenalan Suara
- Mesin POS
- Identifikasi Gambar
- Robot Layanan
- Kartu Jaringan Wi-Fi + Bluetooth
- Perangkat Audio
- Sensor Sentuh dan Jarak
ESP32-S3 vs STM32
ESP32-S3 merupakan evolusi dalam desain chip dibandingkan dengan seri STM32. Meskipun chip STM32 telah memiliki reputasi yang mapan dan digunakan secara luas dalam berbagai aplikasi, seri ESP32 telah secara strategis memposisikan diri sebagai pelopor. Dengan mengintegrasikan fungsi WiFi dan Bluetooth langsung ke dalam System-on-Chip (SoC), ESP32-S3 memenuhi permintaan yang terus meningkat akan perangkat pintar dan terhubung di era IoT.
Meskipun chip STM32 merupakan mikrokontroler yang kuat dan serbaguna, chip ini mungkin memerlukan komponen atau modul tambahan untuk mengaktifkan konektivitas WiFi dan Bluetooth. Sebaliknya, ESP32-S3 menawarkan kemudahan komunikasi nirkabel bawaan, sehingga mengurangi kebutuhan akan komponen eksternal dan menyederhanakan proses desain untuk aplikasi IoT. Perbandingan diagram fungsional ESP32-S3 dan STM32F103XX akan memperlihatkan kemajuan ini.


Keputusan Espressif untuk melengkapi ESP32 dengan kemampuan WiFi dan Bluetooth sejak awal telah memungkinkan mereka untuk memanfaatkan tren yang sedang berkembang dan memenuhi kebutuhan industri elektronik yang terus berubah. Seiring dengan semakin pentingnya konektivitas internet dan komunikasi nirkabel, fitur bawaan ESP32-S3 sangat sesuai dengan tuntutan produk elektronik modern.
Selain itu, seri ESP32-S3 tidak hanya menawarkan WiFi dan Bluetooth, tetapi juga menonjolkan peningkatan dalam hal kinerja, efisiensi daya, dan kemudahan penggunaan. Meskipun seri STM32 mungkin masih memiliki keunggulan tertentu dalam hal kinerja mentah dan stabilitas, ESP32-S3 dengan cepat mengejar ketertinggalan dan telah mendapatkan popularitas dalam berbagai aplikasi IoT dan perangkat terhubung.
Membuat Papan Mikrokontroler dengan ESP32-S3
Untuk menerapkan chip ESP32-S3 pada produk praktis, chip tersebut perlu dikemas dan dilengkapi dengan rangkaian periferal serta port I/O komunikasi untuk berkomunikasi dengan perangkat eksternal. Misalnya, untuk membuat perangkat kontrol akses berbasis pengenalan wajah, diperlukan antarmuka kamera untuk menghubungkan kamera eksternal guna pengambilan dan pemrosesan gambar, rangkaian antena untuk konektivitas WiFi atau Bluetooth, serta memori flash SPI untuk menyimpan data dalam jumlah besar. Gambar berikut adalah diagram skematik resmi dari rangkaian tersebut, yang umumnya mencakup sekitar 20 resistor, kapasitor, induktor, osilator kristal pasif, dan memori flash SPI.

Jika Anda merasa kesulitan merancang rangkaian ini, Anda dapat memilih modul ESP32-S3 yang sudah dirancang dan dikemas siap pakai. Penggunaan modul dapat mempercepat siklus pengembangan, tetapi mungkin memerlukan biaya yang lebih tinggi. Sebagai alternatif, kita dapat merancang modul sendiri berdasarkan skema resmi yang disediakan oleh Espressif. Modul-modul yang dirilis secara resmi oleh Espressif ditampilkan pada gambar berikut.


Modul-modul yang dirilis oleh Espressif akan memiliki model yang berbeda-beda. Sebenarnya, chip intinya sama dengan ESP32-S3. Perbedaan antar model terletak pada ukuran memori Flash dan PSRAM eksternal. Model dengan konfigurasi tertinggi yang dirilis secara resmi adalah ESP32-S3-WROOM-1-N16R8, yang memiliki 16MB memori Flash dan 8MB PSRAM. Menurut saya, konfigurasi ini sudah cukup untuk pengembangan kita:
| Model | Flash2 | PSRAM | Ambient temperature (℃) | Module size (mm) |
|---|---|---|---|---|
| ESP32-S3-WROOM-1-N4 | 4 MB (Quad SPI) | - | -40~85 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N8 | 8 MB (Quad SPI) | - | -40~85 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N16 | 16 MB (Quad SPI) | - | -40~85 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-H4 | 4 MB (Quad SPI) | - | -40~105 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N4R2 | 4 MB (Quad SPI) | 2 MB (Quad SPI) | -40~85 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N8R2 | 8 MB (Quad SPI) | 2 MB (Quad SPI) | -40~85 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N16R2 | 16 MB (Quad SPI) | 2 MB (Quad SPI) | -40~85 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N4R8 | 4 MB (Quad SPI) | 8 MB (Octal SPI) | -40~65 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N8R8 | 8 MB (Quad SPI) | 8 MB (Octal SPI) | -40~65 | 18.0 * 25.5 * 3.1 |
| ESP32-S3-WROOM-1-N16R8 | 16 MB (Quad SPI) | 8 MB (Octal SPI) | -40~65 | 18.0 * 25.5 * 3.1 |
Kita dapat menggunakan modul-modul siap pakai ini untuk merancang papan mikrokomputer satu chip dengan fungsi-fungsi tertentu. Jika Anda ingin membuat papan pengembangan dengan fungsi umum, metode yang umum digunakan adalah dengan menghubungkan semua port I/O modul tersebut, sehingga pengguna dapat menggunakannya sesuai kebutuhan mereka. Anda dapat menghubungkan perangkat eksternal sendiri; oleh karena itu, saya merancang papan pengembangan mini ESP32-S3 serbaguna, seperti yang ditunjukkan pada gambar di bawah ini:
Desain Papan Ekspansi dengan ESP32-S3
Tidak semua papan pengembangan memerlukan desain papan ekspansi; Anda cukup merancang antarmuka eksternal yang sesuai secara langsung saat merancang papan pengembangan. Namun, hal ini akan menimbulkan masalah. Jika kita perlu membuat produk lain, seluruh papan pengembangan harus dirancang ulang, yang akan menyebabkan pemborosan waktu dan biaya perangkat keras. Ide saya adalah agar papan pengembangan inti kita tetap tidak berubah, dan kita dapat merancang beberapa papan ekspansi dengan antarmuka yang sesuai sesuai kebutuhan produk, sehingga waktu pengembangan kita akan jauh lebih cepat, karena merancang papan antarmuka eksternal sangatlah mudah. Alasan lainnya adalah jika beberapa fungsi pada papan inti kita mengalami kegagalan dan tidak dapat diperbaiki, kita hanya memerlukan papan inti yang lebih baik, dan kita tidak perlu melakukan perubahan apa pun pada papan ekspansi yang terhubung ke perangkat eksternal.
Di sini, untuk memudahkan pembelajaran dan pengembangan ESP32-S3, kita akan menggunakan berbagai fungsi. Tidak mungkin menempatkan semua fungsi ini pada satu papan pengembangan, yang akan menimbulkan biaya terlalu tinggi. Akan jauh lebih praktis jika kita memilih papan ekspansi dengan biaya lebih rendah dan hanya fungsi-fungsi tertentu sesuai kebutuhan pembelajaran yang berbeda. Ini memudahkan kita untuk memulai. Saya pertama kali merancang papan ekspansi yang menghubungkan berbagai sensor, seperti yang ditunjukkan pada gambar di bawah ini:




