background image

@MAXX

 PRIME 

R

EFERENCE 

M

ANUAL

 

T

ABLE 

O

C

ONTENTS

 

 

5.4.1.

 

CCID transport protocol ........................................................................................ 24

 

List of CCID bulk messages supported ............................................................................... 24

 

List of CCID bulk messages not supported......................................................................... 24

 

6.

 

Commands description .................................................................................................... 26

 

6.1.

 

Escape commands for the contact interface ................................................................ 26

 

6.1.1.

 

Sending escape commands to @MAXX prime .................................................... 26

 

6.1.2.

 

Escape command codes....................................................................................... 26

 

6.1.3.

 

CCID_ESC_GETINFO .......................................................................................... 27

 

6.1.4.

 

CCID_ESC_SETMODE ........................................................................................ 27

 

6.1.5.

 

CCID_ESC_GETMODE........................................................................................ 27

 

6.1.6.

 

CCID_ESC_GET_FW_VERSION ........................................................................ 28

 

6.1.7.

 

CCID_ESC_SET_POWER_ON_RESET_ORDER............................................... 28

 

6.1.8.

 

CCID_ESC_EMV_LOOPBACK ............................................................................ 28

 

6.1.9.

 

CCID_ESC_APDU_TRANSFER .......................................................................... 28

 

6.1.10.

 

CCID_ESC_CLK_FREQUENCY .......................................................................... 29

 

6.1.11.

 

CCID_ESC_GET_SET_ETU ................................................................................ 29

 

6.1.12.

 

CCID_ESC_GET_SET_WAITTIME...................................................................... 29

 

6.1.13.

 

CCID_ESC_GET_SET_GUARDTIME.................................................................. 30

 

6.1.14.

 

CCID_ESC_GET_SET_EGT ................................................................................ 30

 

6.1.15.

 

CCID_ESC_GET_SET_ATR_TIMEOUT.............................................................. 30

 

6.1.16.

 

CCID_ESC_POWER ............................................................................................ 30

 

6.1.17.

 

CCID_ESC_ROUGH_TANSFER.......................................................................... 31

 

6.1.18.

 

CCID_ESC_GET_SET_PROTOCOL ................................................................... 31

 

6.1.19.

 

CCID_ESC_GET_SET_TA1_RFU ....................................................................... 31

 

7.

 

Annexes ........................................................................................................................... 32

 

7.1.

 

Annex A – Status words table ...................................................................................... 32

 

7.2.

 

Annex B – Sample code using escape commands through Escape IOCTL ............... 32

 

 

Summary of Contents for @MAXX prime

Page 1: ...Reference Manual version 1 1 MAXX prime Multifunctional token smartcard microSD flash antenna type A on request ...

Page 2: ...ual MAXX prime contact smartcard reader microSD reader masstorage RF antenna female USB extension USB Stick SCM Microsystems Oskar Messter Strasse 13 85737 Ismaning Germany Phone 49 89 9595 5000 Fax 49 89 9595 5555 ...

Page 3: ...n Stephan Rasch 03 06 2009 1 0 Reviewed version Stephan Rasch 08 06 2009 1 1 Reviewed version Stephan Rasch Approved version Contact information http www scmmicro com products services smart card readers terminals multifunctional token html For sales information please email sales scmmicro com ...

Page 4: ...4 MAXX prime customization options 11 3 5 Hardware features and their principle usage 11 3 5 1 Contact Smart Card Reader 12 3 5 2 Internal RF antenna 14 3 5 3 Micro SD Card Reader 15 3 5 4 Embedded Flash 15 3 5 5 USB extension slot 15 3 6 Applications 16 3 6 1 General 16 3 6 2 Applications provided by SCM Microsystems 18 4 MAXX prime characteristics 19 4 1 MAXX prime high level architecture 19 4 1...

Page 5: ...27 6 1 6 CCID_ESC_GET_FW_VERSION 28 6 1 7 CCID_ESC_SET_POWER_ON_RESET_ORDER 28 6 1 8 CCID_ESC_EMV_LOOPBACK 28 6 1 9 CCID_ESC_APDU_TRANSFER 28 6 1 10 CCID_ESC_CLK_FREQUENCY 29 6 1 11 CCID_ESC_GET_SET_ETU 29 6 1 12 CCID_ESC_GET_SET_WAITTIME 29 6 1 13 CCID_ESC_GET_SET_GUARDTIME 30 6 1 14 CCID_ESC_GET_SET_EGT 30 6 1 15 CCID_ESC_GET_SET_ATR_TIMEOUT 30 6 1 16 CCID_ESC_POWER 30 6 1 17 CCID_ESC_ROUGH_TANS...

