[Pcsclite-muscle] Jinmuyu MR800 card reader problem
Frédéric Marchal
fmarchal
Sun Jun 11 00:45:28 PDT 2017
Hi,
I'm trying to use a MR800 from Jinmuyu but it doesn't work on Linux.
I'm using the latest sources from git for both the ccid driver (Driver
version: 1.4.27) and pcscd (pcsc-lite 1.8.21 daemon).
So far, I believe the problem occurs because the reader reports
nMaxSlotIndex=1 and the ccid driver fails when trying to open slot 1:
00000009 ccid_usb.c:237:OpenUSBByName() Reader index: 1, Device: usb:03eb/
6120:libudev:0:/dev/bus/usb/001/008
00000018 ccid_usb.c:269:OpenUSBByName() interface_number: 0
00000006 ccid_usb.c:270:OpenUSBByName() usb bus/device: 1/8
00000005 ccid_usb.c:302:OpenUSBByName() Using: /usr/local/lib/pcsc/drivers/
ifd-ccid.bundle/Contents/Info.plist
00001082 ccid_usb.c:320:OpenUSBByName() ifdManufacturerString: Ludovic
Rousseau (ludovic.rousseau at free.fr)
00000010 ccid_usb.c:321:OpenUSBByName() ifdProductString: Generic CCID driver
00000005 ccid_usb.c:322:OpenUSBByName() Copyright: This driver is protected by
terms of the GNU Lesser General Public License version 2.1, or (at your
option) any later version.
00000245 ccid_usb.c:406:OpenUSBByName() Try device: 1/8
00000008 ccid_usb.c:416:OpenUSBByName() vid/pid : 03EB/6120
00000005 ccid_usb.c:483:OpenUSBByName() Checking device: 1/8
00000004 ccid_usb.c:532:OpenUSBByName() Opening slot: 1
00000269 -> 000001 65 00 00 00 00 01 07 00 00 00
00000372 <- 000001 81 00 00 00 00 01 07 42 05 00
00000008 commands.c:1235:CmdGetSlotStatus Invalid slot number
Here is the requested information:
$ ./pcscd --version
pcsc-lite version 1.8.21.
Copyright (C) 1999-2002 by David Corcoran <corcoran at musclecard.com>.
Copyright (C) 2001-2015 by Ludovic Rousseau <ludovic.rousseau at free.fr>.
Copyright (C) 2003-2004 by Damien Sauveron <sauveron at labri.fr>.
Report bugs to <pcsclite-muscle at lists.alioth.debian.org>.
Enabled features: Linux x86_64-pc-linux-gnu serial usb libudev usbdropdir=/
usr/local/lib/pcsc/drivers ipcdir=/var/run/pcscd configdir=/usr/local/etc/
reader.conf.d
$ uname -a
Linux HP036 4.10.0-rc6-amd64 #1 SMP Debian 4.10~rc6-1~exp2 (2017-02-02) x86_64
GNU/Linux
The attached mr800-usb.txt is the output of lsusb -v -d 03eb:6120 > mr800-
usb.txt
The attache mr800.log is the output from
export LIBCCID_ifdLogLevel=0x000F
sudo /home/emisys/pcsc/src/pcscd --apdu --foreground --debug --color 2>&1 |
tee mr800.log
I took the liberty of adding a couple messages to try to understand what is
happening. I also added the VID/PID/name to Info.plist to get that far. The
name I entered in Info.plist is the name reported by the Windows SC API.
The full reader reference is MR800UC-V as per the label.
Could you please give me some guidance as to how to make that reader work with
pcsc-lite?
PS: I do speak French if you need to contact me off-list.
Thanks,
Fr?d?ric
-------------- next part --------------
Bus 001 Device 009: ID 03eb:6120 Atmel Corp.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x03eb Atmel Corp.
idProduct 0x6120
bcdDevice 1.00
iManufacturer 1
iProduct 2
iSerial 3
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 86
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 200mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 11 Chip/SmartCard
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 4
ChipCard Interface Descriptor:
bLength 54
bDescriptorType 33
bcdCCID 1.10 (Warning: Only accurate for version 1.0)
nMaxSlotIndex 1
bVoltageSupport 1 5.0V
dwProtocols 3 T=0 T=1
dwDefaultClock 3686
dwMaxiumumClock 3686
bNumClockSupported 0
dwDataRate 9600 bps
dwMaxDataRate 9600 bps
bNumDataRatesSupp. 0
dwMaxIFSD 254
dwSyncProtocols 00000000
dwMechanical 00000000
dwFeatures 000401BE
Auto configuration based on ATR
Auto activation on insert
Auto voltage selection
Auto clock change
Auto baud rate change
Auto PPS made by CCID
CCID can set ICC in clock stop mode
Short and extended APDU level exchange
dwMaxCCIDMsgLen 527
bClassGetResponse 00
bClassEnvelope 00
wlcdLayout none
bPINSupport 0
bMaxCCIDBusySlots 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mr800.log
Type: text/x-log
Size: 54775 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pcsclite-muscle/attachments/20170611/181dd09a/attachment-0001.bin>
More information about the pcsclite-muscle
mailing list