Thursday, May 21, 2026

Presensi RFID Berbasis IoT dengan Google Spredsheet

Presensi RFID Berbasis IoT

Monitoring kehadiran siswa realtime menggunakan ESP32, RFID, dan Google Spreadsheet

Project IoT SMK Negeri 1 Kedungwuni

Presensi RFID ESP32 Google Spreadsheet Realtime Attendance System

Profil Tim

Nama Siswa:
1. Isi Nama Siswa
2. Isi Nama Siswa
3. Isi Nama Siswa

SMK Negeri 1 Kedungwuni

Deskripsi Proyek

Sistem presensi otomatis menggunakan RFID RC522 dan ESP32. Setiap kartu RFID yang ditempel akan dibaca, kemudian data UID, nama siswa, tanggal, dan jam akan otomatis dikirim ke Google Spreadsheet sehingga guru dapat memantau kehadiran secara realtime.


Komponen yang Digunakan

No Komponen Jumlah
1 ESP32 1
2 RFID RC522 1
3 LCD I2C 16x2 1
4 Buzzer 1
5 Kartu RFID Beberapa

Wiring ESP32

RFID RC522
SDA → GPIO 5
SCK → GPIO 18
MOSI → GPIO 23
MISO → GPIO 19
RST → GPIO 22
3.3V → 3.3V
GND → GND

LCD I2C
SDA → GPIO 21
SCL → GPIO 22

Buzzer
+ → GPIO 25

Alur Sistem

1. Siswa menempelkan kartu RFID
2. RFID membaca UID kartu
3. ESP32 mencocokkan data siswa
4. Data dikirim ke Google Spreadsheet
5. LCD menampilkan nama siswa
6. Rekap kehadiran langsung terlihat realtime

Google Apps Script

function doGet(e){
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Data");
  sheet.appendRow([
    new Date(),
    e.parameter.uid,
    e.parameter.nama
  ]);
  return ContentService.createTextOutput("OK");
}

Source Code ESP32

#include <WiFi.h>
#include <HTTPClient.h>
#include <SPI.h>
#include <MFRC522.h>
#include <LiquidCrystal_I2C.h>

#define SS_PIN 5
#define RST_PIN 22
#define BUZZER 25

MFRC522 rfid(SS_PIN,RST_PIN);
LiquidCrystal_I2C lcd(0x27,16,2);

const char* ssid="NamaWifi";
const char* password="PasswordWifi";

String scriptURL="ISI_URL_APPS_SCRIPT";

void setup(){
 Serial.begin(115200);

 SPI.begin();
 rfid.PCD_Init();

 pinMode(BUZZER,OUTPUT);

 lcd.init();
 lcd.backlight();

 WiFi.begin(ssid,password);

 while(WiFi.status()!=WL_CONNECTED){
   delay(500);
 }

 lcd.print("System Ready");
}

