37 #endif // HAVE_CONFIG_H
50 #define MAX_DEVICE_COUNT 16
55 main (
int argc,
const char *argv[])
62 pnddDevices = parse_args (argc, argv, &szFound, &verbose);
68 errx (1,
"usage: %s", argv[0]);
71 printf (
"%s use libnfc %s\n", argv[0], acLibnfcVersion);
74 if (!(pnddDevices = malloc (MAX_DEVICE_COUNT *
sizeof (*pnddDevices)))) {
75 fprintf (stderr,
"malloc() failed\n");
83 printf (
"No NFC device found.\n");
86 for (i = 0; i < szFound; i++) {
88 const byte_t btPollNr = 20;
89 const byte_t btPeriod = 2;
91 { .nmt = NMT_ISO14443A, .nbr = NBR_106 },
92 { .nmt = NMT_ISO14443B, .nbr = NBR_106 },
93 { .nmt = NMT_FELICA, .nbr = NBR_212 },
94 { .nmt = NMT_FELICA, .nbr = NBR_424 },
95 { .nmt = NMT_JEWEL, .nbr = NBR_106 },
97 const size_t szModulations = 5;
100 size_t szTargetFound;
106 ERR (
"%s",
"Unable to connect to NFC device.");
127 printf (
"Connected to NFC reader: %s\n", pnd->
acName);
129 printf (
"PN532 will poll during %ld ms\n", (
unsigned long) btPollNr * szModulations * btPeriod * 150);
133 printf (
"%ld target(s) have been found.\n", (
unsigned long) szTargetFound);
134 for (n = 0; n < szTargetFound; n++) {
135 printf (
"T%d: ", n + 1);
136 print_nfc_target ( antTargets[n], verbose );
140 nfc_perror (pnd,
"nfc_initiator_poll_targets");