Page 6: ... the provided documentation please provide your feedback to support scmmicro com 1 2 Licenses If the document contains source code examples they are provided for illustrative purposes only and subject to the following restrictions You MAY at your own risk use or modify the source code provided in the document in applications you may develop You MAY distribute those applications ONLY in form of com...

Page 7: ... WinCE Driver for SIM interface 3 14 Linux Driver for SIM Interface 5 0 2 2 4 Definition of various terms and acronyms Term Expansion APDU Application Protocol Data Unit ATR Answer to Reset defined in ISO IEC 7816 ATS Answer to select defined in ISO IEC 14443 Byte Group of 8 bits CCID Chip Card Interface Device CID Card Identifier CL Contactless DFU Device Firmware Upgrade DR Divider receive used ...

Page 8: ...cal interface and transmission protocols ISO IEC ISO IEC 7816 4 Identification cards Integrated circuit s cards with contacts Part 4 Interindustry commands for interchange ISO IEC 7816 4 1995 E ISO IEC ISO IEC 14443 3 Identification cards Contactless integrated circuit s cards Proximity cards Part 3 Initialization and anticollision ISO IEC ISO IEC 14443 4 Identification cards Contactless integrate...

Page 9: ... 163 decimal number is represented in hexadecimal as 0xA3 in binary as 10100011 b The least significant nibble of 0xA3 is 0x3 in hexadecimal 0011 b in binary The most significant nibble of xA3 is 0xA in hexadecimal 1010 b in binary ...

Page 10: ...w Speed devices having the slim USB connector The typical application field of the MAXX prime is the combination of physical and logical access within one device 3 2 MAXX prime key features 8 pin ISO7816 compliant contact smart card reader for ID 000 smartcards o PC SC v2 0 compliant o CCID compatible Unique serial number for the Mass Storage interface Can be plugged into any USB slot on a PC with...

Page 11: ...m 3 5 Hardware features and their principle usage The MAXX prime is a multifunctional token device which can be used within a big application field It can be used for one application or for a combination of several applications In the following paragraphs the usage recommendations are outlined to ensure best user experience 1 Contact Smart Card Reader for dual interface Smart Cards with antenna co...

Page 12: ... interface smartcards with additional contacts on C4 C8 Memory cards can be accessed using SCM s Memory Card DLL Note Memory cards which supports C4 C8 will not be able to work as these pins are used for the RF antenna Within a Windows environment the smart card reader can be used with the PC SC driver or with a preinstalled USB CCID driver Windows Vista and future Windows operation systems have t...

Page 13: ...gh which a clock signal can be provided to the microprocessor chip This line controls the operation speed and provides a common framework for data communication between the IFD and the ICC C4 Antena RF antenna C5 GND Ground line providing common electrical ground between the IFD and the ICC C6 Vpp Programming power connection used to program EEPROM of first generation ICCs C7 I O Input output line...

Page 14: ...X is placed on the contactless reader with the MAXX bottom side in direction to the contactless reader The bottom side of the MAXX is the side where the label and the smartcard insertion slot can be found Depending on the used contactless reader and the used dual interface card the MAXX prime establishes a read out distance between 2cm 3cm A little bit bigger antenna within the MAXX pime A results...

Page 15: ... Also the embedded flash memory is connected with the internal USB hub over the flash controller The actual hardware design is able to support embedded flash memory up to 4GB Several different partitions can be created on the flash memory CD Rom partition with Auto run function Secure partition PIN protected It is also possible to upload data on the flash and to create different partitions on prod...

Page 16: ...n ID 000 format Further the device can be used as a passive NFC tag by using a dual interface smartcard And the MAXX can be used as USB Mass Storage device and Micro SD card reader The following graphic shows the case study and the needed infrastructure if the MAXX is used as a passive NFC token A similar use case is the door opener In this case the host is not seen The contactless reader is insta...

Page 17: ...IME REFERENCE MANUAL 17 MAXX prime itself handles the communication protocol but not the application related to the token The application specific logic has to be implemented by software developers on the host ...

