cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F072RBT6 PCSC Smart card reader with multiple slots

Egor Vasilyev
Associate II

Hi, everybody. I use the CCID driver for STM32F072RB, converted to the Hal library.

There was a need to make a multi-slot Smart Card Reader (specifically - there will be 3 slots for smart card). In the process, I would like to be able to dynamically switch between them. And that's the main thing.

In the "usbd_ccid_core file.c" there is a set of bytes of the General information of the reader USBD_CCID_CfgDesc[SMARTCARD_SIZ_CONFIG_DESC] (line 82). It has the property "bMaxSlotIndex :highest available slot on this device", which I set to two (bMaxSlotIndex = 0x02).Also, in the file usbd_ccid_cmd.c (line 939) is the RDR_to_PC_NotifySlotChange method. The description of the CCID Protocol specifies that the response to the "RDR_to_PC_NotifySlotChange" command that this method sends a response to should be the number of slot States (www.usb.org/sites/default/files/DWG_Smart-Card_CCID_Rev110.pdf page. 56).I forcibly send the answer allegedly Card Reader has 3 slots and in each card is inserted (I send in the answer number 63).

But windows still shows me one map and not even sends requests for the remaining indices of the slots (and the pcsc program that I could find).

I suggested that usually multiloculate Smart Card Reader display underneath each slot is a separate friendly name. And that's where I shut up.

I can not understand how it is possible to implement, knocking his forehead against the wall for the third day, no progress. I work with smart card directly through the controller. Everything works fine. You only need to display multiple slots in the system.

I will be glad of any help.Link to the project itself https://github.com/caozoux/arm/tree/master/stm32/STM32F0x2_USB-FS-Device_Lib%20V1.0.0/Projects/CCID

2 REPLIES 2
bernyspeedy
Associate

Hi Egor,

did you succeed in building such a multiport ( multi-Slot ) SmartCard Reader? I'm currentlich looking for a company, which could offer such a device, which shall be connected by USB-CCID and shall have a local PinPad.
This reader should be mounted in a 19inch Rack inside our DataCenter.

Thanks a lot for your feedback.

Kind regards,

Berny

@Egor Vasilyev doesn't seem to have had any activity on this forum since the above post - in May 2019