Lewati ke konten

Gerbang perumahan yang cerdas, tercatat, dan terpantau.

Gatewise membuka palang otomatis dengan kartu RFID, memastikan kendaraan lewat dengan sensor IR, dan mengirim setiap aktivitas ke dashboard hampir real-time.

2 jalur
Masuk & keluar mandiri
Lokal
Keputusan buka gate di ESP32
Tetap jalan
Saat jaringan internet mati
ESP32 DevKit C240 MHz • SPI
Ilustrasi • palang terbukaSimulasi 2D

Alur kerja sistem

Dari tap kartu sampai tercatat di dashboard

  1. 1

    Tempel kartu

    Pembaca RFID membaca UID kartu penghuni saat kartu ditempelkan ke pembaca.

  2. 2

    Verifikasi lokal

    ESP32 mencocokkan UID dengan daftar kartu yang tersimpan di memorinya, tanpa menunggu respons server.

  3. 3

    Palang terbuka

    Servo membuka palang, sensor IR memastikan kendaraan lewat, lalu palang menutup kembali.

  4. 4

    Tercatat

    Setiap kejadian dikirim ke server dan tampil di Log Akses dashboard. Saat internet mati, log antre dan dikirim ulang.

Simulasi interaktif

Lihat gate bekerja

Pilih skenario dan amati apa yang terjadi di gerbang. Ini simulasi 2D di browser, tanpa perangkat atau server.

Palang: Tertutup (0°)

LCD: SIAP

LCD menampilkan SIAP. Palang tertutup.

Klik salah satu skenario untuk menjalankan simulasi:

Log langsung

Contoh
  • 10:42:15MasukA1B2C3D4Diizinkan
  • 10:39:04KeluarE5F6A7B8Diizinkan
  • 10:35:21Masuk99A8B7C6Ditolak
  • 10:28:44Masuk—Darurat

Status perangkat

RFID (MFRC522)
Siaga
Servo SG90
0° (Tertutup)
Sensor IR
Tidak ada kendaraan
Indikator LED
Padam (siaga)

Simulasi mengikuti logika firmware: keputusan dibuat sendiri oleh ESP32, lalu kejadian dikirim ke dashboard.

Fitur utama

Sederhana, tapi mencakup yang penting

Dirancang tanpa kompleksitas berlebih agar stabil, cepat, dan mudah dipelihara oleh pengelola lingkungan.

  • Log akses real-time

    Pantau kendaraan masuk dan keluar lengkap dengan waktu, UID, dan status verifikasi langsung dari dashboard.

  • Kelola & nonaktifkan kartu

    Tambah, edit, nonaktifkan, atau hapus kartu penghuni dari dashboard. Perubahan berlaku di gerbang setelah sinkronisasi berikutnya, paling lama 5 menit.

  • Hitung kendaraan di dalam

    Jumlah kendaraan di dalam area kompleks selalu terlihat di beranda, dihitung dari selisih gerbang masuk dan keluar.

  • Tetap jalan tanpa internet

    Keputusan buka gate dibuat lokal di ESP32 dari daftar kartu yang tersimpan. Log antre di memori dan terkirim saat koneksi pulih.

  • Tombol darurat

    Buka gate manual lewat tombol fisik saat darurat, misalnya untuk ambulans atau damkar. Tetap tercatat sebagai kejadian darurat.

  • Status gate

    Lihat apakah perangkat gate online atau offline dan kapan terakhir aktif, langsung dari beranda dashboard.

Hardware & bill of materials

Perangkat keras yang digunakan

Komponen standar prototyping IoT yang murah dan mudah didapat di pasaran.

  • ×1

    ESP32 DevKit C

    Otak sistem & WiFi 2.4 GHz

  • ×2

    RFID MFRC522

    Pembaca kartu jalur masuk & keluar

  • ×2

    Servo SG90

    Penggerak palang gate

  • ×2

    Sensor IR

    Deteksi kendaraan lewat

  • ×1

    LCD 1602 I2C

    Menampilkan nama & status gate

  • ×4

    LED Hijau / Merah

    Indikator diizinkan / ditolak

  • ×2

    Tombol Darurat

    Buka gate manual di pos

Peta Pin ESP32 (wiring matrix)

Pin strapping (0, 2, 12, 15) dihindari untuk output.

