RFID data logger

NodeMCU with RFID reader, SD card logger, and OLED screen

Similar projects worth following
The SD card contains a csv file with the RFID tag ID - User Name pairs, and it contains a csv log file as well. So the NodeMCU connects to the internet to get the correct current time. Then it waits for RFID tags. The OLED screen shows the name of the card's owner (and other debug messages). Finally NodeMCU saves the log to the SD Card. You can access the log through the webpage of the NodeMCU as well.

It is not an overoptimized project. Please help me with your suggestions to make it better.

Wiring Up:

Current Firmware:

  • 1 × NodeMcu ESP8266 V3 - WIFI Internet Development Board Module
  • 1 × SD Card Module Slot Socket Reader For Arduino
  • 1 × 125K EM4100 RFID Card Reader Module RDM6300 Be aware that not 125K is the only frequency for RFID
  • 1 × 0.91'' 128x32 IIC I2C OLED Display Module

  • Wiring up

    borazslo03/07/2017 at 21:31 0 comments

    125Khz RFID module - NodeMCU: softwareSerial communication

    • RFID P1 PIN1 TX - NodeMCU D3 (It can be changed in the code.)
    • RFID P1 PIN2 RX - NodeMCU D4 (It can be changed in the code.)
    • RFID P1 PIN3 - - -
    • RFID P1 PIN4 GND - NodeMCU GND
    • RFID P1 PIN5 +5V(DC) - NodeMCU VV

    +5V DC should be detached during firmware upload, because NodeMCU D3 is used also for FLASH.

    SD Card SLOT - NodeMCU: SPI communication

    • SD Card Slot GND - NodeMCU GND
    • SD Card Slot +3.3V - NodeMCU 3V
    • SD Card Slot +5V - -
    • SD Card Slot CS - NodeMCU D8 (It can be changed in the code.)
    • SD Card Slot MOSI - NodeMCU D7
    • SD Card Slot SCK - NodeMCU D6
    • SD Card Slot MISO - NodeMCU D5
    • SD Card Slot GND - -

    128x32 OLED Display - NodeMCU: I2C communication

    • OLED GND - NodeMCU GND
    • OLED VCC - NodeMCU 3V (!)
    • OLED SCL - NodeMCU D1
    • OLED SDA - NodeMCU D2
    • There is no OLED Reset pin on my OLED display. In the code we need to attache a pin number to OLED Reset. I choose D9. So I have no Serial Monitor, but I have everything else. It can be D0 as well, if there is no buzzer attached to D0.

    Buzzer - NodeMCU

    • Connected as usual. Now between NodeMCU D2 - NodeMCU GND

    NodeMCU D0 is used during flash of new firmware, so the buzzer needs to be disconnected during firmware update.

    Please give me suggestions how to optimize these connections. How can I use for example A0, S3, S2, S1, SC, S0, SK, EN pins of NodeMCU?

View project log

Enjoy this project?



o.gltp34 wrote 11/27/2022 at 21:00 point

Hello, the project is excellent. It works very well. I tried all the details. But I have a problem. How can I change the time difference (utc+3) according to the country I live in. Thank you

  Are you sure? yes | no

aji2207ok wrote 01/25/2019 at 08:20 point

can i see your program??

  Are you sure? yes | no

JRS wrote 03/08/2018 at 02:54 point

Sd2 and sd3 can be used as gpio9 and gpio10.

  Are you sure? yes | no

agforceteam2k17 wrote 01/12/2018 at 17:24 point

How can I contact  you ? 

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates