Commit graph

931 commits

Author SHA1 Message Date
Romuald Conty
5af845cdfc Broke whole the libnfc :-)
use a new way to handle drivers
use absolute include path instead of relative ones
move some nfc_device_t members in a better place
nfc_device_t now embeddeds driver data and chip data pointers (useful to be more generic)
use more readable variables instead of strange coding convention
move PRINT_HEX macro into nfc-internal.h
silent warnings with more strict CFLAGS
chips/pn53x: use the powerful C99 writing to construct PN53x commands
chips/pn53x: remove almost all memcpy()
chips/pn53x: WriteRegister, ReadRegister and SetParameters command wrappers are correctly named
chips/pn53x: introduce chip state (SLEEP, NORMAL or EXECUTE)
chips/pn53x: add SAMConfiguration command wrapper (need to be improved)
chips/pn53x: remove almost all const arrays
chips/pn53x: use human readable defines for commands instead of hex values
chips/pn53x: in debug mode, the PN53x command is shown in human-readable string, awesome isn't it? ;-)
drivers: split transceive() into send() and receive() to be able to handle more cases (differed replies, abort commands, etc) later
drivers: use a const structure of functions instead of -dirty- callbacks array
drivers/pn532_uart: major improvement of UART handling
drivers/pn532_uart: check PN53x frames when received
buses/uart: receive() is now based on expected bytes instead of calculated timeouts..
buses/uart: use a smart way to determine available ports on POSIX systems (tested on Linux and FreeBSD)
2011-03-02 15:00:44 +00:00
Romuald Conty
b4d23795de Prepare 1.4.2 version 2011-02-22 14:17:20 +00:00
Romuald Conty
2ad6591f31 pn532_uart: fix pn532 wakeup response handling 2011-02-15 18:08:35 +00:00
Romuald Conty
695dc75037 uart: fix remaining bytes computation 2011-02-15 18:06:24 +00:00
Romuald Conty
e110a78de7 uart: do not reload static timeout as it is already past (static timeout is used to compensate response delay) 2011-02-14 13:24:42 +00:00
Romuald Conty
555c32015c uart: prevent from retrieving more than buffer length (potential buffer overflow) 2011-02-14 13:23:39 +00:00
Romuald Conty
243100b676 Silent some compilation warnings (Fixes Issue 145) 2011-02-10 10:38:21 +00:00
Romuald Conty
91419f8ad3 chip/pn53x: set register directly if mask cover whole value. 2011-02-01 21:38:25 +00:00
Romuald Conty
58ad2a5760 Add new supported device: ASK / LoGO. (Thanks to ASK for sending one sample of this device) 2011-02-01 21:20:48 +00:00
Romuald Conty
659d7a9de1 Prepare 1.4.1 version 2011-02-01 09:49:41 +00:00
Emanuele Bertoldi
35188bff25 Removed hard-coded size of ack frame. 2011-01-28 10:22:21 +00:00
Emanuele Bertoldi
eae07f1977 Improved UART communication on POSIX systems:
- Added "dynamic timeout" to "uart_send" function.
- Added "static timeout" to each iteration of the while loop (it seems to solve a lot of sync troubles during read operation). 
(Tested with PN532).
2011-01-18 11:35:23 +00:00
Emanuele Bertoldi
b58816df05 Fixed issue #139: serial autoprobe now skips invalid devices but checks all ports in the list. 2011-01-14 16:39:02 +00:00
Roel Verdult
55be1debaf added include for MIN macro, fixed typo in determin buffer size 2011-01-11 12:04:42 +00:00
Romuald Conty
0f8c23bddd Inform user if target UID can be emulated
New error: ETGUIDNOTSUP raised when UID is not 4 bytes long or does not start with 0x08 (Security restriction present in the NXP PN53x chips)
2011-01-07 16:15:18 +00:00
Romuald Conty
ba1db2f406 chips/pn53x: name commands like user manual 2011-01-06 14:52:45 +00:00
Romuald Conty
88c14f5d4b Oops, revert wrong file commit 2011-01-06 14:06:01 +00:00
Romuald Conty
556918b298 Add some manual tests with ARYGON APDB2UA33. 2011-01-06 14:04:48 +00:00
Romuald Conty
432eff0f7d Fix polling on ARYGON devices 2011-01-06 14:00:05 +00:00
Romuald Conty
dd8ec29bb4 chips/pn53x: prefer pn53x_transceive() when possible. 2011-01-06 13:59:20 +00:00
Romuald Conty
6edb5a3bef Fix reply frame length for InAutoPoll 2011-01-06 13:20:45 +00:00
Romuald Conty
6ca32fbfb9 Fix reply length from transceive bits/bytes functions 2011-01-06 13:07:38 +00:00
Romuald Conty
1d085f21c9 Improve PN53x frame size calculation.
chips/pn53x: adjust size and defines to better handle reply size;
drivers/arygon: improve attempted reply size, should speed up the connexion;
drivers/pn532_uart: improve attempted reply size, should speed up the connexion;
2011-01-06 12:39:29 +00:00
Romuald Conty
26b26f9783 Comment out debug messages and use MIN() macro from <sys/param.h> 2011-01-06 12:31:31 +00:00
Romuald Conty
53c8917353 Attempt fix some UART timeouts, should also allow lower devices to be detected. 2010-12-30 10:01:06 +00:00
Romuald Conty
ba37313cb8 Prevent from stack corruption when using PN533-based device and add errors handling for ReadRegister and WriteRegister. (Fixes Issue 135) 2010-12-29 14:01:14 +00:00
Romuald Conty
6aa07aa78b Add extra dist to make distcheck pass and force distcheck to compile all drivers 2010-11-17 10:14:26 +00:00
Romuald Conty
835823809f Split UART implementations: POSIX and Windows
It could ease to port to other system like MiKey and it should be easy to track which is the concerned OS while uart driver is modified.
2010-11-17 08:48:03 +00:00
Romuald Conty
58dcf63e7c MERGE: libnfc-mingw-cross merge with trunk (r805-821) 2010-11-17 08:29:41 +00:00
Romuald Conty
6df612a364 Errors use #define instead of constant values.
Update Issue 84
Current 'ident' command breaks commit-concerned lines.
2010-11-15 18:50:53 +00:00
Philippe Teuwen
779fdd5df6 Tweaks Touchatag detection under MacOSX (Fixes issue 128) 2010-11-15 13:00:07 +00:00
Romuald Conty
6e29450d69 Fix memory leak while using *_pick(). Thanks to frankmorgner (Fixes Issue 130) 2010-11-12 19:24:20 +00:00
Romuald Conty
6e70cfa5ef Fix UART default serial ports under Linux. 2010-11-12 18:38:47 +00:00
Romain Tartiere
4e5d0766e1 Rename append_iso14443a_crc() to iso14443a_crc_append(). 2010-10-29 10:59:26 +00:00
Romuald Conty
5c8749c63e drivers/arygon: retrieve ARYGON firmware version 2010-10-22 15:21:06 +00:00
Romuald Conty
8798f6bbcd Fix ARYGON driver:
- Does not send any ACK frame at start: my ARYGON does get happy with this frame (see code comments)
 - Send a TAMA reset (for PN532) instead of ACK frame
 - Remove bzero use: its a deprecated function