SPI • I2C • PWM
Peta pin ESP32 untuk setiap komponen
Modul / komponenFungsi pinGPIO ESP32Mode
RFID Masuk (MFRC522)SS / RSTGPIO 5 • 16SPI (SCK 18, MISO 19, MOSI 23)
RFID Keluar (MFRC522)SS / RSTGPIO 17 • 4SPI, bus bersama
Servo Gate MasukSinyal PWMGPIO 13PWM 50 Hz
Servo Gate KeluarSinyal PWMGPIO 14PWM 50 Hz
LCD 1602SDA / SCLGPIO 21 • 22I2C (0x27)
Sensor IR (Masuk & Keluar)Input digitalGPIO 34 • 35Input-only, pull-up eksternal, aktif LOW
Tombol Darurat (Masuk & Keluar)Push buttonGPIO 36 • 39Input-only, pull-up eksternal, aktif LOW
LED Masuk (hijau, merah)Output digitalGPIO 25 • 26Resistor 220 Ω
LED Keluar (hijau, merah)Output digitalGPIO 27 • 32Resistor 220 Ω

Topologi sistem

Alur data dari gerbang ke dashboard

Arsitektur hybrid: keputusan buka gate di tepi (ESP32) agar tetap andal tanpa internet, pengelolaan terpusat di cloud.

Diagram alur data

  1. ESP32 + sensor

    Pengendali gate di lokasi

    Keputusan lokal

  2. Vercel • Next.js

    API serverless

    Auth x-device-key

  3. Neon Postgres

    Log, kartu, perangkat

    Drizzle ORM

  4. Dashboard

    Pemantauan admin

    Polling 5 detik

  • POST /api/device/event
  • GET /api/device/cards
  • POST /api/device/ping

Tech stack

Fondasi teknologi yang dipakai pada Gatewise.

  • Next.js
  • TypeScript
  • Tailwind CSS
  • shadcn/ui
  • Drizzle ORM
  • Neon Postgres
  • SWR
  • Vercel
  • Arduino C++

Prinsip desain penting

Gate memutuskan buka atau tidaknya palang secara lokal. Server hanya menerima log, menyediakan daftar kartu, dan mencatat waktu terakhir perangkat aktif.

Tampilan antarmuka

Pantau semuanya dalam satu layar

Dashboard responsif: tampilan multi-kolom di desktop dan navigasi bawah yang nyaman di ponsel.

Beranda

Diperbarui otomatis setiap 5 detik

Gate Utama • Online
Akses hari ini
128
Kendaraan di dalam
42
Kartu aktif
86
Aktivitas terbaruPembaruan otomatis
  • Budi SantosoB-12Diizinkan
  • Siti RahmahA-03Diizinkan
  • Tidak dikenal—Ditolak
Contoh tampilan. Data di atas hanya ilustrasi.
  • Ringkasan harian

    Jumlah akses, kartu ditolak, dan kendaraan di dalam dalam satu layar.

  • Log akses dengan filter

    Saring log berdasarkan periode, gate, tipe, dan status verifikasi.

  • Manajemen kartu

    Tambah, nonaktifkan, atau hapus kartu dari dashboard tanpa mengubah firmware.

Proyek terbuka

Firmware dan aplikasi web dalam satu repositori

Firmware ESP32 dan aplikasi web berada dalam satu monorepo.

Arduino C++ (ESP32)

firmware/

Driver RFID MFRC522, kendali servo palang, tombol darurat, sensor IR, cache kartu di NVS, dan antrean event yang dikirim ulang saat offline.

Next.js + Drizzle ORM

web/

Landing page, dashboard admin, endpoint REST untuk perangkat, dan skema database Postgres.

firmware/src/main.cpp • cuplikan ilustrasi
#include <SPI.h>#include <MFRC522.h>#include <ESP32Servo.h>// Baca kartu pada jalur masuk dan verifikasi dari cache lokalvoid handleCard(MFRC522 &rfid, Gate &gate) {  if (!rfid.PICC_IsNewCardPresent() || !rfid.PICC_ReadCardSerial()) return;  String uid = uidToString(rfid.uid.uidByte, rfid.uid.size);  bool allowed = cardCache.contains(uid);   // tanpa menunggu server  if (allowed) {    gate.open();                            // servo ke 90°, LED hijau    eventQueue.push(uid, GATE_IN, true);    // dikirim saat gate idle  } else {    gate.reject();                          // LED merah, servo tetap tertutup    eventQueue.push(uid, GATE_IN, false);  }}

Struktur folder repositori

gatewise/├── firmware/  # Arduino C++ ESP32│   └── src/  # main.cpp, config.h, modul gate/rfid/net/queue└── web/  # Next.js    ├── app/  # landing, dashboard, API    ├── lib/  # DB, auth, validator    └── drizzle/  # migrasi database

Tanya jawab

Pertanyaan yang sering diajukan

Seputar cara kerja, keandalan jaringan, dan batasan sistem.

Siap melihat Gatewise bekerja?

Jalankan simulasi interaktif di browser atau masuk ke dashboard admin untuk melihat log dan mengelola kartu.