Kamis, 17 Januari 2019

Interfacing PN532 dengan NodeMCU

PN532 adalah salah satu chip NFC, dan tertanam pada kebanyakan smartphone maupun peralatan NFC dengan kemampuan pembacaan dan penulisan tags maupun cards.

PN532 adalah cukup fleksible dengan kemampuan komunikasi melalui modus HSU, I2C maupun SPI.

Pada penulisan ini kita akan meggunakan modus I2C yang hanya membutuhkan 4 kabel yang menghubungkan antara PN532 dengan NodeMCU, yaitu pin VCC, GND, SDA, dan SCL

Untuk menggunakan modus I2C, perlu dipastikan terlebih dahulu setting pada
broad adalah:
- SEL0 adalah High (On)
- Sel1 adalah low (Off)


Perkabelan yang dilakukan:
1. Pin GND ke GND di NodeMCU
2. Pin VCC ke VCC di NodeMCU
3. Pin SDA ke D2 di NodeMCU
4. Pin SCL ke D1 di NodeMCU



Persiapan IDE Sketch

Kemudian lakukan persiapan pada IDE Sketch, dengan mendownload library tambahan yang perlu ditambahkan ke IDE Sketch sehingga proses kompilasi dapat berjalan dengan baik:
- Download Library Tambahan PN532

Setelah download, maka lakukan proses unzip, sehingga akan muncul beberapa folder sebagai berikut:
- NDEF
- PN532
- PN532_I2C






Tambahkan masing-masing folder ke library IDE Skecth anda dengan menggunakan pilihan Sketch, Include Library, add .ZIP library, kemudian import folder diatas satu-per-satu, dan juga  memperhatikan status keberhasilan dari proses import, pastikan tidak ada kegagalan.





Pembuatan Koding

Untuk menguji keberhasilan dari proses perkabelan dan persiapan IDE Sketch, maka dilakukan koding sebagai berikut:

#include <Wire.h>
#include <PN532_I2C.h>
#include <PN532.h>
#include <NfcAdapter.h>

PN532_I2C pn532_i2c(Wire);
NfcAdapter nfc = NfcAdapter(pn532_i2c);

void setup(void) {
    Serial.begin(9600);
    Serial.println("NDEF Reader");
    nfc.begin();
}

void loop(void) {
    Serial.println("\nScan a NFC tag\n");
    if (nfc.tagPresent())
    {
        NfcTag tag = nfc.read();
        tag.print();
    }
    delay(5000);
}

Klik pada verifikasi pada Skecth, pastikan semua berjalan lancar
Klik pada upload pada sketch, pastikan semua berjalan lancar

Aktifkan Serial Monitor dan pastikan setting ke 9600baud


Dan jika di scan NFC Tag


NFC Tag - NFC Forum Type 2
UID 53 34 5E 54 00 A1 80

NDEF Message 1 record, 3 bytes
  NDEF Record
    TNF 0x0 Empty
    Type Length 0x0 0
    Payload Length 0x0 0
    Type  
    Payload  
    Record is 3 bytes

Dan jika di scan RFID Tag


Tag is not NDEF formatted.
NFC Tag - Mifare Classic
UID D0 51 3A 1B

No NDEF Message

Selamat Mencoba.