2010-10-22 14:29:44 +00:00
Romuald Conty
ca8c5cabe1 Fix minor compilation warnings 2010-10-22 14:25:09 +00:00
Romuald Conty
1a320d5577 Adjust uart's timeout from baud rate 2010-10-22 14:10:36 +00:00
Romuald Conty
97cf9e925b Attempt to fix ARYGON driver 2010-10-20 16:14:53 +00:00
Romuald Conty
72d7b66d2b Handle more corner case during convertion from nfc_* types to available pn53x_* types 2010-10-20 09:28:36 +00:00
Romuald Conty
5538fbd20f Add NBR_847 (used with ISO14443B) and update convert function. 2010-10-20 08:34:06 +00:00
Romuald Conty
f249af6266 Add ISO14443-4 modulation to hardware polling only when NDO_AUTO_ISO14443_4A have been enabled and document this features and known issues. 2010-10-19 09:34:18 +00:00
Philippe Teuwen
f75d2d3582 Typo 2010-10-18 16:17:01 +00:00
Romuald Conty
f9391ad823 Update some TODOs 2010-10-18 15:47:56 +00:00
Romuald Conty
b5d85fc6e1 Decode supported modulation from PN53x 2010-10-18 14:26:49 +00:00
Romuald Conty
bfb49b594f Clean the way to retrieve firmware 2010-10-18 13:19:30 +00:00
Romuald Conty
c6c43afc87 Minor FIXME or XXX removes 2010-10-18 12:22:04 +00:00
Romuald Conty
7d59b6b1a3 Make sure the field is disabled then enabled before listing.
Improve documentation about default configuration values.
2010-10-18 10:11:30 +00:00
Romuald Conty
ecc1eeca8f API documentation improvement: explain a bit what is pbtInitData for nfc_initiator_select_passive_target() 2010-10-18 09:53:14 +00:00
Romuald Conty
1f62e9e2f2 Improve API for target emulation, nfc_target_mode_t does not exist anymore (this mode is computed from nfc_target_t) 2010-10-15 14:32:10 +00:00