Hi.

On Debian unstable with libccid 1.4.11-1 the following patch seems to be
enough to make pcscd recognize my Lenovo USB Smartcard Keyboard (this
one:

 * 
http://support.lenovo.com/en_US/product-and-parts/detail.page?&LegacyDocID=MIGR-72489

only mine is the Danish version, 51J0364), and to make it work:

--- /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist.orig      
2013-07-14 23:07:48.730199942 +0200
+++ /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist   2013-07-14 
23:09:21.076233025 +0200
@@ -144,6 +144,7 @@
                <string>0x0D46</string>
                <string>0x0D46</string>
                <string>0x17EF</string>
+               <string>0x17EF</string>
                <string>0x09BE</string>
                <string>0x076B</string>
                <string>0x076B</string>
@@ -408,6 +409,7 @@
                <string>0x3003</string>
                <string>0x3010</string>
                <string>0x1003</string>
+               <string>0x6007</string>
                <string>0x0002</string>
                <string>0x3021</string>
                <string>0xA022</string>
@@ -672,6 +674,7 @@
                <string>KOBIL KAAN SIM III</string>
                <string>KOBIL EMV CAP - SecOVID Reader III</string>
                <string>Lenovo Integrated Smart Card Reader</string>
+               <string>Lenovo USB Smartcard Keyboard</string>
                <string>MYSMART MySMART PAD V2.0</string>
                <string>OMNIKEY AG CardMan 3121</string>
                <string>Precise Biometrics Sense MC</string>

Here is the output of running src/parse from ccid-1.4.11:

 idVendor: 0x17EF
  iManufacturer: Lenovo
 idProduct: 0x6007
  iProduct: Lenovo USB Smartcard Keyboard
 bcdDevice: 1.11 (firmware release?)
 bLength: 9
 bDescriptorType: 4
 bInterfaceNumber: 1
 bAlternateSetting: 0
 bNumEndpoints: 3
  bulk-IN, bulk-OUT and Interrupt-IN
 bInterfaceClass: 0x0B [Chip Card Interface Device Class (CCID)]
 bInterfaceSubClass: 0
 bInterfaceProtocol: 0
  bulk transfer, optional interrupt-IN (CCID)
 iInterface: Lenovo Keyboard Smartcard Reader
 CCID Class Descriptor
  bLength: 0x36
  bDescriptorType: 0x21
  bcdCCID: 1.10
  bMaxSlotIndex: 0x00
  bVoltageSupport: 0x01
   5.0V
  dwProtocols: 0x0000 0x0003
   T=0
   T=1
  dwDefaultClock: 4.800 MHz
  dwMaximumClock: 8.000 MHz
  bNumClockSupported: 0 (will use whatever is returned)
   Support 4800 kHz
   Support 6000 kHz
   Support 8000 kHz
   Support 12000 kHz
  dwDataRate: 12903 bps
  dwMaxDataRate: 307200 bps
  bNumDataRatesSupported: 0 (will use whatever is returned)
   Support 12903 bps
   Support 25806 bps
   Support 51613 bps
   Support 103226 bps
   Support 10753 bps
   Support 21505 bps
   Support 43011 bps
   Support 86022 bps
  dwMaxIFSD: 252
  dwSynchProtocols: 0x00000000
  dwMechanical: 0x00000001
   Card accept mechanism
  dwFeatures: 0x000100BA
   ....02 Automatic parameter configuration based on ATR data
   ....08 Automatic ICC voltage selection
   ....10 Automatic ICC clock frequency change according to parameters
   ....20 Automatic baud rate change according to frequency and Fi, Di params
   ....80 Automatic PPS made by the CCID
   01.... TPDU level exchange
  dwMaxCCIDMessageLength: 271 bytes
  bClassGetResponse: 0xFF
   echoes the APDU class
  bClassEnvelope: 0xFF
   echoes the APDU class
  wLcdLayout: 0x0000
  bPINSupport: 0x03
   PIN Verification supported
   PIN Modification supported
  bMaxCCIDBusySlots: 1

I have a vague memory that it used to work out of the box back in 2011
(and a note http://www.koldfront.dk/archive/2011/03/09-224731.html to
support that :-))

I hope this information is useful; thanks for ccid!


  Best regards,

    Adam

-- 
 "I do not find reading diffs in email to be a                Adam Sjøgren
  hardship, but I used to walk uphill both ways to       [email protected]
  school, so I dunno."


_______________________________________________
Muscle mailing list
[email protected]
http://lists.musclecard.com/mailman/listinfo/muscle_lists.musclecard.com

Reply via email to