Pengenalan ESP32

Dibuat oleh Espressif Systems, ESP32 adalah low-cost, low-power system on a chip (SoC) dengan kapabilitas Wi-Fi & dual-mode Bluetooth.

Sejak diperkenalkan ESP32, Espressif mengeluarkan beberapa variants dari ESP32, yang terbaru adalah pada Tahun 2020, diperkenalkan ESP32-S2 series chips.

ESP32 family adalah general-purpose, feature-rich, dan versatile SoC yang dapat digunakan dalam berbagai IoT projects yang memerlukan Wi-Fi connectivity.

Berikut fitur utama dari ESP32

  • CPU and memory: 32-bit Xtensa® LX6 microprocessor dengan clock frequency/ MIPS of up to 240 MHz/600 MIPS. Single- or dual-core variants. 448 KB ROM, 520 KB SRAM, dan 16 KB RTC memory. Support external SPI flash and SPI RAM for module variants. DMA for peripherals.
  • Connectivity: Wi-Fi 802.11 n (2.4 GHz) up to 150 Mbps (STA and softAP modes) dan Bluetooth-compliant dengan Bluetooth v4.2 BR/EDR and BLE specifications.
  • Peripheral interfaces: GPIOs, ADC, DAC, SPI, I2C, I2S, UART, eMMC/SD (chip variants), CAN, IR, PWM, touch sensor, dan hall sensor.
  • Security: Cryptographic hardware acceleration (random number, hash, AES, RSA, and ECC), 1024-bit OTP, secure boot, and flash encryption.
  • Power modes: Different power modes with the help of an Ultra-Low-Power (ULP) co-processor and a Real-Time Clock (RTC). 100 μA power consumption in deep-sleep mode (ULP active

Ada sedikit perbedaan pada series ESP32-S2, yaitu:

  • Single Core.
  • Tidak ada Bluetooth.
  • Tidak ada support untuk SD/eMMC.
  • Terdapat USB OTG.
  • Peningkatan sisi Security.

Untuk memudahkan design hardware, Espressif menyediakan banyak variant ESP32 modules, mulai dari chip variant, ukuran external flash (4, 8 atau 16MB), external SRAM dan tipe antena. Kita dapat memilih pcb antena, atau external antena.

Sementara untuk series ESP32-S2, pada saat tutorial ini dibuat, kita hanya memiliki satu pilihan module option. Pada umumnya modul tersebut sudah cukup mumpuni untuk berbagai project IoT.

Namun, jika membutuhkan ESP32 chip khusus, contohnya, high-temperature operation, Anda dapa tmenggunakan chip variant seperti ESP32-U4WDH.

Anda lihat modules yang tersedia di Espressif website: https://docs.espressif.com/projects/esp-idf/
en/latest/esp32/hw-reference/index.html
.

Sementara untuk ESP32 development kit, tersedia banyak varian dari berbagai vendor. Memulai development dengan menggunakan devkit sangat memudahkan, setiap modul sudah terintegrasi dengan USB-UART bridge chip dan USB port, kita cukup menghubungkannya dengan Komputer untuk melakukan development.

ESP32 devkitc version 4

Development Platform dan Frameworks

Ada 3 pilihan Platform yang umum digunakan:

Espresif IoT Development Framework (ESP-IDF). Support Windows, macOS dan Linux. Paling mudah adalah digunakan Visual Studio Code dan menginstall ESP-IDF extension.

Arduino IDE. Arduino juga menyediakan library untuk ESP32 boards. Jika Anda sudah terbiasa menggunakan Arduino IDE mungkin ini salah satu opsi yang dapat digunakan. Namun, dibandingkan dengan ESP-IDF, terdapat development flexibility.

PlatformIO, adalah extension dari Visual Studio Code sebagai open source embedded development environment. Suppot berbagai embedded boards, platform dan framework, termasuk ESP32 boards dan ESP-IDF.

Semua fungsi yang disediakan ESP-IDF versi console, disupport oleh PlatformIO. Tersedia juga debugger, unit testing support, static code analysis dan remote development tools for
embedded programming.

Dapat dikatakan PlatformIO adalah pilihan terbaik dengan alasan kemudahan penggunaan serta fleksibilitas dalam development.


Bahasa Pemograman

Bahasa pemograma yang digunakan oleh ketiga framework diatas adalah C/C++. Jadi Anda perlu paham bahasa C/C++.

Selain C/C++ , Anda dapat menggunakan MicroPython untuk menggunakan bahasa Python atau Espruino untuk bahasa JavaScript. Namun, kurang disarankan jika produk yang Anda kembangkan bertujuan untuk dijual di market. Kapabilitas ESP-IDF tidak dapat diakses secara penuh dengan menggunakan MicroPython atau Espruino.

Sharing is caring:

Leave a Comment