Professional Documents
Culture Documents
H11020-3e-ID-B
H11020-3e-ID-B
H11020-3e-ID-B
=== Ende der Liste für T extm arke Deckbl att ===
Manual
ID CPR30+
H11020-3e-ID-B
IDENTIFICATION
Note
Note
© Copyright by
With the edition of this document, all previous editions become void. Indications made in this manual may be
changed without previous notice.
Copying of this document and giving it to others and the use or communication of the contents thereof are
forbidden without express authority. Offenders are liable to the payment of damages. All rights are reserved
in the event of the grant of a patent or the registration of a utility model or design.
Composition of the information in this document has been done to the best of our knowledge.
FEIG ELECTRONIC GmbH does not guarantee the correctness and completeness of the details given in this
manual and may not be held liable for damages ensuing from incorrect or incomplete information. Since,
despite all our efforts, errors may not be completely avoided, we are always grateful for your useful tips.
The instructions given in this manual are based on advantageous boundary conditions.
FEIG ELECTRONIC GmbH does not give any guarantee promise for perfect function in cross environments
and does not give any guarantee for the functionality of the complete system which incorporates the subject
of this document.
FEIG ELECTRONIC GmbH calls explicit attention that devices which are subject of this document are not
designed with components and testing methods for a level of reliability suitable for use in or in connection
with surgical implants or as critical components in any life support systems whose failure to perform can
reasonably be expected to cause significant injury to human health. To avoid damage, injury, or death the
user or application designer must take reasonably prudent steps to protect against system failures.
FEIG ELECTRONIC GmbH assumes no responsibility for the use of any information contained in this
document and makes no representation that they are free of patent infringement. FEIG ELECTRONIC GmbH
does not convey any license under its patent rights nor the rights of others.
Page 2 of 136
IDENTIFICATION ID CPR30+
General information
• If bits within one byte are filled with “-“ these bit spaces are reserved for future extensions or for
internal testing and manufacturing functions. These bit spaces must not be changed, as this may
cause faulty operation of the reader.
Page 3 of 136
IDENTIFICATION ID CPR30+
Content
Contents
2 Abbreviation 9
3 Introduction 10
Page 5 of 136
IDENTIFICATION ID CPR30+
10 ANNEX 127
Page 6 of 136
IDENTIFICATION ID CPR30+
Page 7 of 136
IDENTIFICATION ID CPR30+
Document
Revision Date Description
Version
0 2021-12-01 H11020-0e-ID-B Firmware Version: V1.09.00
1 2022-03-02 H11020-1e-ID-B Firmware Version: V2.00.00
Addition: [0x66] Get reader Info (Mode (0x03), (0x40), (0x41)
S.54 / Chapter 7-8.2 [0xA2] Write Mifare reader Keys
S. 56 / Chapter 8.1.2: [0xB0] ISO 15693 Standard Host Commands
S. 80 / Chapter 8.2: [0x26], [0x27], [0x28], [0x29], [0x2A], [0x2B], [0x2C],
[0x30] Mifare Value Commands
S. 94 / Chapter 8.4.1 [0xB0] Authent Mifare Classic
S. 96 / Chapter 8.4.2 NXP - Mifare classic: mini
S. 125 / Chapter
9.2.3:
Page 8 of 136
IDENTIFICATION ID CPR30+
2 Abbreviation
ADR Address
AFI Application Family Identifier
ASK Amplitude Shift Keying
CB Config Block
CFG Configuration Parameter Block
CRC Cyclic Redundancy Check
DB Data Block
DIP Dual Inline Plastic
DRM Dense Reader Mode
EOF End of Frame
FIFO First in First out
frq Frequency
FSK Frequency Shift Keying
FWI Frame Waiting Time Integer
FWT Frame Waiting Time
h Hour
Hz Hertz
ID Identification
IDD Identifier Data
IN Input
LEN Length
LOC Location
LSB Least Significant byte
min Minutes
ms Milliseconds
MSB Most Significant byte
N Number
OUT Output
R/W Read / Write Access
RD Read
REL Relay
RF Radio Frequency
RSSI Received Signal Strength Indicator
RTC Real Time Clock
s / sec Seconds
SOF Start of Frame
TAB Table
TR Transponder
TS Timeslot
UID Unique Identifier (read-only Serial Number)
WO Write Only Access
WR Write
Table 1: Abbreviation
Page 9 of 136
IDENTIFICATION ID CPR30+
3 Introduction
• The reader ID CPR30+ is a member of the ID CPR-reader family and is supporting passive
transponder IC’s according ISO/IEC 14443 type A and type B as well as transponder IC’s according
ISO/IEC 15693 and is able to communicate with NFC devices according ISO/IEC 18092.
• Beneath the mentioned transponder ICs the firmware gives access to ISO14443 part 4 compliant
contactless smart cards as well as to a couple of different ISO 14443 Type B memory IC’s.
• Additional some reader models are available with 2 sockets for attachable Security Access Module
(SAM), which makes it even suitable for applications with high security requirements.
• The use of ISO-Host commands guarantees an easy creation of user software as well as the
module's compatibility with the other HF-reader.
• Beside the ISOStart+ software for demonstration and configuration the reader capabilities and the
Firmware Update Tool a lot of different Software Development Kits (SDK) and drivers are available
to support an easy integration into the customer’s application.
Page 10 of 136
IDENTIFICATION ID CPR30+
NOTE:
During the writing of data on a transponder, it must be ensured that the transponder is located within the
detection range of the reader during the entire process. If the transponder is removed from detection range
of the reader during a writing process, this will cause a loss of data.
Page 11 of 136
IDENTIFICATION ID CPR30+
• Before reading or writing data in addressed mode, the UID of the transponder must be known. This
is executed by sending the Inventory command.
[0x01] Inventory.
If a transponder is located within the detection range of the reader at that time, it answers with its
UID. For all following read- / write orders the transponder must be addressed with its correct UID.
• The following flow diagram will show the necessary steps for the communication with a transponder
in “Addressed mode”:
Page 12 of 136
IDENTIFICATION ID CPR30+
Select mode:
In this mode the reader communicates only with the one, selected transponder.
• Before reading or writing data in selected mode, the UID of the transponder should be known. This is
executed by sending at first the protocol. [0x01] Inventory
In a second step the transponder must be selected with the select command which must include its
UID. [0x25] Select
• The following flow diagram will show the necessary steps for the communication with a transponder
in selected mode:
Page 13 of 136
IDENTIFICATION ID CPR30+
• If the host application choses advanced protocol frame the reader will always response with
advanced protocol frame.
• If the host application choses the standard protocol frame the reader’s response will depend on the
Length of the response data.
• If the response contains more than 255 byte the reader chose the advanced protocol frame
otherwise the reader chose the standard protocol frame.
NOTE:
• In this document only the REQUEST-PAYLOAD and the RESPONSE-PAYLOAD blocks without the
protocol frame are documented for each command.
• Optional parameters are documented in round brackets: “(optional)”.
1 1 1 (n) 2
Length COM-ADR COMMAND REQUEST- LSB / MSB
(n) DATA CRC16
1 1 1 1 (n) 2
Length COM-ADR COMMAND STATUS REQUEST- LSB / MSB
(n) DATA CRC16
Page 14 of 136
IDENTIFICATION ID CPR30+
NOTE:
For compatibility reasons, this frame is still supported. However, no new applications should use this frame
anymore. In SDK Gen3, the standard protocol frame is no longer supported.
1 2 1 1 (n) 2
STX LSB / MSB COM- COMMAND REQUEST- LSB / MSB
(0x02) ALength ADR DATA CRC16
1 2 1 1 1 (n) 2
STX LSB / MSB COM- COMMAND STATUS REQUEST- LSB / MSB
(0x02) ALength ADR DATA CRC16
STX The STX sign (0x02) at the start of protocol indicates an Advanced Protocol-Frame.
Page 15 of 136
IDENTIFICATION ID CPR30+
DATA is an optional data field with variable length. The number of DATA byte depends on the
DATA command. The data will be sent always as MSB first if the reader is in the ISO-Host Command
Mode.
Cyclic redundancy check of the protocol byte from 1 to n-2, as specified by CCITT-CRC16.
In case of USB communication the CRC16 value is not checked by the reader.
CRC16
Polynomial 0x8408 (x16 + x12 + x5 + 1 reversed)
Start Value 0xFFFF
Page 16 of 136
IDENTIFICATION ID CPR30+
Multiple configuration memory locations can be addressed by the value of the parameter CFG-ADR.
Commands for Reader Configuration
The parameters can be stored in two memory locations:
• RAM
The EEPROM configuration blocks are protected by a 16-bit CRC-checksum. The examination of these
checksums is executed after each reset of the reader. If a faulty checksum is found, the reader goes into an
error status "EE-Init-Mode" and sets the configuration block which is faulty to the default values.
While the EE-Init-Mode is active, the LED blinks alternately red and green and the reader answers external
commands with the status "0x10 EEPROM Failure". The "EE-Init-Mode" can be exited now by a new reset
(cold start or 5.2. [0x63] CPU Reset command). If afterwards the checksums of all data records are correct,
the reader switches to the configured operation mode.
NOTE:
Malfunctions may occur if parameters are configured outside their described range or if unspecified
parameters have been changed!
A firmware update resets the EEPROM to default settings and the reader goes into the
error status “EE-Init-mode”.
Page 17 of 136
IDENTIFICATION ID CPR30+
Byte 0 1 2 ......n
Contents RAM-eff. EEPROM-eff. 00 res .....
not marked
Changing of this parameter becomes immediately effective after writing / saving this configuration
block to RAM
Grey marked
Changing of this parameter only becomes effective after writing / saving this configuration block to
EEPROM and a reader reset
Page 18 of 136
IDENTIFICATION ID CPR30+
Byte 7 8 9 10 11 12 13
Contents 0x00 0x00 0x00 0x00 0x00 0x00 0x00
Default 0x00 0x00 0x00 0x00 0x00 0x00 0x00
Page 19 of 136
IDENTIFICATION ID CPR30+
Byte 7 8 9 10 11 12 13
TR-
READER -
Contents RESPONSE- 0x00 0x00 0x00 0x00 0x00
MODE
TIME
Default 0x3C 0x00 0x00 0x00 0x00 0x00 0x00
6 sec.
NOTE:
• TR-RESPONSE-TIME has no effect on commands for reader configuration and
reader control.
• The block receive timeout of host computer must set to a value ≥ TR-
RESPONSE-TIME.
Page 20 of 136
IDENTIFICATION ID CPR30+
Byte 0 1 2 3 4 5 6
Contents 0x00 0x00 ONLINE-MODE 0x00 0x00 0x00
Default 0x00 0x00 0x0001 0x00 0x00 0x00
Byte 7 8 9 10 11 12 13
TAGDETECT
OFFLINE-
Contents OFFLINE-MODE TAG DETECT-MODE ACTIVATION 0x00
DELAY
TIME
Default 0x0002 0x14 0x0005 0x04 0x00
2 sec. 400 ms
ONLINE-MODE Bit 7 6 5 4 3 2 1 0 2
This parameter defines the behavior of the signal transmitter, in case the reader has
detected an offline state. The following cases are possible:
Polling-Mode:
In case of polling mode the reader starts to signalize the offline state, if it has received
no command from the host for more than the time defined by the parameter
OFFLINE- OFFLINE-DELAY. 2
MODE
Page 21 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
This parameter defines the behavior of the signal transmitter if a new transponder was
detected by the reader.
TAGDETECT-
Bit 7 6 5 4 3 2 1 0 2
STATE
TAGDETECT- This parameter defines the duration in 100 ms increments, the reader signalizes a
ACTIVATION- transponder was detected. 1
TIME: 0 ... 255 x 100 ms → 0 ... 25,5 sec
Page 22 of 136
IDENTIFICATION ID CPR30+
Byte 7 8 9 10 11 12 13
Contents ISO14443 RF- 0x00 0x00 0x00 ISO14443 ISO14443
BIT RATE POWER STUPT FTUR
Default 0x00 0x00 0x00 0x00 0x00 0x03 0x1A
15 ms
TAG-DRV defines the transponder types that are operated by the reader.
Only those transponder drivers should be active that are used in the current
application. Thus, the reaction time of the reader for transponder read- / write-
operations is reduced and the danger of a parasitic transponder access is minimized.
Byte 0 1
TAG-DRV 2
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Driver 0 0 0 0 0 0 0 0 0 0 F E D 0 0 0
Default 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0
b0: Driver for the transponder type is disabled
b1: Driver for the transponder type is activated
D: Driver for ISO15693
E: Driver for ISO14443A
F: Driver for ISO14443B
It defines the ISO 14443 transponder types that are read/write operated by the reader.
Reading of the UID is also possible if the driver is inactive, because of the
standardized ISO14443 access conditions.
If more than one transponder driver is activated The reader attempted by means of
some indications to decide about the transponder type.
To guarantee that the reader only processes the correct transponder type the not
required drivers should be disabled.
ISO14443- Byte 2 3
2
DRV Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Driver 0 0 0 0 0 0 0 0 0 0 0 0 L4 C B 0
b0: Driver for the transponder type is disabled
b1: Driver for the transponder type is activated
B: Driver for my-d proximity SLE55Rxx
C: Driver for NFC Tag-Type 2 (e.g. Mifare Ultralight, my-d move, etc.)
L4: Driver for ISO14443A, Part 4 compatible transponders
ISO14443 This parameter defines the highest Bit Rate which should be used by the reader. The 1
BIT RATE actual used Bit Rate depends on the capabilities of the present transponder. If the
Page 23 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function TX-BIT RATE RX-BIT RATE - - - -
RX-BIT RATE:
Used for bit rate selection from transponder to reader
b00: 106 kbit / s
TX-BIT RATE:
Used for bit rate selection from reader to transponder
b00: 106 kbit / s
b0: The first reception after a Bit Rate change is expected with 106 kBit/s.
b1: The first reception after a Bit Rate change is expected with the selected
higher Bit Rate.
Page 24 of 136
IDENTIFICATION ID CPR30+
Page 25 of 136
IDENTIFICATION ID CPR30+
byte 7 8 9 10 11 12 13
ISO14443B- ISO15693
Contents 0x00 0x00 0x00 0x00 0x00
AFI BLOCK SIZE
Default 0x00 0x00 0x00 0x00 0x00 0x00 0x04
RF-MOD:
b0: 100% modulation
ISO15693- b1: 20% modulation 1
MODE
NO-TS:
b0: 16 timeslots
b1: 1 timeslot
Anticollision is only possible if NO-TS=16.
AFI:
b0: disabled
b1: enabled
WR-OPTION:
ISO15693- b00: automatically set 1
OPTION b10: Tag Option = 0
b11: Tag Option = 1
NOTE:
If WR-OPTION is automatically set, the reader sets the WR-OPTION t= 0,
if the ISO-Host Command is in “non-addressed mode”.
Page 26 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function Read Mode Block size DB-Block size
DB-Block size:
Defines the block size of an ISO-transponder which is not listed in the MFR or if the
transponder is used in the non-addressed mode.
ISO15693- Range: 0x01 ... 0x1F
1
BLOCK SIZE A value of 0x00 will be automatically set to a block size of 4 byte.
Block size:
b0: Automatic (If transponder is known)
b1: Manuel (As specified in DB-Block size)
Read Mode:
b00: Automatic Mode (If transponder is known)
b01 Single Read
b10 Multiple Read
Page 27 of 136
IDENTIFICATION ID CPR30+
byte 7 8 9 10 11 12 13
Contents 0x00 0x00 0x00 0x00 ONT 0x00 0x00
Default 0x00 0x00 0x00 0x00 0x0D 0x00 0x00
ACOLL:
This bit activates Anticollision Mode. In Anticollision Mode the reader automatically sets transponder-
specific communication parameters.
If more than one transponder of the same type is in the detection range the reader replies an error
status.
b0: disabled
In this case the reader doesn’t process any anticollision procedure with the transponders
inside the antenna field. If anticollision is disabled, the reader automatically selects the
ONT transponder. The Select command [0x25] is not necessary for further communication with
the transponder.
AORB_REQ:
This parameter defines the abort conditions of the Inventory command [0x01] for ISO14443
Transponder if the ISO14443A and ISO14443B Transponder drivers are activated.
b1: The Inventory command stops if the UID of all ISO14443A or ISO14443B
Transponders have been detected.
Page 28 of 136
IDENTIFICATION ID CPR30+
Page 29 of 136
IDENTIFICATION ID CPR30+
byte 0 1 2 3 4 5 6
Contents 0x00 0x00 PER-RESET-TIME-ANT 0x00 0x00 0x00
Default 0x00 0x00 0x0000 0x00 0x00 0x00
0 x 5ms = 0ms
byte 7 8 9 10 11 12 13
Contents 0x00 0x00 0x00 0x00 0x00 0x00 0x00
Default 0x00 0x00 0x00 0x00 0x00 0x00 0x00
Page 30 of 136
IDENTIFICATION ID CPR30+
Summary RESPONSE-PAYLOAD
Field Description / Value Length
COMMAND 0x80 Read Configuration 1
STATUS Includes the status message or protocol data from or to the reader. 1
ANNEX C: Index of Status byte
CFG-REC 14-byte configuration block read from address CFGn in CFG-ADR. 14
Details REQUEST-PAYLOAD
Field Description / Value
Bit 7 6 5 4 3 2 1 0
Function LOC 0 CFGn: Address of Configuration Block
CFGn:
Memory-address of the required configuration block.
CFG-ADR LOC:
Specifies the location of the configuration block.
b0: RAM
b1: EEPROM
NOTE:
A read configuration from EEPROM with reserved configuration blocks will cause an
0x15 error code.
Page 31 of 136
IDENTIFICATION ID CPR30+
Summary RESPONSE-PAYLOAD
Field Description / Value Length
COMMAND 0x81 Write Configuration 1
STATUS Status message from the reader. ANNEX C: Index of Status byte 1
Details REQUEST-PAYLOAD
Field Description / Value
COMMAND 0x81 Write Configuration
Bit 7 6 5 4 3 2 1 0
Function LOC 0 CFGn: Address of Configuration Block
CFG-ADR CFGn:
Memory-address of the required configuration block.
LOC:
Specifies the location of the configuration block.
b0: RAM
b1: EEPROM
CFG-REC 14-byte configuration block stored in the configuration memory of the reader at address CFGn in
CFG-ADR.
Details RESPONSE-Payload
Field Description / Value
COMMAND 0x81 Write Configuration
STATUS Status message from the reader. ANNEX C: Index of Status byte
NOTE:
A write configuration to EEPROM with reserved configuration blocks will cause an 0x16 error code.
Page 32 of 136
IDENTIFICATION ID CPR30+
Summary RESPONSE-PAYLOAD
Field Description / Value Length
COMMAND 0x83 Set Default Configuration (Configuration RESET) 1
STATUS Status message from the reader. ANNEX C: Index of Status byte 1
Details REQUEST-PAYLOAD
Field Description / Value
COMMAND 0x83 Set Default Configuration (Configuration RESET)
Bit 7 6 5 4 3 2 1 0
Function LOC MODE CFGn
CFGn:
Memory-address of the required configuration block.
MODE:
Specifies one or all configuration blocks.
CFG-ADR b0: configuration block specified by CFGn
b1: all configuration blocks
LOC:
Specifies the location of the configuration block.
b0: RAM
b1: EEPROM
NOTE:
A set default configuration with reserved configuration blocks will cause an error code.
Details RESPONSE-PAYLOAD
Field Description / Value
COMMAND 0x83 Set Default Configuration (Configuration RESET)
STATUS Status message from the reader. ANNEX C: Index of Status byte
Page 33 of 136
IDENTIFICATION ID CPR30+
Summary RESPONSE-PAYLOAD
Field Description / Value Length
COMMAND 0x52 Baud Rate Detection 1
0x00 Reserve 1
Page 34 of 136
IDENTIFICATION ID CPR30+
Summary RESPONSE-PAYLOAD
Field Description / Value Length
COMMAND 0x63 CPU Reset 1
STATUS Status message from the reader. ANNEX C: Index of Status byte 1
NOTE:
The RF-field will be switched off while a CPU Reset.
Page 35 of 136
IDENTIFICATION ID CPR30+
Summary RESPONSE-PAYLOAD
Field Description / Value Length
COMMAND 0x64 system Reset 1
STATUS Status message from the reader. ANNEX C: Index of Status byte 1
Details REQUEST-PAYLOAD
Field Description / Value
COMMAND 0x64 System Reset
Details RESPONSE-PAYLOAD
Field Description / Value
COMMAND 0x64 System Reset
STATUS Status message from the reader. ANNEX C: Index of Status byte
Page 36 of 136
IDENTIFICATION ID CPR30+
Summary REQUEST-PAYLOAD
Field Description / Value Length
COMMAND 0x65 Get Software Version 1
Summary RESPONSE-PAYLOAD
Field Description / Value Length
COMMAND 0x65 System Reset 1
STATUS Status message from the reader. ANNEX C: Index of Status byte 1
SW-REV Version of the firmware 2
D-REV Revision status of the firmware 1
HW-TYPE Displays options configuration pin value (internal use) 1
SW-TYPE Displays the type / model of the reader. ANNEX B: Codes of Reader Types 1
Bit 7 6 5 4 3 2 1 0
ISO ISO ISO
Function: - - - - -
14443B 14443A 15693
RX-BUF is the maximum receive buffer size of the reader. If a protocol from the host
RX-BUF exceed the RX-BUF size the reader response with error code 2
0x81 PROTOCOL Length ERROR.
TX-BUF is the maximum transmit buffer size of the reader. The host have to check
TX-BUF 2
whether the length of the response protokol corresponds to the permitted length.
Details RESPONSE-PAYLOAD
No entry!
Page 37 of 136
IDENTIFICATION ID CPR30+
Summary RESPONSE-PAYLOAD
Field Description / Value Length
COMMAND 0x66 Get Reader Info 1
STATUS Status message from the reader. ANNEX C: Index of Status byte 1
Details REQUEST-PAYLOAD
Field Description / Value
COMMAND 0x66 Get Reader Info
Via the Parameter MODE different information could be requested from the reader.
Page 38 of 136
IDENTIFICATION ID CPR30+
Page 39 of 136
IDENTIFICATION ID CPR30+
Page 40 of 136
IDENTIFICATION ID CPR30+
TEMPLATE
Indicates how to interpret the following content depending on the 1
reader type 0x01 (ID CPR-Family)
Each bit represents a firmware functionality.
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 0 0 0 0 TCL
FNC_LST0 1
TCL:
Indicates the support of the T=CL Function (Command [0xB2], [0xBE])
b0: T=CL function is not supported
b1: T=CL function is supported
Page 41 of 136
IDENTIFICATION ID CPR30+
Page 42 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function HF 0 0 0 0 0 0 EU
FREQUENCY EU: 1
b0: EU frequencies not supported
b1: EU frequencies supported
HF:
b0: HF not supported
b1: HF supported
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 USB 0 0 0 0
PORT-TYPE 1
USB:
b0: USB not supported
b1: USB supported
Page 43 of 136
IDENTIFICATION ID CPR30+
Page 44 of 136
IDENTIFICATION ID CPR30+
NO_OF_
No. of available CFG pages. 2
PAGES
Byte 7
Bit 7 6 5 4 3 2 1 0
CFG_NO 0 1 2 3 4 5 6 7
Byte 8
PERMISSION Bit 7 6 5 4 3 2 1 0
x
CFG_NO 8 9 10 11 12 13 14 15
Byte 9
Bit 7 6 5 4 3 2 1 0
CFG_NO 16 17 18 19 20 21 22 23
Page 45 of 136
IDENTIFICATION ID CPR30+
NO_OF_
No. of available CFG pages. 2
PAGES
Byte 7
Bit 7 6 5 4 3 2 1 0
CFG_NO 0 1 2 3 4 5 6 7
Byte 8
PERMISSION Bit 7 6 5 4 3 2 1 0
x
CFG_NO 8 9 10 11 12 13 14 15
Byte 9
Bit 7 6 5 4 3 2 1 0
CFG_NO 16 17 18 19 20 21 22 23
Page 46 of 136
IDENTIFICATION ID CPR30+
Page 47 of 136
IDENTIFICATION ID CPR30+
DATASETS
Repeated
times
Data record according to the definition in previous sections.
DATA The data record is always 30 byte long. 30
Unused byte must be filled with 0x00 (Length 30 byte)
Page 48 of 136
IDENTIFICATION ID CPR30+
Summary REQUEST-PAYLOAD
Field Description / Value Length
COMMAND 0x69 RF Reset 1
Summary RESPONSE-PAYLOAD
Field Description / Value Length
COMMAND 0x69 RF Reset 1
STATUS Status message from the reader. ANNEX C: Index of Status byte 1
NOTE:
• After the RF Reset command the reader is not able to receive any new transponder before
expiration of trf.
• After a RF Reset a transponder which is located within the field must be reselected.
Page 49 of 136
IDENTIFICATION ID CPR30+
Summary RESPONSE-PAYLOAD
Field Description / Value Length
COMMAND 0x6A Write Configuration 1
STATUS Status message from the reader. ANNEX C: Index of Status byte 1
Details REQUEST-PAYLOAD
Field Description / Value Length
ANT:
RF_OUTPUT 1
This parameter could be used to select one antenna.
b000: switches off RF power at all antennas.
b001: switches on the RF power at antenna 1.
This setting is to use, if the reader has only one internal or one external
antenna.
Page 50 of 136
IDENTIFICATION ID CPR30+
OUT-N times
OUT-S (Output State) defines the status of the output during the time
Repeated
OUT-S defined in OUT-TIME and provides the possibility to allocate its own 1
flashing-frequency to each output.
By the values defined by “OUT-TIME” the outputs can be activated
OUT-TIME 2
temporary limited or unlimited.
Summary RESPONSE-PAYLOAD
Field Description / Value Length
COMMAND 0x72: Set Output 1
STATUS Status message from the reader. ANNEX C: Index of Status byte 1
Details REQUEST-PAYLOAD
Field Description / Value
MODE 0x01
OUT-TYP:
OUT-NR b 001 LED
b 010 Buzzer
OUT-NUMBER:
b 001 LED green
b 010 LED yellow
OUT-S (Output State) defines the status of the output during the time defined in OUT-
TIME and provides the
OUT-S possibility to allocate its own flashing-frequency to each output.
Bit 7 6 5 4 3 2 1 0
Function: 0 0 0 0 0 0 OUTx-mode
Page 51 of 136
IDENTIFICATION ID CPR30+
b 00: OFF
b 01: ON
b 10: FLASHING SLOW
b 11: FLASHING FAST
By the values defined by “OUT-TIME” the outputs can be activated temporary limited or
unlimited.
Accepted are the time values 0 and 65535 (0xFFFF)
0x0001 1 x 100ms -> 100ms
OUT-TIME
...
...
0xFFFE 65534 x 100ms -> 1:49:13 h
0xFFFF continuously active
NOTE:
• To reset a continuously active time, OUT-TIME = 1 has to be sent to the reader, which effects a change
to the idle status after 100 ms.
• The continuous activation is being set back after a reset or a power failure.
Page 52 of 136
IDENTIFICATION ID CPR30+
Page 53 of 136
IDENTIFICATION ID CPR30+
Summary REQUEST-PAYLOAD
Field Description / Value Length
COMMAND 0xB0 ISO Standard Host Commands 1
REQUEST-DATA Command specific request n
Summary RESPONSE-PAYLOAD
Field Description / Value Length
COMMAND 0xB0 ISO Standard Host Commands 1
STATUS Status message from the reader. ANNEX C: Index of Status byte 1
RESPONSE-DATA Command specific response n
NOTE:
Data are only transferred if STATUS = 0x00, 0x83, 0x94, 0x95
Page 54 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function MORE - - - - - - -
MORE:
this bit can be used, to read out the whole UIDs, after the reader had signalized more
MODE data sets with status 0x94 (see: ANNEX C: Index of Status byte). 1
b0: new Inventory requested
The reader carries out a new inquiry, which transponder are in it
detection range.
b1: more data requested
The reader response contain the UIDs which are not transferred with the
last response because of the status 0x94.
Details RESPONSE-DATA:
Depending on the transponder type the response data of the reader is different as described in the following
chapters.
Response-Data - ISO 14443A (TR-TYPE = 0x04)
Response-Data - ISO 14443B (TR-TYPE = 0x05)
Response-Data – ISO15693 (TR-TYPE = 0x03)
Page 55 of 136
IDENTIFICATION ID CPR30+
Details RESPONSE-DATA
TR_INFO CL3: 1
Displays the UID Length of the present transponder.
b0: The UID is transmitted as a 7 byte field (transponder with Cascade Level 1 or 2)
b1: The UID is transmitted as a 10 byte field (transponder with Cascade Level 3)
transmitted byte 9 10 11 12 13 14 15 16 17 18
Cascade-Level 1 0 0 0 UID3 UID2 UID1 UID0 - - -
Cascade-Level 2 UID6 UID5 UID4 UID3 UID2 UID1 UID0(* - - -
Cascade-Level 3 UID9 UID8 UID7 UID6 UID5 UID4 UID3 UID2 UID1 *
UID UID0 8/10
* UID0: Manufacturer ID according ISO/IEC7816-6/AM1
In case of a shorter UID the redundant bytes are filled with 0 at the most significant digits.
NOTE:
The UID byte order can be swapped by using the
parameter CFG3.ISO14443 FTUR.UID_ORDER
Page 56 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function - - L4 - - CL3 - -
TR_INFO CL3: 1
Displays the UID Length of the present transponder.
b0: The UID is transmitted as a 7 byte field (transponder with Cascade Level 1 or 2)
b1: The UID is transmitted as a 10 byte field (transponder with Cascade Level 3)
L4:
Bit 7 6 5 4 3 2 1 0
Function - - - - - L4_SLCT C_LEVEL
OPT_INFO C_LEVEL: 1
This two bits displays the Cascade Level of the transponder UID
b00: Cascade Level 1 (4 byte UID)
b01: Cascade Level 2 (7 byte UID)
b10: Cascade Level 3 (10 byte UID)
L4_SLCT:
This bit displays the select status of the present transponder.
b0: The transponder is not selected in ISO14443-4 level.
b1: The transponder is selected on ISO14443-4 level by the reader now. A further
select command is not necessary for data exchange with this transponder.
Page 57 of 136
IDENTIFICATION ID CPR30+
transmitted byte 9 10 11 12 13 14 15 16 17 18
Cascade-Level 1 0 0 0 UID3 UID2 UID1 UID0 - - -
Cascade-Level 2 UID6 UID5 UID4 UID3 UID2 UID1 UID0(* - - -
UID
Cascade-Level 3 UID9 UID8 UID7 UID6 UID5 UID4 UID3 UID2 UID1 UID0* 7or10
* UID0: Manufacturer ID according ISO/IEC7816-6/AM1
In case of a shorter UID the redundant bytes are filled with 0 at the most significant digits.
NOTE:
The UID byte order can be swapped by using the
parameter CFG3.ISO14443 FTUR.UID_ORDER
Page 58 of 136
IDENTIFICATION ID CPR30+
Protocol Type:
According ISO14443-3:2001)
4 byte Pseudo-Unique PICC Identifier, according ISO 14443-3:2001. This information is required
PUPI: 4
to select the transponder.
Page 59 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function RF_TEC - - TYPE_NO
RF_TEC:
Indicates the RFID - Technology of the present transponder:
b00: 13,56 MHz transponder
DSFID (only ISO15693Transponders), Data Storage Family Identifier. 1
UID ISO 156963 UID. It is transmitted by the reader with a Length of 8 byte 8
Page 60 of 136
IDENTIFICATION ID CPR30+
[0x01] inventory
no
Anticollision disabled
Response 1
(CFG5.ONT.ACOLL)
yes
ISO14443-A yes
Transponder
no
yes
ISO14443-4 no
suppored by Response 2
Transponder
yes
Response 3
Transponder(s) No of announced
next possible commands
are selected transponder
Response 1 no > 1 (possibly) [0x25] Select
yes Proprietary or standard commands for
Response 2 one transponder 1 ISO14443 Transponders
on ISO14443-3 level [0xB2] ISO14443 Special Host Commands
yes
ISO14443-4 Commands
Response 3 one transponder 1
[0x2B] ISO14443-4 Transponder-Info
on ISO14443-4 level
Page 61 of 136
IDENTIFICATION ID CPR30+
Details REQUEST-DATA
Bit 7 6 5 4 3 2 1 0
Function 0 DRV_SEL CINF UID_LF 0 ADR
ADR:
b 001 addressed
UID_LF:
If this bit is set the parameter UID_LEN must inserted into the command.
MODE b0: The protocol UID_LEN doesn't include the UID_LEN byte and the UID field 1
has a fixed Length of 8 byte, from byte6 to byte 13.
b1: The protocol includes the parameter UID_LEN. The UID has a variable
Length as defined in UID_LEN.
CINF:
b0: don't return card-information
b1: return the card-information within the select response.
DRV_SEL:
b0: No extra byte TR-DRV included in request data
b1: Extra byte TR-DRV included in request data
Page 62 of 136
IDENTIFICATION ID CPR30+
NOTE:
Make sure that the relevant TAG-DRV and ISO14443-DRV is enabled in
CFG3
Bit 7 6 5 4 3 2 1 0
Function TR-DRIVER-SELECTION
TR-DRIVER-SELECTION:
TR_DRV By means of this parameter the host application explicit selects an internal driver to 1
handle the data exchange with the addressed transponder
TR-DRIVER-
Selected transponder driver
SELECTION
0x01 ISO 14443-4
0x02 -
0x03 NFC Card Type 2, Mifare Ultralight, my-d move, etc.
0x04 -
0x05 Mifare plus SL1 - ISO14443-4
0x06 -
0x07 Mifare plus SL2 - ISO14443-4
0x08 Mifare plus SL3
0x09 Mifare DESFire
0x0A my-d proximity
my-d move (use this if proprietary my-d move command
0x0B
shall be used)
NOTE:
UID_LEN 1
The maximum UID_LEN is limited depending on the reader type. If UID_LEN
exceeds the internal buffer size the reader responses an error massage.
Page 63 of 136
IDENTIFICATION ID CPR30+
ISO 14443A
6 7 8 9...16
[0x25] b000 0001 0x00 UID
SO 14443B
6 7 8...11 12...15 (UID_LEN)
UID
[0x25] b000 0001 0x00 PUPI /(8)
case UID_LF = 1
If UID_LEN is activated the specific UID Length of the transponder should be used in
the protocol.
6 7 8 9... 9+UID_LEN
[0x25] MODE UID_LEN UID
Details RESPONSE-DATA (only if the MODE-bit CINF was set in the request and STATUS = 0x00)
Page 64 of 136
IDENTIFICATION ID CPR30+
8 9 10 11 (12....12+TL-2)
ATQA
RFU Proprietary UID RFU Bit frame SAK TL T0, TA(1), TB(1), TC(1) T1, Tk
coding size anticollision
8 9 11
ATQB Response Protocol Info
1 byte of Answer to ATTRIB
Bit_Rate_ Max_Frame_
Protocol_Type FWI ADC F0 MBLI CID
capability Size
8 9
ATQA
RFU Proprietary UID size RFU Bit frame anticollision SAK
coding
Page 65 of 136
IDENTIFICATION ID CPR30+
ISO15693 ISO15693 ERROR code of transponder response. This byte is only available if
1
ERROR STATUS = 0x95.
Page 66 of 136
IDENTIFICATION ID CPR30+
Details REQUEST-DATA
Field Description / Value Length
COMMAND 0x23 Read Multiple Blocks (extended Address Mode) 1
Bit 7 6 5 4 3 2 1 0
Function 0 0 EXT_ADR UID_LF SEC ADR
ADR:
b000 non-addressed
b001 addressed
b010 selected
SEC:
b0 SEC-STATUS always = 0x00
b1 security status of following data block in SEC-STATUS
MODE 1
UID_LF:
If this bit is set the parameter UID_LNG must be inserted into the protocol.
b0: The protocol UID_LNG doesn't include the UID_LNG byte and the UID field has a
fixed length of 8 byte.
b1: The protocol includes the parameter UID_LNG. The UID has a variable length as
defined in UID_LNG.
EXT_ADR:
If this bit is set the command includes extended address fields.
b0: Transponder memory addressing is done by the 1 byte DB ADR
Field.
b1: Transponder memory addressing is done by BANK and 2
byte DB-ADR Field
Is an optional parameter and depends on the setting of UID_LF (see MODE). UID_LNG
UID_LEN (1)
defines the length of the following UID field.
Read-only serial number of the transponder. The UID is required only in the addressed (UID_LEN)
UID
mode. /(8)
Memory bank of the transponder which will be accessed by the reader.
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 0 0 0 BANK_NR
Page 67 of 136
IDENTIFICATION ID CPR30+
Details RESPONSE-DATA
Field Description / Value Length
Number of data blocks to be locked, starting at DB-ADR. The maximum
number of DB-N depends on DB-Size and the interface
transmit buffer size TX-BUF.
DB-N 1
The maximum number of DB-N is:
(TX-BUF - 10) / (DB-Size+1) → Standard Protocol
(TX-BUF - 12) / (DB-Size+1) → Advanced Protocol
Number of byte of one data block. This value depends on the
DB-SIZE specification of the transponder manufacturer. 1
ISO Host Commands for Transponder Communication
Block security status of following data block. If supported by the
SEC-STATUS ISO15693 transponder I-Code 1 transponder doesn’t support this 1 Repeated
function. DB-N
Requested data block. The block size is defined by DB-SIZE. DB- times
DB
SIZE
NOTE:
• A read from 1 block uses a Read Single Block command to the transponder.
• If a transponder does not support Read Multiple Blocks commands several Read Single Block
commands are used for this transponder.
• Only one transponder can be read in the non-addressed mode.
Page 68 of 136
IDENTIFICATION ID CPR30+
Details REQUEST-DATA
Field Description / Value Length
COMMAND 0x23 Read Lock Multiple Blocks 1
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 UID_LF SEC ADR
ADR:
b000 non-addressed
b001 addressed
b010 selected
MODE UID_LF: 1
If this bit is set the parameter UID_LNG must be inserted into the protocol.
b0: The protocol UID_LNG doesn't include the UID_LNG byte and the UID field
has afixed length of 8 byte.
b1: The protocol includes the parameter UID_LNG. The UID has a variable length
as defined in UID_LNG.
SEC:
b0 SEC-STATUS always = 0x00
b1 security status of following data block in SEC-STATUS
Is an optional parameter and depends on the setting of UID_LF (see MODE).
UID_LEN (1)
UID_LNG defines the length of the following UID field.
Read-only UID of the transponder. The UID is required only in the addressed (UID_LEN)
UID
mode. /(8)
DB-ADR First block number to be read. First block can be any value between 0 and 255. 1
Page 69 of 136
IDENTIFICATION ID CPR30+
Details RESPONSE-DATA
Field Description / Value Length
NOTE:
• A read from 1 block uses a Read Single Block command to the transponder.
• If a transponder does not support Read Multiple Blocks commands several Read Single Block
commands are used for this transponder.
• Only one transponder can be read in the non-addressed mode.
Page 70 of 136
IDENTIFICATION ID CPR30+
Details REQUEST-DATA
Field Description / Value Length
COMMAND 0x24 Write Multiple Blocks (extended Address Mode) 1
Bit 7 6 5 4 3 2 1 0
Function 0 0 EXT_ADR UID_LF ADR
ADR:
b000 non-addressed
b001 addressed
b010 selected
UID_LF:
If this bit is set the parameter UID_LNG must be inserted into the
MODE protocol. 1
b0: The protocol UID_LNG doesn't include the UID_LNG byte and the
UID field has afixed length of 8 byte.
b1: The protocol includes the parameter UID_LNG. The UID has a
variable length as defined in UID_LNG.
EXT_ADR:
If this bit is set the command includes extended address fields.
b0: Transponder memory addressing is done by the
1 byte DB ADR Field.
b1: Transponder memory addressing is done by BANK and
2 byte DB-ADR Field
Is an optional parameter and depends on the setting of UID_LF (see
UID_LEN (1)
MODE). UID_LNG defines the length of the following UID field.
Read-only serial number of the transponder. The UID is required only in (UID_LEN)
UID
the addressed mode. /(8)
Memory bank of the transponder which will be accessed by the reader.
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 0 0 0 BANK_NR
BANK (1)
BANK_NR:
Defines the memory area on the transponder.
b00 reserved
b01 reserved
b10 reserved
b11 User memory bank
First block number to be read. Depending on EXT_ADR First block can 1 or 2 bytes
DB-ADR be any value be-tween 0 and 255 or 0 and 65535. ( def. by
EXT_ADR)
Page 71 of 136
IDENTIFICATION ID CPR30+
NOTE:
• A write to 1 block uses a Write Single Block command to the transponder. This will be managed by the
reader internally.
• If a transponder does not support Write Multiple Blocks commands several Write Single Block
commands are used for this transponder.
• A write command on I-Code 1 transponders can only be performed in the addressed mode.
• If an error occurred during a write command, the number of the block where the error occurred will be
send to host.
ISO15693 ISO15693 ERROR code of transponder response. This byte is only available if
1
ERROR STATUS = 0x95.
Page 72 of 136
IDENTIFICATION ID CPR30+
Details REQUEST-DATA
Field Description / Value Length
COMMAND 0x24 Write Multiple Blocks 1
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 UID_LF WR-NE ADR
ADR:
b000 non-addressed
b001 addressed
MODE b010 selected 1
UID_LF:
If this bit is set the parameter UID_LNG must be inserted into the
protocol.
b0: The protocol UID_LNG doesn't include the UID_LNG byte and the
UID field has a fixed length of 8 byte.
b1: The protocol includes the parameter UID_LNG. The UID has a
variable length as defined in UID_LNG.
CFG3: RF-Interface
Is an optional parameter and depends on the setting of UID_LF (see
UID_LEN (1)
MODE). UID_LNG defines the length of the following UID field.
Read-only UID of the transponder. The UID is required only in the (UID_LEN)
UID
addressed mode. /(8)
Address of the first data block to be written to the transponder. First
DB-ADR (1)
block can be any value between 0 and 255.
Number of data blocks to be read from the transponder, starting at
DB_ADR. Maximum number of DB-N, depends on DB-Size.
The maximum number of byte is 128 byte.
Page 73 of 136
IDENTIFICATION ID CPR30+
NOTE:
• If a transponder does not support Write Multiple Blocks commands several Write Single Block
commands are used for this transponder.
• If an error occurred during a write command, the number of the block were the error occurred will be
send to host.
Page 74 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 0 0 ADR
MODE 1
ADR:
b001 addressed
Read-only serial number of the transponder.
UID NOTE: 8
Page 75 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 0 0 ADR
MODE 1
ADR:
b000 non-addressed
b001 addressed
b010 selected
Read-only serial number of the transponder. The UID is required only in the addressed
UID (8)
mode.
Bank BANK_NR: 1
Defines the memory area on the transponder.
b00 reserved
b01 reserved
b10 reserved
b11 User memory bank
DB-ADR First block number to be locked. First block can be any value between 0 and 255. 1
Number of data blocks to be locked, starting at DB-ADR. The maximum number of DB-N
depends on DB-Size and the interface
DB-N transmit buffer size TX-BUF. 1
The maximum number of DB-N is:
(TX-BUF - 10) / (DB-Size+1).
Page 76 of 136
IDENTIFICATION ID CPR30+
NOTE:
This command is only available for ISO15693Transponders.
Details REQUEST-DATA
Field Description / Value Length
COMMAND 0x22 Lock Multiple Blocks (extended Address Mode) 1
Bit 7 6 5 4 3 2 1 0
Function 0 0 EXT_ADR 0 0 ADR
ADR:
b000 non-addressed
MODE b001 addressed 1
b010 selected
EXT_ADR:
If this bit is set the command includes extended address fields.
b0: Transponder memory addressing is done by 1 byte DB ADR
Field.
b1: Transponder memory addressing is done by BANK and 2
byte DB ADR Field
Read-only serial number of the transponder. The UID is required only in the addressed
UID (8)
mode.
Page 77 of 136
IDENTIFICATION ID CPR30+
ISO15693 ISO15693 ERROR code of transponder response. This byte is only available if
1
ERROR STATUS = 0x95.
Page 78 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 0 0 ADR
MODE 1
ADR:
b000 non-addressed
b001 addressed
b010 selected
Read-only serial number of the transponder. The UID is required only in the
UID (8)
addressed mode.
ISO- ERROR Additional error code if STATUS = 0x95. 1
Page 79 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 0 0 ADR
MODE 1
ADR:
b000 non-addressed
b001 addressed
b010 selected
Read-only serial number of the transponder. The UID is required only in the
UID (8)
addressed mode.
AFI Application Family Identifier of the transponder. 1
Page 80 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 0 0 ADR
MODE 1
ADR:
b000 non-addressed
b001 addressed
b010 selected
Read-only serial number of the transponder. The UID is required only in the
(UID) (8)
addressed mode.
Page 81 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 0 0 ADR
MODE 1
ADR:
b000 non-addressed
b001 addressed
b010 selected
Read-only serial number of the transponder. The UID is required only in the
(UID) (8)
addressed mode.
DSFID Data Storage Format Identifier of the transponder. 1
Page 82 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 0 0 ADR
MODE 1
ADR:
b000 non-addressed
b001 addressed
b010 selected
Read-only serial number of the transponder. The UID is required only in the
(UID) (8)
addressed mode.
Page 83 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function 0 0 EXT-ADR 0 0 ADR
ADR:
b000 non-addressed
MODE 1
b001 addressed
b010 selected
EXT-ADR:
Defines the command type.
b0: Standard Get System Information
b1: Extended Get System Information
(UID) Read-only serial number of the transponder. The UID is required only in the
(8)
(REQUEST) addressed mode.
Page 84 of 136
IDENTIFICATION ID CPR30+
IC reference (version) of the transponder. If not supported by the transponder, this value will
IC-REF 1
return 0x00.
Page 85 of 136
IDENTIFICATION ID CPR30+
Page 86 of 136
IDENTIFICATION ID CPR30+
CL Byte 1:
Bit Meaning Comment
0 Read single block is supported
1 Write single block is supported
2 Lock single block is supported
3 Read multiple block is supported
4 Write multiple block is supported
5 Select is supported Including Select state
6 Reset to Ready is supported
7 Get multiple block security status is
supported
CL Byte 2
Bit Meaning Comment
0 Write AFI is supported
1 Lock AFI is supported
2 Write DSFID is supported
3 Lock DSFID is supported
4 Get System Information is supported
CL x
5 Custom commands are supported
6 RFU 0 shall be returned
7 RFU 0 shall be returned
CL Byte 3
Bit Meaning Comment
0 Extended read single block is supported
1 Extended write single block is supported
2 Extended lock single block is supported
3 Extended read multiple block is
supported
4 Extended write multiple block is
supported
5 Extended Get Multiple Security Status is
supported
6 RFU 0 shall be returned
7 RFU 0 shall be returned
Page 87 of 136
IDENTIFICATION ID CPR30+
Page 88 of 136
IDENTIFICATION ID CPR30+
Bit 7 6 5 4 3 2 1 0
Function 0 0 EXT-ADR 0 0 ADR
ADR:
b000 non-addressed
MODE b001 addressed 1
b010 selected
EXT-ADR:
If this bit is set the command includes extended address fields.
b0: Transponder memory addressing is done by 1 byte DB-ADR Field.
b1: Transponder memory addressing is done by BANK and 2 byte DB-ADR
Field.
Read-only serial number of the transponder. The UID is required only in the
(UID) (8)
addressed mode.
Bit 7 6 5 4 3 2 1 0
Function 0 0 0 0 0 0 BANK_NR
Page 89 of 136
IDENTIFICATION ID CPR30+
Details REQUEST-DATA
Field Description / Value Length
COMMAND 0xC0 Halt 1
Bit: 7 6 5 4 3 2 1 0
Function - - - - - ADR
MODE 1
ADR:
b010 selected
NOTE:
If anticollision is enabled the reader sets the transponder into the Halt status itself.
Page 90 of 136
IDENTIFICATION ID CPR30+
Details RESPONSE-DATA
Field Description / Value Length
COMMAND 0xB2 ISO14443 Special Host Commands 1
STATUS Includes the status message or protocol data from or to the reader. 1
RESPONSE-DATA Command specific response n
NOTE:
This command is not available if the notification/max mode is switched on.
Page 91 of 136
IDENTIFICATION ID CPR30+
NOTE:
The maximum buffer size of the reader for data exchange is 256 byte for data sending from Host to Reader
(downlink) 256 byte (FSDI = 8) for data sending from Reader to Host (uplink).
Details REQUEST-DATA
Field Description / Value Length
Bit 7 6 5 4 3 2 1 0
Function FIRST MORE - - PING NAD_E CID_E IN
F
INF:
b0 "DESELECT": Sends the S-block command "DESELECT" to the present
transponder.
b1 "APDU" Instructs the reader to send the INF Block (APDU) which is included in
the DATA Block to the transponder.
Page 92 of 136
IDENTIFICATION ID CPR30+
CID_E:
b0 The DATA Block includes no CID
b1: The DATA Block includes an optional 1 byte CID Parameter.
The CID must be placed in DATA directly behind the MODE Parameter
NOTE:
In case of command chaining (see Bit "MORE") only the CID in the first command
block is accepted by the reader.
NAD_E:
b0 The DATA Block includes no NAD
b1: The DATA Block includes an optional 1 byte NAD Parameter
The NAD parameter is only supported in conjunction with INF = b1
NOTE:
In case of command chaining (see Bit "MORE") only the NAD in the first command
block is accepted by the reader.
PING:
By means of this bit a presence check to the current transponder can be operated by the host.
The response includes only a status message.
b0: PING will not be operated
b1: PING will be operated by the reader.
NOTE:
PING is an exclusive function and cannot combined with an APDU command. It can
used with or without CID.
MORE:
This bit can be used to generate a data chain if the number of data bytes to be sent exceeds
the input buffer size of the reader.
b0 No downlink chaining (Host → Reader). The present protocol block includes the
complete command.
b1 downlink chaining (Host → Reader). The present protocol block includes not the
complete command. After the reader has acknowledged the protocol block the
host can send further parts of the command.
NOTE:
Page 93 of 136
IDENTIFICATION ID CPR30+
Protocol examples for Error-free operation with 3 blocks and 1 MORE response
DATA
MODE: (CID), (NAD), INF Host Reader (1. protocol block)
b11xx 0xx1
STATUS: 0x94 Host Reader
(MORE)
STATUS: 0x00 Host Reader
(OK)
b01xx 0001 INF Host Reader (2. protocol block)
STATUS: Host Reader
0x00 (OK)
b00xx 0001 INF Host Reader (last protocol block)
STATUS: Host Reader
0x00 (OK)
DATA:
The DATA Field could be used to transfer the optional CID, NAD and
INF Field of the ISO14443-4 communication protocol. In most cases
the INF Field carries an APDU to the transponder.
FIRST:
This bit indicates the first protocol of a new command. It is necessary for single commands
and chained commands.
b0: The present protocol block is the second or further part of a chained command.
b1: The present protocol block is a single command or the first part of a chained
command.
The DATA Field could be used to transfer the optional CID-, NAD- and INF field of the
(DATA) ISO14443-4 communication protocol. In most cases the INF Field carries an APDU to the n
transponder.
Details RESPONSE-DATA
Page 94 of 136
IDENTIFICATION ID CPR30+
0x02 INF:
This response is given by the reader if the protocol includes data from the transponder.
(PSTAT) 6 7 8 9 10…n-2 1
STATUS PSTAT BLK_CNT DATA
0x94 0x01 0xXX 0xXX
0x00 0x02 0xXX 0xXX
0xFF BUSY:
This response is given by the reader to re-trigger the receive timeout of the host. This response
could occur if an error in data exchange between transponder and reader had happened and
the reader retries the process by itself.
6 7 8 9
STATUS PSTAT BLK_CNT
0x94 0xFF 0xXX
The BLK_CNT is a block counter which indexes each transmission from the reader to the Host.
(BLK_CNT) 2
On basis of the BLK_CNT the host could proof and sort the received protocols.
The DATA Field could be used to transfer the optional CID-, NAD- and INF field of the
(DATA) ISO14443-4 communication protocol. n
In most cases the INF Field carries an APDU to the transponder.
Page 95 of 136
IDENTIFICATION ID CPR30+
NOTE:
• TIMEOUT = 255: The reader used the FWI as transmitted from the
transponder.
• The value of TIMEOUT must be considered for calculating the
TR-RESPONSE-TIME
This Parameter with variable Length is provided for the transparent data transfer to the
transponder. Refer to ISO 14443-4, chapter "Block Format".
Page 96 of 136
IDENTIFICATION ID CPR30+
NOTE:
PCB is mandatory for each command whereas the parameters in [ ] brackets are
optional. For further Information please see ISO/IEC ISO14443-4
Details RESPONSE-DATA
Field Description / Value Length
COMMAND 0xBF ISO 14443-4 Container Command (#) 1
RESPONSE-
n
DATA
NOTE:
The maximum buffer for the RESPOSE-DATA is 256 byte (FSDI = 8).
Page 97 of 136
IDENTIFICATION ID CPR30+
NOTE:
This command could be used only after the transponder was selected. [0x25] Select
Details REQUEST-DATA
Field Description / Value Length
Command 0x2B ISO14443-4 transponder-Info 1
Details RESPONSE-DATA
Field Description / Value Length
Transponder Frame-Size
Displays the present supported data transfer rate from reader to transponder.
(Divisor send Integer):
DSI 1
DSI b00 b01 b10 b11
kBit / s 106 212 424 847
Displays the present supported data transfer rate from transponder to reader.
(Divisor receive Integer):
DRI 1
DRI b00 b01 b10 b11
kBit / s 106 212 424 847
Page 98 of 136
IDENTIFICATION ID CPR30+
0 = short frame
A short frame is used to initiate communication and consists of, in the following order:
- start of communication.
MODE 0+1 - 7 data bits transmitted LSB first 1
- end of communication.
- No parity bit is added.
1 = standard frame
Standard frames are used for data exchange and consist of:
- start of communication.
- n * (8 data bits + odd parity bit), with n _ 1. The LSB of each byte is transmitted first.
Each byte is followed by an odd parity bit. The parity bit P is set such that the number
of 1s is odd in (b1 to b8, P).
- end of communication.
If RSP-Length is set to “0” the reader will send the command but not wait for any
RSP-Length response. If RSP-Length is not equal to “0” the reader will send the command and 1
return the response data of the transponder without SOF and EOF.
The TIMEOUT value defines the time for receiving the whole transponder response.
If the TIMEOUT it exceeded the command will be abort and the Status
“NO TRANSPONDER” is returned.
Bit 7 6 5 4 3 2 1 0
Function FWI-VALUE Timeout-Value
TIMEOUT 1
FWI-Value:
Page 99 of 136
IDENTIFICATION ID CPR30+
NOTE:
Selects kind and mode of checking the data integrity of the RF-Channel.
Bit 7 6 5 4 3 2 1 0
Function - - - - RxCRCEn TXCRCEn - ParityEn
ParityEn:
b0: No parity bit is inserted or expected
b1: A parity bit is inserted in the transmitted data stream after each byte and
expected in the received data stream after each byte
(standard ISO14443A)
CRC-INFO 1
TxCRCEn:
b0: No CRC is inserted/transmitted
b1: A CRC is calculated over the transmitted data and the CRC byte(s) are
appended to the data stream
RxCRCEn:
b0: No CRC is checked
b1: The last byte(s) of a received frame is/are interpreted as CRC byte/s
Examples:
Command CRC-INFO comment
REQA 0x01 Parity, no TxCRC, no RxCRC
HALT 0x0D Parity, TxCRC, RxCRC
Complete transponder request without SOF and EOF. If “TxCRCEn” is “1” the reader
REQUEST-
ap-pended a calculated CRC to the date stream. If “TxCRCEn” is “0” the application n
DATA
should send the CRC within the Request-Data, if the CRC is needed.
The TIMEOUT value defines the time for receiving the whole transponder response.
If the TIMEOUT it exceeded the command will be abort and the Status
“NO TRANSPONDER” is returned.
Bit 7 6 5 4 3 2 1 0
Function FWI-VALUE Timeout-Value
TIMEOUT 1
FWI-Value:
0 1 ms
1 1 ms
2 2 ms
3 3 ms
4 5 ms
5 10 ms
6 20ms
7 39 ms
8 78 ms
9 155 ms
10 310ms
11 619 ms
12 1237 ms
13 2474 ms
14 4948ms
NOTE:
Selects kind and mode of checking the data integrity of the RF-Channel.
Bit 7 6 5 4 3 2 1 0
Function - - - - RxCRCEn TXCRCEn - ParityEn
ParityEn:
b0: No parity bit is inserted or expected
b1: A parity bit is inserted in the transmitted data stream after each byte and
expected in the received data stream after each byte
(standard ISO14443A)
TxCRCEn:
b0: No CRC is inserted/transmitted
CRC-INFO 1
b1: A CRC is calculated over the transmitted data and the CRC byte(s) are
appended to the data stream
RxCRCEn:
b0: No CRC is checked
b1: The last byte(s) of a received frame is/are interpreted as CRC byte/s
Examples:
Command CRC-INFO comment
REQA 0x01 Parity, no TxCRC, no RxCRC
HALT 0x0D Parity, TxCRC, RxCRC
REQUEST-DATA (MODE 3)
Field Description / Value Length
Command 0xBD ISO14443A Transparent Command 1
Options for frame format request.
The following frame types are defined:
- short frames for commands like REQA, WUPA, ...
- standard frames for regular commands
MODE 3 1
- bit oriented anticollision frame for anticollision command
- bit oriented frame with variable bitrates
3 = bit oriented frame
with variable bitrates Bit oriented frames with variable Tx- and Rx-Bitrates
The TIMEOUT value defines the time for receiving the whole transponder response.
If the TIMEOUT it exceeded the command will be abort and the Status
“NO TRANSPONDER” is returned.
Bit 7 6 5 4 3 2 1 0
Function FWI-VALUE Timeout-Value
FWI-Value:
NOTE:
Selects kind and mode of checking the data integrity of the RF-Channel.
Bit 7 6 5 4 3 2 1 0
Function - - - - RxCRCEn TXCRCEn - ParityEn
ParityEn:
b0: No parity bit is inserted or expected
b1: A parity bit is inserted in the transmitted data stream after each byte and
expected in the received data stream after each byte
(standard ISO14443A)
CRC-INFO TxCRCEn: 1
b0: No CRC is inserted/transmitted
b1: A CRC is calculated over the transmitted data and the CRC byte(s) are
appended to the data stream
RxCRCEn:
b0: No CRC is checked
b1: The last byte(s) of a received frame is/are interpreted as CRC byte/s
Examples:
Command CRC-INFO comment
REQA 0x01 Parity, no TxCRC, no RxCRC
HALT 0x0D Parity, TxCRC, RxCRC
NOTE:
Data is only transferred if STATUS = 0x00, 0x02, 0x83, 0x84, 0x94.
Options for frame format request. The following frame types are defined:
standard frames for regular commands;
- bit oriented frame
The TIMEOUT value defines the time for receiving the whole transponder response. If
the TIMEOUT it exceeded the command will be abort and the Status
“NO TRANSPONDER” is returned.
Bit 7 6 5 4 3 2 1 0
Function FWI-VALUE Timeout-Value
FWI-Value:
0 1 ms
1 1 ms
2 2 ms
3 3 ms
4 5 ms
5 10 ms
6 20ms
7 39 ms
8 78 ms
9 155 ms
10 310ms
11 619 ms
12 1237 ms
13 2474 ms
NOTE:
Select kind and mode of checking the data integrity of the RF-channel.
Bit 7 6 5 4 3 2 1 0
Function - - - - RxCRCEn TxCRCEn - Parity En
ParityEn:
b0: No parity bit is inserted or expected
b1: A parity bit is inserted in the transmitted data stream after each byte and
expected in the received data stream after each byte
(standard ISO14443A)
CRC-INFO
TxCRCEn: 1
b0: No CRC is inserted/transmitted
b1: A CRC is calculated over the transmitted data and the CRC byte(s) are
appended to the data stream
RxCRCEn:
b0: No CRC is checked
b1: The last byte(s) of a received frame is/are interpreted as CRC byte/s
Examples:
Command CRC-INFO comment
REQB 0x0C Parity, no TxCRC, no RxCRC
The TIMEOUT value defines the time for receiving the whole transponder response. If
the TIMEOUT it exceeded the command will be abort and the Status
“NO TRANSPONDER” is returned.
Bit 7 6 5 4 3 2 1 0
Function FWI-VALUE Timeout-Value
FWI-Value:
NOTE:
Examples:
Command FRAME comment
SOF: 10 ETU low and
REQB 0x2D
3 ETU high, EOF-Length = 11 ETU, EGT = 1
Selects kind and mode of checking the data integrity of the RF-Channel.
Bit 7 6 5 4 3 2 1 0
Function - - - - RxCRCEn TXCRCEn - ParityEn
ParityEn:
b0: No parity bit is inserted or expected
b1: A parity bit is inserted in the transmitted data stream after each byte and
expected in the received data stream after each byte
(standard ISO14443A)
CRC-INFO TxCRCEn: 1
b0: No CRC is inserted/transmitted
b1: A CRC is calculated over the transmitted data and the CRC byte(s) are
appended to the data stream
RxCRCEn:
b0: No CRC is checked
b1: The last byte(s) of a received frame is/are interpreted as CRC byte/s
Examples:
Command CRC-INFO comment
REQA 0x01 Parity, no TxCRC, no RxCRC
HALT 0x0D Parity, TxCRC, RxCRC
Bit 7 6 5 4 3 2 1 0
Function TxCRCEn MODE
NOTE:
TR-
n
REQUEST The read and write option FLAGS in the REQUEST-DATA must correspond to
the MODE byte in the request protocol. Reader is always forcing the
command in the way specified by MODE byte in the request protocol.
Details RESPONSE-DATA
Field Description / Value Length
Command 0xBF ISO15693 Transparent Command 1
STATUS 1
Complete transponder response without SOF and EOF. A CRC16 check is
TR-
performed in-side the reader. However the transponder CRC16 is transferred with the n
RESPONSE
response data.
NOTE:
Data is only transferred if STATUS = 0x00, 0x83, 0x94, 0x95.
NOTE:
Detailed data sheets and information's about the functions and capabilities of each transponder type are not
supplied by FEIG ELECTRONIC. For detailed information's we refer to the original data sheets of the chip
manufacturer.
Command
Function Mode Comment
Code
non-addressed addressed select
0x01 Inventory - -
0x25 Select - -
Command
Function Mode Comment
Code
non-addressed addressed select
0x01 Inventory - -
0x25 Select - -
Command
Function Mode Comment
Code
non-addressed addressed select
0x01 Inventory - - - -
0x25 Select - - -
Command
Function Mode Comment
Code
non-addressed addressed select
0x01 Inventory - - - -
0x25 Select - - -
Command
Function Mode Comment
Code
non-addressed addressed select
0x01 Inventory - - - -
0x25 Select - - -
Command
Function Mode Comment
Code
non addressed addressed select
0x01 Inventory - - - -
Command
Function Mode Comment
Code
non-addressed addressed select
0x01 Inventory - - - -
0x25 Select - - -
NOTE:
• The WR-OPTION will be set automatically by the FEIG readers if the WR-OPTION parameter in “CFG4
transponder Parameter is set to “00: automatically set”
• Each sector (32 blocks) must be read separately. For reading data from different sectors a Read Multiple
Block command for each sector must be used.
Command
Function Mode Comment
Code
non-addressed addressed select
0x01 Inventory - - - -
0x25 Select - - -
NOTE:
• The WR-OPTION will be set automatically by the FEIG readers if the WR-OPTION parameter in “CFG4
transponder Parameter is set to “00: automatically set”
• Reading / Writing of more than 128 data blocks requires the new extended address mode with 2 bytes
address length.
Command
Function Mode Comment
Code
non-addressed addressed select
0x01 Inventory - - - -
0x02 Stay Quiet - - -
0x22 Lock Block - WR-OPTION = 1 **
0x23 Read Multiple Blocks -
0x24 Write Multiple Blocks - WR-OPTION = 1 **
0x25 Select - - - - -
0x26 Reset to Ready - - - - -
0x27 Write AFI - - - - -
0x28 Lock AFI - - - - -
0x29 Write DSFID - - - - -
0x2A Lock DSFID - - - - -
0x2B Get System Information - - - - -
0x2C Get Multiple Block Security - - - - -
Status
Custom specific commands
0xA4 Kill - - only Pro
0xA5 WriteSingeBlockPwd - - only Pro
**The WR-OPTION will be set automatically by the FEIG readers if the WR-OPTION parameter is
set to “00 = automatically set”. CFG4: Transponder Parameters
NOTE:
Only one block is allowed for Read Multiple Blocks in “non addressed mode”
10 ANNEX
10.1 ANNEX A: Codes of Transponder Types
Hex-value General
0x00 OK:
Data / parameters have been read or stored without error
Control command has been executed
• There are more transponder data sets requested than the response protocol can transfer at once.
0x95 ISO15693-Error:
• An additional error code for ISO15693 Transponders is sent with response data.
0x96 ISO14443-Error:
• An additional error code for ISO14443 Transponders is sent with response data.
• The reader got no response from SAM within the defined timeout
0x37 Unsupported SAM Baudrate
• The used parameter of Fi and/or Di are not supported by the reader
• The power consumption of the transponder exceeds the antenna power of the reader.
ERROR-SOURCE = 3:
ERROR-
Status
CODE
An error occurs while authentication, MAC calculation or CRC calculation. The reason can be a not
0x901E
satisfied security status or any kind of transmission errors.
© Copyright
All cited brand names, product names, or trademarks belong to their respective holders.
Email: info@feig.de
Homepage: https://www.feig.de/en/