void loop(){

 if(!rfid.PICC_IsNewCardPresent()) return;
 if(!rfid.PICC_ReadCardSerial()) return;

 String uid="";
 for(byte i=0;i

Tampilan Rekap Spreadsheet

Masukkan link publish spreadsheet Anda di bawah ini:

Video Demo

Kesimpulan

Proyek ini menunjukkan implementasi Internet of Things dalam sistem presensi modern. Data tersimpan otomatis, realtime, akurat, dan mempermudah monitoring kehadiran siswa.

Wednesday, May 20, 2026

Kotak Amal Berbasis IoT Terintegrasi Telegram

Kotak Amal Pintar Berbasis IoT

Sistem monitoring donasi uang kertas real-time menggunakan ESP32 dan Telegram Bot

Project Based Learning • SMK Negeri 1 Kedungwuni

IoT ESP32 Kotak Amal Telegram Sensor Infrared LCD I2C SMK Project

Profil Tim Pengembang

• Dwi Rizqi Nafi'ati
• Eva Aulia Nazah
• Faida Falisya
• Karisma Zahrotu Sita

Instansi: SMK Negeri 1 Kedungwuni
Bidang: Internet of Things (IoT)

Permasalahan

Pengelolaan kotak amal masih dilakukan secara manual sehingga kurang transparan dan tidak dapat dipantau secara real-time.

Solusi Sistem

Sistem IoT berbasis ESP32 yang mendeteksi uang kertas menggunakan sensor infrared dan mengirim notifikasi otomatis ke Telegram untuk meningkatkan transparansi.

Prototype Sistem

Komponen Sistem

ESP32 Dev Module
Sensor Infrared
LCD I2C 16x2
Buzzer
Power Supply 5V

Wiring

LCD I2C → SDA GPIO 21, SCL GPIO 22
Sensor → GPIO 34
Buzzer → GPIO 25
VCC & GND → sesuai modul

Cara Kerja Sistem

1. Uang kertas dimasukkan
2. Sensor membaca perubahan cahaya
3. ESP32 memproses data
4. LCD menampilkan status
5. Telegram mengirim notifikasi real-time

Source Code ESP32

#include <WiFi.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <WiFiClientSecure.h>
#include <UniversalTelegramBot.h>

LiquidCrystal_I2C lcd(0x27,16,2);

const char* ssid="NamaWiFi";
const char* password="PasswordWiFi";

#define BOTtoken "TOKEN_BOT"
#define CHAT_ID "CHAT_ID"

WiFiClientSecure client;
UniversalTelegramBot bot(BOTtoken, client);

int sensorPin = 34;

void setup(){
  Serial.begin(115200);
  pinMode(sensorPin,INPUT);

  lcd.init();
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("Kotak Amal IoT");

  WiFi.begin(ssid,password);
  while(WiFi.status()!=WL_CONNECTED){
    delay(500);
  }

  client.setInsecure();
  bot.sendMessage(CHAT_ID,"Sistem Aktif","");

  lcd.setCursor(0,1);
  lcd.print("Ready");
}

void loop(){
  int sensor = digitalRead(sensorPin);

  if(sensor==HIGH){
    lcd.clear();
    lcd.print("Donasi Masuk");

    bot.sendMessage(CHAT_ID,"Uang kertas terdeteksi","");

    delay(3000);

    lcd.clear();
    lcd.print("Ready");
  }
}
  

Hasil Pengujian

Sistem berhasil berjalan stabil pada ESP32, sensor mendeteksi objek dengan baik, LCD menampilkan status, dan Telegram menerima notifikasi secara real-time.

Video Demo

Kesimpulan

Proyek ini membuktikan implementasi IoT sederhana berbasis ESP32 dapat meningkatkan transparansi dan monitoring sistem donasi secara otomatis dan real-time.

Monday, April 6, 2026

Tugas Pengemabangan

Solusi Tugas Pengembangan: Integrasi Monitoring Analog dan Web Control

Tugas ini mengintegrasikan dua konsep fundamental IoT: Data Acquisition (akuisisi data dari sensor) dan Remote Actuation (pengendalian jarak jauh). Sistem ini memungkinkan pengguna memantau nilai tegangan analog dari potensiometer sekaligus mengontrol status LED melalui satu antarmuka web.

I. Skema Logika Program

Mekanisme Kerja:
  • Fungsi analogRead(): Mengonversi sinyal analog pada GPIO 34 menjadi data digital 12-bit (0-4095).
  • Konstruksi String HTML: Nilai sensor disisipkan secara dinamis ke dalam variabel string sebelum dikirimkan ke client.
  • HTTP Endpoint: Server menyediakan jalur (route) khusus untuk perintah eksekusi "/on" dan "/off".

II. Implementasi Kode Sumber (Full Script)

Berikut adalah kode lengkap yang telah dioptimasi untuk dijalankan pada simulator Wokwi maupun perangkat fisik.

Advanced_IoT_Solution.ino
#include #include // Konfigurasi Jaringan const char* ssid = "Wokwi-GUEST"; const char* password = ""; WebServer server(80); // Definisi Pin const int potPin = 34; const int ledPin = 2; void handleRoot() { // Membaca nilai sensor saat halaman diakses int sensorValue = analogRead(potPin); float voltage = sensorValue * (3.3 / 4095.0); // Membangun Dokumen HTML Dinamis String ptr = ""; ptr += ""; ptr += "ESP32 Dashboard"; ptr += "

ESP32 IoT Dashboard

"
; ptr += "
Nilai Sensor: " + String(sensorValue) + "
"
; ptr += "
Estimasi Tegangan: " + String(voltage) + " V
"
; ptr += "
"
; ptr += "

Kendali Peralatan

"
; ptr += ""; ptr += ""; ptr += ""; server.send(200, "text/html", ptr); } void setup() { Serial.begin(115200); pinMode(ledPin, OUTPUT); // Inisialisasi Wi-Fi WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("\nTerhubung ke Wi-Fi"); Serial.print("Akses alamat IP: "); Serial.println(WiFi.localIP()); // Routing server.on("/", handleRoot); server.on("/on", { digitalWrite(ledPin, HIGH); server.sendHeader("Location", "/"); // Redirect ke halaman utama server.send(303); }); server.on("/off", { digitalWrite(ledPin, LOW); server.sendHeader("Location", "/"); server.send(303); }); server.begin(); } void loop() { server.handleClient(); }

III. Analisis Teknis Solusi

Pada solusi ini, terdapat peningkatan teknik komunikasi data yang disebut HTTP Redirect (Status Code 303). Teknik ini memastikan bahwa setelah pengguna menekan tombol, browser secara otomatis kembali ke halaman utama ("/") untuk memperbarui tampilan nilai sensor terbaru.

Kalkulasi Konversi ADC

Konversi nilai digital ke tegangan nyata menggunakan rumus linier:

$$V_{out} = \frac{\text{Nilai ADC}}{4095} \times 3.3V$$

IV. Kesimpulan Praktik

Integrasi ini membuktikan bahwa ESP32 mampu menangani tugas komputasi (pembacaan sensor) dan tugas komunikasi (web server) secara simultan. Ini adalah fondasi utama dalam pembuatan sistem monitoring industri sederhana maupun perangkat pintar rumah tangga.

Langkah Pro: Untuk pembaruan nilai sensor tanpa perlu refresh halaman secara manual, di masa mendatang Anda dapat mengimplementasikan teknologi AJAX atau WebSockets.

Implementasi ESP32 sebagai Web Server Nirkabel

Implementasi ESP32 sebagai Web Server Nirkabel

Esensi dari Internet of Things adalah kemampuan perangkat untuk berinteraksi melalui jaringan. Pada modul ini, kita akan mengeksplorasi kapabilitas ESP32 dalam menjalankan protokol HTTP (Hypertext Transfer Protocol) untuk membuat antarmuka kendali berbasis web.

I. Konsep Dasar Web Server pada Mikrokontroler

Dalam arsitektur ini, ESP32 berfungsi sebagai Server yang menampung file HTML statis, sementara perangkat pengguna (Smartphone/PC) berfungsi sebagai Client. Komunikasi terjadi melalui pertukaran paket data pada port standar 80.

Dua Mode Wi-Fi ESP32:
  • Station Mode (STA): ESP32 terhubung ke router Wi-Fi yang sudah ada (seperti ponsel terhubung ke Wi-Fi rumah).
  • Access Point Mode (AP): ESP32 memancarkan sinyal Wi-Fi sendiri sehingga perangkat lain bisa terhubung langsung ke ESP32.

II. Implementasi Kode: Kendali LED via Browser

Program berikut akan menginstruksikan ESP32 untuk membuat server lokal. Pengguna dapat mengakses alamat IP ESP32 untuk menyalakan atau mematikan LED melalui tombol visual.

WebServerControl.ino
#include #include const char* ssid = "Wokwi-GUEST"; // SSID khusus simulator Wokwi const char* password = ""; WebServer server(80); const int ledPin = 2; // Fungsi untuk menangani tampilan utama (Root) void handleRoot() { String html = "

ESP32 Web Control

"; html += ""; html += ""; server.send(200, "text/html", html); } void setup() { Serial.begin(115200); pinMode(ledPin, OUTPUT); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("\nIP Address: " + WiFi.localIP().toString()); server.on("/", handleRoot); server.on("/on", { digitalWrite(ledPin, HIGH); server.send(200, "text/html", "

LED NYALA

Kembali"); }); server.on("/off", { digitalWrite(ledPin, LOW); server.send(200, "text/html", "

LED MATI

Kembali"); }); server.begin(); } void loop() { server.handleClient(); // Menangani permintaan masuk dari browser }

III. Prosedur Pengujian di Wokwi

Langkah Operasional:
  1. Salin kode di atas ke editor Wokwi.
  2. Klik tombol Play. Perhatikan Serial Monitor hingga muncul alamat IP (biasanya 192.168.1.x).
  3. Pada Wokwi, Anda akan melihat simulasi "Virtual Browser". Masukkan alamat IP tersebut.
  4. Klik tombol pada layar browser virtual dan amati LED pada board ESP32.

IV. Analisis Keamanan dan Skalabilitas

Meskipun metode ini sangat efektif untuk kendali lokal, terdapat batasan keamanan karena data dikirimkan tanpa enkripsi (HTTP, bukan HTTPS). Untuk implementasi industri yang lebih luas, disarankan untuk menggunakan protokol MQTT (Message Queuing Telemetry Transport) yang akan kita bahas pada bab selanjutnya.

Penting: Pastikan perangkat kendali (HP) dan ESP32 berada dalam jaringan Wi-Fi yang sama (satu segmen IP), jika tidak, Client tidak akan dapat menemukan Server.

V. Tugas Pengembangan

Integrasikan materi sebelumnya dengan materi ini: Buatlah halaman web yang tidak hanya memiliki tombol kendali LED, tetapi juga menampilkan nilai sensor potensiometer secara otomatis saat halaman di-refresh.

Simulasi Sistem Monitoring Analog-Digital via Wokwi

Modul Praktik: Simulasi Sistem Monitoring Analog-Digital via Wokwi

Pada tahap ini, Anda akan mempraktikkan teori yang telah dipelajari sebelumnya. Fokus utama adalah membaca input analog dari potensiometer dan mengendalikan output digital berdasarkan ambang batas tertentu.

I. Persiapan Lingkungan Simulasi

Prosedur Persiapan:
  1. Akses situs wokwi.com.
  2. Pilih board ESP32 .
  3. Tambahkan komponen berikut melalui menu "Add":
    • 1x Potentiometer (Slide atau Rotary).
    • 1x LED (Warna bebas).
    • 1x Resistor 220 Ohm.

II. Diagram Skema dan Pengabelan



Hubungkan komponen sesuai dengan konfigurasi pin berikut untuk memastikan integritas data:



  • Potensiometer: Pin VCC ke 3.3V, GND ke GND, dan Pin Output (Tengah) ke GPIO 34 (ADC1_CH6).
  • LED: Anoda (kaki panjang) ke GPIO 2 melalui resistor 220 Ohm, Katoda ke GND.

III. Implementasi Kode Program

Program di bawah ini dirancang untuk membaca nilai resistansi potensiometer (0-4095) dan mengaktifkan LED sebagai indikator jika nilai melampaui batas 2000.

sketch.ino

/* * Project: Monitoring Analog-Digital

  • Deskripsi: Membaca ADC dan mengontrol LED */

const int potPin = 34; // Pin Input Analog 

const int ledPin = 2; // Pin LED Internal/Eksternal 

int potValue = 0; // Variabel penyimpan data

void setup() 

{ Serial.begin(115200); 

pinMode(ledPin, OUTPUT); 

Serial.println("Sistem Inisialisasi..."); }

/* 

Project: Monitoring Analog-Digital

Deskripsi: Membaca ADC dan mengontrol LED

*/


const int potPin = 34; // Pin Input Analog 

const int ledPin = 2;  // Pin LED Internal/Eksternal 


int potValue = 0; // Variabel penyimpan data


void setup() 

  Serial.begin(115200); 

  pinMode(ledPin, OUTPUT); 

  Serial.println("Sistem Inisialisasi...");

}


void loop() 

  // Membaca resolusi 12-bit (0-4095) 

  potValue = analogRead(potPin);


  Serial.print("Nilai Analog: "); 

  Serial.println(potValue);


  // Logika Kontrol Digital

  if (potValue > 2000) 

  { 

    digitalWrite(ledPin, HIGH); 

  } 

  else 

  { 

    digitalWrite(ledPin, LOW); 

  }


  delay(100); // Sampling rate 10Hz

}

