The NXP reader library is encapsulated into Layers and Components written in ANSI C. The library structure provides a modular way of programming and setting up the reader interface. The reader library consists of layers mentioned below
Each Layer consists of different components having a generic interface and a specific implementation.
Find more information on the usage of the reader library in the related Application Notes [17].
Application Layer
Contains Application specific implementations for various contactless cards like ULTRALIGHT, CLASSIC, Plus, DESFire and so on...
Protocol Abstraction Layer
Contains Hardware-Independent implementations of various contactless protocols.
Hardware Abstraction Layer
The Hardware Abstraction Layer implements the Hardware specific elements of the reader.
-
Component : Callback
It is used to test the whole library. For a real implementation within a reader,
this component has no use.
-
Component : Rc523
Reader Specifics for the RC523. It therefore also covers PN512 and RC522.
-
Component : Rc632
Reader Specifics for the RC632. It therefore also covers RC500, RC530 and RC531.
-
Component : Rc663
Reader Specifics for the RC663. Find more information on this product in [14]
-
Component : Rd70x
Reader Specifics for the RD701 (Pegoda).
-
Component : Rd710
Reader Specifics for the RD710 (Pegoda). Find more information on this product in [15]
-
Component : SamAV2
Specifics on the MIFARE TM SAM AV2. Find more information on this product in [16]
Bus Abstraction Layer
The Bus Abstraction Layer is defining the interface used.
Common Layer
-
KeyStore
Storage of the keys, like MIFARE keys.
-
CryptoRng
Random Number Generator, used for all random numbers to be generated within SW, part of the small footprint library
-
CryptoSym
Symmetric cryptographic algorithms, included in the small footprint library.
-
Cid Manager
The CID manager manages the CID of all cards.
-
Tools
Some tools are attached to calculate the CRC or Parity.
-
Log
Every block has a logging functionality, which can be used.
-
TMI Utilities
Activate, Deactivation and Collection of TMI.
Other
Initialization Sequence