Your company here — click to reach over 10,000 unique daily visitors

nfc-relay-picc - Man Page

Relay demonstration tool for ISO14443-4





This tool requires two NFC devices. One device (configured as target) will emulate an ISO/IEC 14443-4 type A tag, while the second device (configured as initiator) will act as a reader. The genuine tag can be placed on the second device (initiator) and the tag emulator (target) can be placed close to the original reader. All communication is now relayed and shown in the screen on real-time.

tag <---> initiator (relay) <---> target (relay) <---> original reader



   List options


Quiet mode
   Suppress printing of relayed data (improves timing)


Target mode only (to be used on reader side)
   Commands are sent to file descriptor 4
   Responses are read from file descriptor 3


Initiator mode only (to be used on tag side)
   Commands are read from file descriptor 3
   Responses are sent to file descriptor 4


Swap roles of found devices
   Usually the first found device is used as target (emulator) and the second
   as initiator (reader). Using this option these roles are inversed.

-n N

Adds a waiting time of N seconds (integer) in the loop


Basic usage:


Remote relay over TCP/IP:

   "EXEC:nfc-relay-picc -i,fdin=3,fdout=4"
   "EXEC:nfc-relay-picc -t,fdin=3,fdout=4"


There are some differences with nfc-relay:

This example only works with PN532 because it relies on its internal handling of ISO14443-4 specificities.

Thanks to this internal handling & injection of WTX frames, this example works on readers very strict on timing.


Please report any bugs on the libnfc issue tracker at:


libnfc is licensed under the GNU Lesser General Public License (LGPL), version 3.
libnfc-utils and libnfc-examples are covered by the the BSD 2-Clause license.

This manual page is licensed under the terms of the GNU GPL (version 2 or later).


October 12, 2010 libnfc NFC Utilities