IV. Analisis Hasil Simulasi

Setelah menekan tombol "Start Simulation", perhatikan aspek berikut pada jendela Serial Monitor:

  • Linieritas Data: Saat potensiometer diputar, nilai harus berubah secara halus dari 0 hingga 4095.
  • Akurasi ADC: ESP32 menggunakan tegangan referensi internal. Nilai 4095 merepresentasikan tegangan input maksimum sebesar 3.3V.
  • Responsivitas: LED akan segera menyala saat nilai melampaui angka 2000, membuktikan keberhasilan fungsi Conditional Logic pada mikrokontroler.
Catatan Formal: Dalam praktik nyata, pin ADC2 tidak dapat digunakan bersamaan dengan fungsi Wi-Fi. Oleh karena itu, penggunaan pin dari unit ADC1 (GPIO 32-39) sangat disarankan untuk proyek IoT yang menggunakan koneksi internet.

V. Tugas Mandiri

Untuk memperdalam pemahaman, Anda diminta untuk memodifikasi kode di atas agar LED berkedip (*blink*) dengan kecepatan yang bergantung pada nilai potensiometer. Gunakan fungsi delay(potValue); untuk mengobservasi perubahan frekuensi secara visual.

Pengenalan ESP32 untuk Dasar IoT

Arsitektur Mikrokontroler ESP32 dan Implementasi Dasar IoT



