https://github.com/hoanhan101/pn532
PN532 NFC/RFID Native Python API for your Raspberry Pi
https://github.com/hoanhan101/pn532
iot nfc pn532 python raspberry-pi rfid
Last synced: 8 months ago
JSON representation
PN532 NFC/RFID Native Python API for your Raspberry Pi
- Host: GitHub
- URL: https://github.com/hoanhan101/pn532
- Owner: hoanhan101
- License: mit
- Created: 2019-04-27T20:08:19.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2019-05-20T01:11:07.000Z (about 7 years ago)
- Last Synced: 2025-06-03T16:01:16.649Z (about 1 year ago)
- Topics: iot, nfc, pn532, python, raspberry-pi, rfid
- Language: Python
- Homepage:
- Size: 52.7 KB
- Stars: 23
- Watchers: 2
- Forks: 7
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# pn532
PN532 NFC/RFID Native Python API for your Raspberry Pi.
## Installing
To install the package, simply issue a git clone:
```sh
git clone https://github.com/hoanhan101/pn532.git
```
## Using
### API
There are 2 main methods that we care about at the moment, one is `setup()`
and one is `read()`.
- `setup()` takes an optional boolean parameter, `enable_logging`, which is to
enable debugging messages. This should be always be called first so that the
sensor is initialized and setup properly.
- `read()` returns the card reading value as an array of 11-bytes. This will block and
only return once a card is detected. Sample readings can be found [here](output/raw.txt).
### Examples
Setup the device, get the reading and print it to the console.
```python
from pn532.api import PN532
if __name__== "__main__":
nfc = PN532()
# setup the device
nfc.setup()
# keep reading until a value is returned
read = nfc.read()
print(read)
```
## Developing
To install necessary development tools:
```sh
make init
```
To run tests:
```sh
make test
```
## Reference
- [PN532 data sheet](https://www.nxp.com/docs/en/nxp/data-sheets/PN532_C1.pdf)
- [PN532 user manual](https://www.nxp.com/docs/en/user-guide/141520.pdf)