whatisgithub

What is adafruit-pn532?

zhovner/adafruit-pn532 — explained in plain English

Analysis updated 2026-07-18 · repo last pushed 2017-10-28

19C++Audience · developerComplexity · 3/5DormantSetup · moderate

In one sentence

An Arduino library forked from Adafruit's PN532 driver that reads and writes RFID and contactless payment cards, with a bigger buffer to support longer EMV card responses.

Mindmap

mindmap
  root((repo))
    What it does
      Read RFID cards
      Talk to PN532 chip
      SPI and I2C support
      Bigger response buffer
    Tech stack
      C++
      Arduino
      PN532 chip
    Use cases
      Access control systems
      Payment card readers
      Loyalty card scanners
    Audience
      Arduino hobbyists
      Hardware developers
    Fixes
      Buffer size increase
      Mifare ID bug note
    Notes
      Fork of Adafruit lib
      Protocol level docs

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build a dorm or office access control reader that authenticates RFID cards wirelessly.

USE CASE 2

Read longer EMV payment card responses that the original Adafruit library's 64-byte buffer couldn't handle.

USE CASE 3

Build a demo payment or loyalty card scanner using an Arduino and PN532 chip.

What is it built with?

C++Arduino

How does it compare?

zhovner/adafruit-pn532diskclaw/sslclawfuzzsociety/usbstackfuzz
Stars191919
LanguageC++C++C++
Last pushed2017-10-28
MaintenanceDormant
Setup difficultymoderateeasyhard
Complexity3/52/54/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 1h+

For 7-byte ID Mifare Classic cards, use only the last 4 bytes when authenticating or you'll get a syntax error.

Copy-paste prompts

Prompt 1
Show me how to wire a PN532 chip to an Arduino over I2C and read a card's ID using this library.
Prompt 2
Explain why this fork increased the response buffer from 64 to 255 bytes and when that matters for EMV cards.
Prompt 3
Help me fix a Mifare Classic authentication error caused by using all 7 ID bytes instead of the last 4.
Prompt 4
Walk me through the command and response format this library sends to the PN532 chip.

Frequently asked questions

What is adafruit-pn532?

An Arduino library forked from Adafruit's PN532 driver that reads and writes RFID and contactless payment cards, with a bigger buffer to support longer EMV card responses.

What language is adafruit-pn532 written in?

Mainly C++. The stack also includes C++, Arduino.

Is adafruit-pn532 actively maintained?

Dormant — no commits in 2+ years (last push 2017-10-28).

How hard is adafruit-pn532 to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is adafruit-pn532 for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.