Internet of Things (IoT) telah merevolusi cara manusia berinteraksi dengan perangkat elektronik melalui jaringan global. Di jantung revolusi ini terdapat ESP32, sebuah sistem-on-chip (SoC) yang dikembangkan oleh Espressif Systems. Modul ini menawarkan integrasi tingkat tinggi antara mikrokontroler dengan konektivitas nirkabel Wi-Fi dan Bluetooth.

I. Karakteristik Arsitektur dan Spesifikasi Teknis

Berbeda dengan mikrokontroler 8-bit tradisional, ESP32 menggunakan arsitektur 32-bit yang lebih mutakhir. Berikut adalah rincian spesifikasi teknis utamanya:

Komponen Spesifikasi Detil
Prosesor Xtensa® Dual-Core 32-bit LX6 Microprocessor
Frekuensi Clock Hingga 240 MHz
Memori SRAM 520 KB terintegrasi
Konektivitas Nirkabel Wi-Fi 802.11 b/g/n & Bluetooth v4.2 BR/EDR/BLE
Tegangan Operasional 2.2V hingga 3.6V DC

II. Konfigurasi dan Analisis Pin GPIO



General Purpose Input Output (GPIO) pada ESP32 memiliki fungsionalitas ganda (multiplexing). Pemahaman terhadap pemetaan pin sangat krusial untuk menghindari kegagalan perangkat keras.

