Non-USB Notifications

Since Serial and Network (TCP) interfaces don’t intrinsicly provide an equivalent of the USB InterruptIn endpoint to send event messages on a “side channel”, notifications of card insertions and removals have to be multiplexed with the general flow of command/response messages. To simplify the implementation of the communication protocole within the host application, the RDR_To_PC_Notification message uses the same 10-B header as BulkOut/BulkIn messages (this is different from the USB specification where the InterruptIn endpoint lacks an header).

Format of the InterruptIn messages

Byte Field Value Description / Remark
0 Endpoint 83 InterruptIn
1 Message type 50 RDR_TO_PC_NOTIFYSLOTCHANGE as per CCID
2-5 Length of payload 00000001 or 00000002 Depends on the number of slots (2 bits per slot)
6-10 0000000000 Not used
11 or 11-12 Notification bits See below

Notification bits

Byte 11

Bits Field Values
7-6 Status/notification for slot 3 00: card absent, no change since last notification
01: card present, no change since last notification
10: card removed notification
11: card inserted notification
5-4 Status/notification for slot 2 00: card absent, no change since last notification
01: card present, no change since last notification
10: card removed notification
11: card inserted notification
3-2 Status/notification for slot 1 00: card absent, no change since last notification
01: card present, no change since last notification
10: card removed notification
11: card inserted notification
1-0 Status/notification for slot 0 00: card absent, no change since last notification
01: card present, no change since last notification
10: card removed notification
11: card inserted notification

Byte 12 (only for devices with 4 slots or more)

Bits Field Values
7-6 Status/notification for slot 7 00: card absent, no change since last notification
01: card present, no change since last notification
10: card removed notification
11: card inserted notification
5-4 Status/notification for slot 6 00: card absent, no change since last notification
01: card present, no change since last notification
10: card removed notification
11: card inserted notification
3-2 Status/notification for slot 5 00: card absent, no change since last notification
01: card present, no change since last notification
10: card removed notification
11: card inserted notification
1-0 Status/notification for slot 4 00: card absent, no change since last notification
01: card present, no change since last notification
10: card removed notification
11: card inserted notification