For the complete documentation index, see llms.txt. This page is also available as Markdown.

Connect and Scan

Start with a direct USB connection and a single ISO14443A tag.

Connect the Reader

  1. Set the mode switch to USB. On revisions with a RUN / CONFIG switch, select RUN.

  2. Connect a USB data cable. Close other apps or serial monitors using the reader.

  3. Identify its serial port. Windows lists it under Ports (COM & LPT); install the matching CH340 driver if necessary.

# Linux
ls /dev/ttyUSB* /dev/ttyACM* 2>/dev/null

# macOS
ls /dev/cu.*

Install PN532 CLI

Install Python 3.9 or later and Git. These commands select the stable branch:

git clone --branch main https://github.com/whywilson/pn532-python.git
cd pn532-python
python3 -m venv .venv

Activate the environment:

# Linux / macOS
source .venv/bin/activate

Then install dependencies and start the client:

Scan a Tag

At the interactive CLI prompt:

Select a port explicitly if auto-detection chooses another device:

Replace COM3 with your actual port, such as /dev/ttyUSB0 on Linux. The scan should return identification information for a compatible tag. A successful connection with no tag detected means the host link is working; reposition the tag and retry.

Connection Troubleshooting

Symptom
Check

No serial device

Use a data cable, select USB, and check the USB serial driver

Port busy

Close MTools, another CLI session, and serial monitors

Linux permission denied

Use your distribution's serial-access group and sign in again after changing membership

CLI detects PN532Killer

Check the connected hardware; use the PN532Killer product guide

No tag detected

Use one supported tag, center it over the antenna, and remove nearby tags

Continue with Mobile Apps and Bluetooth or Host Software and Development.