1. Pin Analog-to-Digital Converter (ADC)

ESP32 dilengkapi dengan dua unit ADC 12-bit (ADC1 dan ADC2) yang mencakup 18 saluran. Resolusi 12-bit memungkinkan pembacaan nilai sensor dengan rentang digital 0 hingga 4095.

2. Pin Khusus (Strapping Pins)

Peringatan Teknis: Pin GPIO 0, 2, 5, 12, dan 15 dikategorikan sebagai "Strapping Pins". Status logika pin-pin ini saat reset akan menentukan mode booting perangkat. Ketidaksesuaian status dapat menyebabkan sistem gagal melakukan inisialisasi.

3. Antarmuka Komunikasi

Untuk interaksi antarperangkat, ESP32 mendukung berbagai protokol komunikasi serial standar industri:

  • I2C (Inter-Integrated Circuit): Menggunakan pin GPIO 21 (SDA) dan GPIO 22 (SCL).
  • SPI (Serial Peripheral Interface): Terdiri dari empat jalur utama (MOSI, MISO, SCK, CS).
  • UART (Universal Asynchronous Receiver-Transmitter): Terdapat tiga port UART untuk komunikasi serial data.

III. Manajemen Daya: Fitur Deep Sleep

Salah satu keunggulan signifikan ESP32 dalam aplikasi IoT berbasis baterai adalah kemampuannya untuk beroperasi dalam konsumsi daya rendah. Pada mode Deep Sleep, inti CPU dinonaktifkan, sementara koprosesor ULP (Ultra Low Power) tetap aktif untuk memantau pemicu eksternal.

IV. Implementasi Pemrograman Dasar

Pemrograman ESP32 umumnya dilakukan menggunakan lingkungan pengembangan terintegrasi (IDE) dengan bahasa berbasis C++. Struktur kode dasar dibagi menjadi dua fungsi utama: setup() untuk konfigurasi awal, dan loop() untuk eksekusi kontinu.

/* Inisialisasi Koneksi Wi-Fi pada ESP32 */ #include <WiFi.h> const char* ssid = "ID_Jaringan"; const char* password = "Kata_Sandi"; void setup() { Serial.begin(115200); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("\nStatus: Koneksi Terpaut"); } void loop() { // Implementasi algoritma utama di sini }

V. Kesimpulan

ESP32 merepresentasikan solusi mikrokontroler yang efisien dan tangguh untuk pengembangan ekosistem IoT. Melalui integrasi prosesor inti ganda, beragam modul sensorik internal, serta kapabilitas nirkabel, perangkat ini menjadi fondasi yang kokoh dalam perancangan sistem cerdas masa kini.