Page 18: ...lone application that enables the user to read and write NFC forum compliant records into NFC forum compatible tags It is an easy to use tool to configure rapidly NFC forum tag demonstrations Note MAXX PRIME supports NFC forum tag type 2 and 4 only Smart card commander version 1 1 provides NFC forum record parsing functionality of NDEF records in XML format as well as scripting functionality which...

Page 19: ... link between MAXX prime and the host to which it is connected is the USB interface providing both the power and the communication channel MAXX Prime contains the SCM Mask ROM Controller for the SIM Interface The Mask ROM firmware can handle all the ISO7816 contact protocol and the PC SC communication protocol with the host ...

Page 20: ...NCE MANUAL 20 Software architecture Applications can interface with the driver directly through the PC SC interface The MAXX prime driver implements PC SC v2 0 API towards upper layers and full CCID for the contact slot ...

Page 21: ...Item Characteristic Value Weight 17 7 Grams External dimensions L 66 8 mm W 24 5mm H 11 6mm USB Connector USB type A connector Default color Black rubberized MAXX prime A Default label Drawing with dimensions of the MAXX prime A and accessories can be found in annex 4 2 3 LED behavior MAXX prime and MAXX prime A are equipped with a blue LED MAXX prime prime A states LED Indication blue Just after ...

Page 22: ... draws power from USB bus Voltage 5V Max Current 500mA USB specification USB 2 0 Device USB Speed High Speed Device 480Mbit s Tolerance 240kbit s PID 0416 Flash 5116 SIM and 03F4 Hub VID 04E6 4 2 4 3 Contact interface Parameter Value Description Smart card operating frequency 4 8Mhz Maximum supported card baud rate 500Kbps Cards supported Class A Class B and Class C smart cards Synchronous smart c...

Page 23: ...tool called PC SC Diag capable of providing basic information about the reader and a card through PC SC stack 5 3 Driver 5 3 1 MAXX listing MAXX prime and MAXX prime A are listed by PC SC applications as SCM Microsystems Inc SCR33x USB Smart Card Reader 0 USB Mass Storage Device SCMMICRO MAXX Flash USB Device SCMMICRO MAXX microSD USB Device 5 3 2 Supported operating systems Operating systems supp...

Page 24: ...nformation on the list of CCID bulk messages 10 byte header followed by the message specific data that have been implemented List of CCID bulk messages supported PC_to_RDR_IccPowerOn PC_to_RDR_IccPowerOff PC_to_RDR_GetSlotStatus PC_to_RDR_XfrBlock PC_to_RDR_GetParameters PC_to_RDR_SetParameters PC_to_RDR_Escape PC_to_RDR_Abort PC_to_RDR_SetDataRateAndClockFreqeuncy PC_to_RDR_T0APDU PC_to_RDR_Reset...

Page 25: ...d or if any other internal hardware error is detected This error code has been defined in the error code table 6 2 2 of the CCID specification 5 4 1 3 2 ICC_MUTE This error code is returned when the card does not respond until the reader time out occurs This error will be reported in the response to PC_to_RDR_XfrBlock message and PC_to_RDR_IccPowerOn messages This error code has been defined in th...

Page 26: ...he MAXX prime has to be unplugged and plugged again or the application can send again the same escape command The following escape commands are supported by MAXX prime for the contact interface S No Escape message ID Value 1 CCID_ESC_GETINFO 0x00 2 CCID_ESC_SETMODE 0x01 3 CCID_ESC_GETMODE 0x02 4 CCID_ESC_GET_FW_VERSION 0x03 5 CCID_ESC_SET_POWER_ON_RESET_ORDER 0x04 6 CCID_ESC_EMV_LOOPBACK 0x05 7 CC...

Page 27: ...6 1 4 CCID_ESC_SETMODE This escape message ID sets the current mode of the reader Applications may call this function to set the desired mode Typically this call is used to switch between the EMV and ISO7816 operation The first byte of the input buffer will contain the escape function value and the second one will contain the value for the desired mode of operation The output buffer field shall be...

Page 28: ...point to a byte and shall return the current RESET SEQUENCE selected S No Mode Value Remarks 1 Class C 0x00 Starts with Class C voltage This is the default mode of the reader 2 Class A 0x01 Starts with Class A voltage 3 QUERY 0xFF This is used to retrieve the current mode of operation 6 1 8 CCID_ESC_EMV_LOOPBACK This escape message ID lets the host force the library to perform an EMV Loop back app...

