2011-10-01 14:26:11 +02:00
|
|
|
.TH nfc-emulate-tag 1 "October 8, 2010" "libnfc" "libnfc's examples"
|
2010-10-08 16:45:48 +02:00
|
|
|
.SH NAME
|
|
|
|
nfc-emulate-tag \- Simple tag emulation command line demonstration tool
|
|
|
|
.SH SYNOPSIS
|
|
|
|
.B nfc-emulate-tag
|
|
|
|
.SH DESCRIPTION
|
|
|
|
.B nfc-emulate-tag
|
2010-10-08 21:24:54 +02:00
|
|
|
is a simple tag emulation tool that demonstrates how emulation can be done
|
2010-10-08 16:45:48 +02:00
|
|
|
using libnfc.
|
|
|
|
|
2010-10-08 21:24:54 +02:00
|
|
|
Currently, this tool partially emulates a Mifare Mini: it is detected as
|
|
|
|
Mifare Mini but internal MIFARE proprietary commands are not yet implemented.
|
2010-10-08 16:45:48 +02:00
|
|
|
|
|
|
|
To be able to emulate a target, there are two main parts:
|
|
|
|
- communication: handle modulation, anticollision, etc.
|
|
|
|
- computation: process commands (input) and produce results (output).
|
|
|
|
|
2010-10-08 21:24:54 +02:00
|
|
|
This demonstration tool proposes a logical structure to handle communication and
|
2010-10-08 16:45:48 +02:00
|
|
|
a simple function to deal with computation.
|
|
|
|
|
|
|
|
To improve the target capabilities, we can now implement more allowed commands
|
|
|
|
in a single function: target_io()
|
|
|
|
|
2010-10-08 21:24:54 +02:00
|
|
|
Please note that, due to timing issues, it is very difficult to implement an
|
|
|
|
ISO14443-4 tag this way: RATS request expects a quick ATS answer. By the way,
|
|
|
|
even if you implement another kind of tag, timing issues are often the source of
|
2010-10-08 16:45:48 +02:00
|
|
|
problems like CRC or parity errors.
|
2010-10-08 21:24:54 +02:00
|
|
|
The OmniKey CardMan 5321 is known to be very large on timings and is a good
|
|
|
|
choice if you want to experiment with this emulator with a tolerant reader.
|
2010-10-08 16:45:48 +02:00
|
|
|
|
2010-10-18 17:17:31 +02:00
|
|
|
.SH IMPORTANT
|
|
|
|
ACR122 devices (like touchatag, etc.) can be used by this example (with
|
|
|
|
probably timing issue), but if something goes wrong, you will have to
|
|
|
|
unplug/replug your device. This is not a
|
|
|
|
.B libnfc's
|
|
|
|
bug, this problem is due to ACR122's internal MCU in front of NFC chip (PN532).
|
2010-10-08 16:45:48 +02:00
|
|
|
.SH BUGS
|
|
|
|
Please report any bugs on the
|
|
|
|
.B libnfc
|
2011-10-01 14:26:11 +02:00
|
|
|
issue tracker at:
|
|
|
|
.br
|
2015-04-30 14:19:03 +02:00
|
|
|
.BR https://github.com/nfc-tools/libnfc/issues
|
2010-10-08 16:45:48 +02:00
|
|
|
.SH LICENCE
|
|
|
|
.B libnfc
|
2011-10-01 14:26:11 +02:00
|
|
|
is licensed under the GNU Lesser General Public License (LGPL), version 3.
|
|
|
|
.br
|
|
|
|
.B libnfc-utils
|
2010-10-08 16:45:48 +02:00
|
|
|
and
|
|
|
|
.B libnfc-examples
|
2011-10-01 14:26:11 +02:00
|
|
|
are covered by the the BSD 2-Clause license.
|
2010-10-08 16:45:48 +02:00
|
|
|
.SH AUTHORS
|
|
|
|
Romuald Conty <romuald@libnfc.org>
|
|
|
|
.PP
|
|
|
|
This manual page was written by Romuald Conty <romuald@libnfc.org>.
|
|
|
|
It is licensed under the terms of the GNU GPL (version 2 or later).
|