// Sertakan library yang dibutuhkan
#include <Wire.h>
#include <RTClib.h> // Library untuk Real Time Clock (RTC)
#include <LiquidCrystal_I2C.h> // Library untuk LCD I2C
// Inisialisasi RTC DS1307
RTC_DS1307 rtc;
// Inisialisasi LCD pada alamat 0x27 untuk layar 16x2.
// Alamat I2C umum untuk LCD adalah 0x27 atau 0x3F. Jika tidak jalan, coba ganti alamatnya.
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
// Inisialisasi komunikasi I2C
Wire.begin();
// Inisialisasi LCD
lcd.init();
lcd.backlight();
lcd.clear();
// Periksa apakah modul RTC terhubung
if (! rtc.begin()) {
lcd.print("RTC tidak ditemukan");
while (1); // Hentikan program
}
// Untuk mengatur waktu awal, hapus tanda komentar pada baris di bawah ini
// dan unggah *hanya sekali*. Setelah itu, komentar kembali baris tersebut.
// rtc.adjust(DateTime(F(__DATE__), F(__TIME__))); // Atur waktu ke waktu kompilasi PC
lcd.print("Jam Digital");
}
void loop() {
// Ambil waktu saat ini dari RTC
DateTime now = rtc.now();
// Posisikan kursor di baris kedua, kolom 0 (indeks dimulai dari 0)
lcd.setCursor(0, 1);
// Tampilkan waktu dalam format HH:MM:SS
// Jam
if (now.hour() < 10) lcd.print('0'); // Tambahkan '0' di depan jika jam < 10
lcd.print(now.hour());
lcd.print(':');
// Menit
if (now.minute() < 10) lcd.print('0'); // Tambahkan '0' di depan jika menit < 10
lcd.print(now.minute());
lcd.print(':');
// Detik
if (now.second() < 10) lcd.print('0'); // Tambahkan '0' di depan jika detik < 10
lcd.print(now.second());
// Tunda selama 1 detik (1000 milidetik) sebelum update berikutnya
delay(1000);
}
Microbit adalah penampil infomasi yang umumnya di pakai di lift biasanya menunjukkan informasi lantai berapa, dan biasanya memberikan informasi lift sedang naik atau turun.
1. Langkah pertama buka tinkercad, create, circuit, pilih microbit
#include <WiFi.h>
const char* ssid = "ESP32_AP";
const char* password = "12345678";
void setup() {
Serial.begin(115200);
Serial.println("Membuat Access Point...");
WiFi.softAP(ssid, password);
IPAddress IP = WiFi.softAPIP();
Serial.print("Access Point aktif di: ");
Serial.println(IP);
}
void loop() {
// Kosong, tidak perlu loop terus
}
๐น 4. Upload ke ESP32
Sambungkan ESP32 ke laptop
Klik Upload (panah kanan)
Tunggu selesai
๐น 5. Uji koneksi
Buka Wi-Fi di HP atau laptop
Akan muncul jaringan bernama ESP32_AP
Masukkan password 12345678
Setelah terhubung, kamu bisa lihat alamat IP-nya di Serial Monitor (biasanya 192.168.4.1)
✅ Selesai — sekarang ESP32 jadi Access Point lokal!
๐ก LANGKAH OPSIONAL: Buat ESP32 Jadi Wi-Fi Repeater
Kalau kamu ingin ESP32:
Menyambung ke modem Wi-Fi,
Lalu memancarkan ulang jaringan (repeater sederhana),
Langkahnya hampir sama, tapi dengan sedikit tambahan kode:
#include <WiFi.h>
const char* ssid_ap = "ESP32_Repeater";
const char* pass_ap = "12345678";
const char* ssid_sta = "SSID_MODEM_KAMU";
const char* pass_sta = "PASSWORD_MODEM_KAMU";
void setup() {
Serial.begin(115200);
// Hubungkan ke modem (Station mode)
WiFi.mode(WIFI_AP_STA);
WiFi.begin(ssid_sta, pass_sta);
Serial.print("Menyambung ke ");
Serial.println(ssid_sta);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("\nTersambung ke modem!");
// Nyalakan Access Point baru
WiFi.softAP(ssid_ap, pass_ap);
Serial.print("Access Point aktif di: ");
Serial.println(WiFi.softAPIP());
}
void loop() {
// Tidak perlu apa-apa
}
๐ถ Sekarang:
ESP32 akan terhubung ke modem kamu (STA mode)
Dan juga memancarkan Wi-Fi baru bernama “ESP32_Repeater”
Tapi perlu dicatat:
๐ธ Ini bukan repeater penuh NAT/router, hanya Wi-Fi bridge sederhana (tidak semua lalu lintas internet otomatis diteruskan).
Kalau ingin repeater yang benar-benar meneruskan internet, nanti kita bisa pasang firmware NAT ESP32 (resmi dari Espressif) — langkahnya agak lanjut.
๐ Rangkuman Cepat
Tujuan
Kode
Kesulitan
Access Point lokal (tanpa internet)
✅ Mudah
⭐
AP + connect ke modem (bridge sederhana)
✅ Masih mudah
⭐⭐
Repeater penuh (internet diteruskan)
Bisa (firmware NAT)
⭐⭐⭐⭐
๐งญ 1️⃣. Pahami konsep dasar repeater
Sebuah Wi-Fi repeater melakukan dua hal besar:
Fungsi
Keterangan
1. Station (STA) mode
ESP32 terhubung ke Wi-Fi utama (modem/router)
2. Access Point (AP) mode
ESP32 memancarkan sinyal Wi-Fi baru ke HP/laptop
3. NAT/Bridge (opsional)
Data internet dari router diteruskan ke klien di AP
NodeMCU (ESP8266) atau ESP32 bisa melakukan fungsi 1 dan 2 bersamaan.
Tapi agar internet benar-benar diteruskan, dibutuhkan NAT (Network Address Translation) yang hanya bisa berjalan dengan firmware khusus, bukan kode Arduino biasa.
⚙️ 2️⃣. Pilih perangkat yang cocok
Pilihan
Kelebihan
Catatan
ESP32 DevKit (WROOM / DevKit v1)
Dual-core, stabil, bisa AP + STA bersamaan
Paling disarankan
ESP8266 NodeMCU
Bisa juga, tapi kapasitas kecil
Kurang stabil untuk banyak klien
Tambahan opsional
Antena eksternal 2.4 GHz, adaptor 5V 2A
Untuk jangkauan dan daya lebih stabil
๐ 3️⃣. Dua pendekatan membuat repeater
๐ก A. Repeater sederhana (local bridge)
➡️ Bisa dibuat dengan kode Arduino IDE
➡️ ESP32 akan:
Connect ke router utama
Buat Wi-Fi baru (AP)
Klien bisa konek, tapi internet belum diteruskan penuh (cocok untuk jaringan lokal / captive portal / IoT gateway)
๐ Contoh kode sudah saya berikan di atas (“AP + connect ke modem”).
Kelebihan: mudah, bisa langsung jalan.
Kekurangan: internet tidak diteruskan otomatis.
⚙️ B. Repeater penuh (dengan NAT)
➡️ Ini membuat ESP32 benar-benar menjadi Wi-Fi repeater seperti TP-Link, bisa meneruskan internet dari router ke HP/laptop.
Untuk ini kamu butuh:
Firmware NAT resmi dari Espressif, disebut ESP32 NAT Router
Setelah upload, buka Wi-Fi di HP — akan muncul SSID default, misalnya:
ESP32_NAT_Router
Koneksikan HP ke SSID itu
Buka browser → ketik 192.168.4.1
Di sana ada web admin mini untuk setting:
Wi-Fi utama (SSID & password)
Nama Wi-Fi repeater baru (SSID baru)
Setelah diatur dan restart → alatmu siap digunakan.
๐ถ ESP32 kini benar-benar jadi Wi-Fi repeater NAT penuh.
HP/laptop yang terhubung akan dapat internet dari modem utama.
๐งฉ 5️⃣. (Opsional) Ubah jadi alat profesional
Setelah itu kamu bisa kembangkan:
Tambah web interface custom (HTML di SPIFFS)
Tambah monitor kekuatan sinyal
Tambah fitur mesh antar beberapa ESP32
Tambah power amplifier atau antena eksternal untuk jarak lebih jauh
๐ Perbandingan hasil akhirnya
Aspek
ESP32 Repeater
TP-Link Repeater
Internet diteruskan
✅ dengan NAT firmware
✅ otomatis
Stabilitas
Baik (2-3 klien), tergantung sinyal
Sangat stabil (10+ klien)
Kemudahan setup
Sedang (perlu flash firmware)
Sangat mudah (WPS)
Harga
~Rp60–70 ribu
Rp300–400 ribu
Fleksibilitas
Bisa dimodifikasi sesuka hati
Tidak bisa diubah
Kalau kamu mau, saya bisa buatkan tutorial langkah-demi-langkah (dengan link download firmware, cara flash, dan uji koneksi) — supaya kamu benar-benar bisa membuat repeater ESP32 berfungsi seperti TP-Link.
Apakah mau saya bantu buatkan versi itu (lengkap dengan panduan flashing)?
(Ini adalah kode sisipan untuk membuat postingan di blogger, tujuannya untuk mempermudah menambahkan kode yang akan di jelaskan)
<p><b><i>B. SKETCH YANG PERLU DIKETIK:</i></b></p><div style="border: 2px solid black; height: 300px; overflow-x: hidden; overflow-y: scroll; overflow: hidden scroll; width: 500px;"><div style="height: 250%;"><pre>#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2); // alamat 0x27, ukuran LCD 16x2
String teks = "Kebersihan sebagian dari iman. Oleh Eskul Robomadina "; // tambahkan spasi di akhir agar halus
int posisi = 0;
void setup() {
lcd.init();
lcd.backlight();
}
void loop() {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(teks.substring(posisi, posisi + 16)); // tampilkan 16 karakter per langkah
posisi++;
if (posisi > teks.length() - 16) {
posisi = 0; // ulang dari awal
}
delay(300); // atur kecepatan scroll (ms)
}
</pre><div><br /></div></div></div>