ISS berkesempatan membuat mesin absensi pegawai untuk owner dari sebuah toko UMKM di Bandung. Sistem dirancang untuk mudah dipakai sekalipun oleh pengguna yang sehari-hari tidak memakai komputer. Karena itu, mesin absen menggunakan kartu RFID karena sudah banyak dipakai di Indonesia dan harganya relatif terjangkau (misalnya, kartu e-toll atau e-ktp). Pengguna cukup menyentuhkan kartu di alat pendeteksi. Selain itu, hasil absen diunggah secara otomatis ke google sheet dan dapat dicek dari mana saja dengan sambungan internet.


Perangkat yang digunakan
- Mikrokontroler ESP8266
- LCD 16×2 (I2C)
- MFRC-522
- Kartu RFID mifare 1KB
- Resistor dan LED
- Buzzer
Skema rangkaian dan penjelasan
Mikrokontroler ESP8266 digunakan dengan konfigurasi sebagai berikut:

| Label | GPIO | Penggunaan |
| D0 | GPIO16 | MFRC522 RST |
| D1 | GPIO5 | I2C LCD SCL |
| D2 | GPIO4 | I2C LCD SDA |
| D4 | GPIO2 | Resistor, Buzzer, dan LED |
| D5 | GPIO14 | MFRC522 SCK |
| D6 | GPIO12 | MFRC522 MISO |
| D7 | GPIO13 | MFRC522 MOSI |
| D8 | GPIO15 | MFRC522 SDA |
Adapun resistor yang digunakan adalah pulled-up karena GPIO2 akan gagal boot saat pulled-low1.
Source Code
Source code dari mesin absensi dapat diakses dari link berikut:
Code dibagi dalam 5 file, yaitu:
- attendance.ino (file utama)
- attendance_buzzer_method (mengatur fungsi buzzer)2
- attendance_rfid_method (mengatur fungsi rfid)3
- attendance_wifi_method (mengatur fungsi wifi)
- attendance_gsheet_method (mengatur fungsi google sheet)4
- attendance_time_method (mengatur fungsi waktu)5
Kelima file ini akan digabung secara otomatis saat source code dicompile (penulis menggunakan arduino IDE).
Kesimpulan
Mesin telah digunakan secara rutin tanpa kendala besar. Dari hasil pantauan, ada beberapa hal yang dapat diperbaiki untuk versi berikutnya:
- Waktu mengunggah sekitar 5 detik, ketika koneksi wi-fi tidak baik, bisa mencapai 30 detik, membuat pengguna berikutnya harus menunggu. Mungkin dapat diperbaiki dengan background task menggunakan real time operating system (RTOS).
- Saat mesin dinyalakan padahal koneksi wi-fi belum terhubung, mesin tidak dapat menerima hasil absensi. Mungkin dapat diperbaiki dengan menyimpan hasil absensi, yang akan diunggah saat koneksi wi-fi sudah benar.
Penutup
Di ISS, kami dapat memberikan solusi custom terhadap berbagai masalah teknologi Anda dengan menggunakan software, mikrokontroler, IoT, otomasi. Kami sanggup menyediakan solusi untuk beragam skala bisnis UMKM, silakan kontak ISS dan berdiskusilah dengan kami.
- ESP8266 Pinout Reference: Which GPIO pins should you use? | Random Nerd Tutorials ↩︎
- Tutorial cara menghubungkan buzzer dengan ESP32 – Labrobotika ↩︎
- ESP32 with MFRC522 RFID Reader/Writer (Arduino IDE) | Random Nerd Tutorials ↩︎
- ESP32 Datalogging to Google Sheets (Google Service Account) | Random Nerd Tutorials ↩︎
- Getting Date and Time with ESP32 (NTP Client) | Random Nerd Tutorials ↩︎