Referensi Lanjutan:

Pembaca disarankan untuk mempelajari dokumentasi resmi Espressif IoT Development Framework (ESP-IDF) untuk pengembangan aplikasi pada tingkat sistem operasi real-time (FreeRTOS).

Materi Pengenalan ESP32-CAM untuk Proyek IoT Presensi QR Code

Materi Pengenalan ESP32-CAM untuk Proyek IoT Presensi QR Code

ESP32-CAM adalah salah satu modul mikrokontroler yang sangat populer dalam pengembangan Internet of Things (IoT), terutama untuk aplikasi berbasis kamera seperti presensi QR Code, sistem keamanan, dan monitoring jarak jauh.

Tujuan Pembelajaran:
  • Memahami konsep dasar ESP32
  • Mengenal fitur ESP32-CAM
  • Mengetahui cara kerja dan penggunaannya dalam IoT
  • Menyiapkan dasar untuk proyek presensi QR Code

1. Apa itu ESP?

ESP adalah singkatan dari Espressif Systems, yaitu perusahaan yang memproduksi chip mikrokontroler dengan fitur WiFi dan Bluetooth.

Seri ESP yang paling populer:

  • ESP8266 → versi awal (WiFi saja)
  • ESP32 → lebih canggih (WiFi + Bluetooth)

Kenapa ESP populer?

  • Harga murah
  • Sudah ada WiFi (tidak perlu modul tambahan)
  • Mudah diprogram menggunakan Arduino IDE
  • Cocok untuk proyek IoT

2. Apa itu ESP32-CAM?

ESP32-CAM adalah versi ESP32 yang dilengkapi dengan kamera sehingga bisa digunakan untuk:

  • Scan QR Code
  • Face Recognition
  • Streaming video
  • Sistem keamanan
Kesimpulan:
ESP32-CAM = ESP32 + Kamera + WiFi dalam satu modul

3. Spesifikasi ESP32-CAM

  • Chip: ESP32
  • Kamera: OV2640
  • WiFi: 2.4 GHz
  • Bluetooth: Ada
  • Slot MicroSD: Ada
  • GPIO: Terbatas (karena digunakan kamera)

4. Kelebihan dan Kekurangan

Kelebihan:

  • Bisa scan QR Code langsung
  • Tidak perlu modul kamera tambahan
  • Harga terjangkau

Kekurangan:

  • Tidak ada USB (harus pakai FTDI)
  • GPIO terbatas
  • Setting awal agak sulit bagi pemula

5. Cara Kerja ESP32-CAM dalam Proyek Presensi

Dalam proyek presensi QR Code, alurnya adalah:

  • Kamera menangkap gambar QR Code
  • ESP32 memproses data QR
  • Data dikirim ke server/database
  • Status kehadiran tersimpan
Ilustrasi sederhana:
QR Code → Kamera → ESP32 → WiFi → Database

6. Kebutuhan Dasar untuk Menggunakan ESP32-CAM

  • ESP32-CAM
  • FTDI USB to Serial
  • Kabel jumper
  • Arduino IDE
  • Koneksi WiFi

7. Contoh Program Sederhana (Testing Serial)

void setup() { Serial.begin(115200); } void loop() { Serial.println("ESP32-CAM Siap Digunakan"); delay(2000); }

8. Tantangan yang Harus Diantisipasi

Banyak yang gagal di awal karena menganggap ESP32-CAM seperti Arduino biasa. Ini keliru.

  • Perlu FTDI untuk upload program
  • Harus setting board dengan benar
  • Butuh pemahaman dasar jaringan (WiFi)
Catatan penting:
Jika tidak memahami proses upload dan konfigurasi, proyek akan terhenti di awal.

9. Strategi Belajar yang Tepat

Agar tidak membuang waktu, urutan belajar yang benar:

  1. Memahami ESP32 dasar (tanpa kamera)
  2. Belajar upload program
  3. Tes serial monitor
  4. Belajar koneksi WiFi
  5. Baru masuk ke kamera dan QR Code

10. Penutup

ESP32-CAM adalah perangkat powerful, tetapi tidak ramah pemula jika langsung digunakan tanpa dasar. Pendekatan yang sistematis akan mempercepat keberhasilan dalam proyek presensi berbasis QR Code.

Next Materi:
Instalasi Arduino IDE dan Setup ESP32-CAM