Go to file
Kumi b1baecaf09
Refactor pin initialization in `MFRC522` class
- Raise error for invalid pin type for `rst` or `cs` if not `int` or `Pin` instance
- Set `self.rst` based on `rst` type
- Set `self.cs` based on `cs` type
2023-08-18 11:50:19 +02:00
examples Added support for WiPy. 2016-05-31 21:15:22 +02:00
.gitignore Current status 2023-08-18 10:47:39 +02:00
LICENSE Current status 2023-08-18 10:47:39 +02:00
README.md Fixed broken table layout. 2016-05-31 21:16:42 +02:00
mfrc522.py Refactor pin initialization in `MFRC522` class 2023-08-18 11:50:19 +02:00

README.md

micropython-mfrc522

(Micro)Python class to access the MFRC522 RFID reader

Basic class to access RFID readers of the type MFRC522. This is basically a re-write of this Python port for the MFRC522. I tried to strip things down and make them more "pythonic" so the result is small enough to run on Micropython boards. I tried the class so far on the ESP8266 and the WiPy.

Usage

Put the modules mfrc522.py, examples/read.py, examples/write.py to the root of the flash FS on your board. For the ESP8266 there are multiple solutions to do that. E.g. use the WebREPL file transfer, or mpfshell.

I used the following pins for my setup:

Signal GPIO ESP8266 GPIO WiPy Note
sck 0 "GP14"
mosi 2 "GP16"
miso 4 "GP15"
rst 5 "GP22"
cs 14 "GP14" Labeled SDA on most RFID-RC522 boards

Now enter the REPL you could run one of the two exmaples:

For detecting, authenticating and reading from a card:

import read
read.do_read()

This will wait for a MifareClassic 1k card. As soon the card is detected, it is authenticated, and 16 bytes are read from address 0x08.

For detecting, authenticating and writing to a card:

import write
write.do_write()

This will wait for a MifareClassic 1k card. As soon the card is detected, it is authenticated, and 16 bytes written to address 0x08.