> For the complete documentation index, see [llms.txt](https://docs.mtoolstec.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mtoolstec.com/hardware/rfid-nfc-and-uhf-hardware/all-in-one-pn532/quickstart.md).

# 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.

```bash
# 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:

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

Activate the environment:

```bash
# Linux / macOS
source .venv/bin/activate
```

```powershell
# Windows PowerShell
.venv\Scripts\Activate.ps1
```

Then install dependencies and start the client:

```bash
python -m pip install -r script/requirements.txt
python script/pn532_cli_main.py
```

## Scan a Tag

At the interactive CLI prompt:

```
hw connect
hw version
hf 14a scan
```

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

```
hw connect -p COM3
```

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](/hardware/rfid-nfc-and-uhf-hardware/all-in-one-pn532/mobile-apps.md) or [Host Software and Development](/hardware/rfid-nfc-and-uhf-hardware/all-in-one-pn532/host-development.md).
