PN532 breakout boards carry a pair of DIP switches or solder jumpers that select the host interface. The chip does not autodetect. If the selector says I²C and you have wired a serial adapter to the TX and RX pins, everything is connected correctly and nothing will ever answer — which reads exactly like a dead board.
Once the selector matches the wiring, do not start with a card. Ask the chip to identify itself first, because that separates "my host link is wrong" from "my antenna or card is wrong" in one step. GetFirmwareVersion is command code 0x02 in the PN532 command set, takes no arguments, and answers with the chip identifier and version.
| Command | Code | Use it to |
|---|---|---|
| GetFirmwareVersion | 0x02 | Prove the host link works at all. Always the first command. |
| SAMConfiguration | 0x14 | Put the chip in normal mode. Skipping it is why a board answers version queries and then ignores cards. |
| InListPassiveTarget | 0x4A | Find a card in the field and get its identifier. |
| InDataExchange | 0x40 | Send an APDU to the card you just found. This is the one that carries EMV. |
| InCommunicateThru | 0x42 | Send raw frames without the chip managing the protocol for you. |