Page 29: ...used by the reader to get and set the current ETU The ETU is specified in terms of smart card clock cycles The input buffer shall point to the escape code followed by a DWORD specifying the value to be set The output buffer shall point to NULL 6 1 12 CCID_ESC_GET_SET_WAITTIME This function code shall be used to set and get the character block waiting time of the reader The wait time is specified i...

Page 30: ...s The buffer shall point to the escape code followed by a structure given below typedef struct _EGT uint8 byGetSetIdentifier uint32 dwEGT EGT 6 1 15 CCID_ESC_GET_SET_ATR_TIMEOUT This function is used to change the delay in ms between the power up attempts in the class A class B and class C sequence The buffer shall point to the escape code followed by a BYTE containing the timeout value 6 1 16 CCI...

Page 31: ...ission protocol for the reader The buffer shall point to the escape code followed by a BYTE The supported protocols are define PROTOCOL_T0 0x00 define PROTOCOL_T1 0x01 define PROTOCOL_UNDEFINED 0xFF 6 1 19 CCID_ESC_GET_SET_TA1_RFU Since the reader is compliant to ISO 7816 3 1997 it will reject cards having a TA1 value which is RFU in respect to this version of the specification Using this escape f...

Page 32: ...x81 MEMORY FAILURE 0x68 0x00 CLASS BYTE INCORRECT 0x6A 0x81 FUNCTION NOT SUPPORTED 0x6B 0x00 WRONG PARAMETER P1 P2 7 2 Annex B Sample code using escape commands through Escape IOCTL File Name T_hbr H ifdef __cplusplus extern C endif define IOCTL_CCID_ESCAPE SCARD_CTL_CODE 0xDAC define CCID_GET_848KBPS_STATUS 0xFF9D define CCID_SET_848KBPS_ON 0x019D define CCID_SET_848KBPS_OFF 0x009D define MINTIME...

Page 33: ...fLen ResLen ULONG ret SCARD_READERSTATE Reader 1 please add the name of the used reader here or use SCardListReaders to find the right reader name char ReaderName SCM Microsystems Inc MAXX PRIME Contactless Reader 0 NULL ContextHandle 1 ret SCardEstablishContext SCARD_SCOPE_USER NULL NULL ContextHandle if ret SCARD_S_SUCCESS ret SCardConnect ContextHandle ReaderName 0 SCARD_SHARE_SHARED SCARD_PROT...

Page 34: ... ret OutByte Reader 0 dwCurrentState SCARD_STATE_UNAWARE Reader 0 dwEventState SCARD_STATE_UNAWARE Reader 0 szReader ReaderName 0 ret SCardGetStatusChange ContextHandle MINTIMEOUT Reader 1 printf nATR for i 0 i Reader cbAtr i printf 2x Reader rgbAtr i printf n n enable 848KBPS ON printf nEnable 848kbps InBufLen 2 InWord CCID_SET_848KBPS_ON ret SCardControl CardHandle IOCTL_CCID_ESCAPE InWord InBuf...

Page 35: ... IOCTL_CCID_ESCAPE InWord InBufLen OutByte 1 ResLen printf n Get 848kbps status lx 2x ret OutByte Reader 0 dwCurrentState SCARD_STATE_UNAWARE Reader 0 dwEventState SCARD_STATE_UNAWARE Reader 0 szReader ReaderName 0 ret SCardGetStatusChange ContextHandle MINTIMEOUT Reader 1 printf nATR for i 0 i Reader cbAtr i printf 2x Reader rgbAtr i printf n n Disable 848Kbps OFF printf nDisable 848KBPS InBufLen...

Page 36: ... 1 ResLen printf n Get 848KBPS status lx 2x ret OutByte Reader 0 dwCurrentState SCARD_STATE_UNAWARE Reader 0 dwEventState SCARD_STATE_UNAWARE Reader 0 szReader ReaderName 0 ret SCardGetStatusChange ContextHandle MINTIMEOUT Reader 1 printf nATR for i 0 i Reader cbAtr i printf 2x Reader rgbAtr i printf n n ret SCardDisconnect CardHandle SCARD_RESET_CARD else printf n SCardConnect failed with 0x 8lX ...

Reviews: