Blob Blame History Raw

Installation from source:

get the ccid-x.y.z.tar.gz archive and do:

$ tar xzvf ccid-x.y.z.tar.gz
$ cd ccid-x.y.z
$ ./configure
$ make
$ sudo make install

By default pcscd and my ccid driver use /usr/local/pcsc/drivers/ as
directory for hotplug drivers. The ./configure script try to get the
directory used by pcscd using 'pkg-config libpcsclite --variable=usbdropdir'
So you should not have to use the --enable-usbdropdir=DIR argument.

libusb not found

If the ./configure script says something like:
  configure: error: usb.h not found, use --enable-libusb=PATH
You should use --enable-libusb=PATH to tell ./configure where to find
the usb.h and files. The ./configure script will use
PATH/include/ to search for usb.h and PATH/lib/ to search for

building serial reader driver

A serial CCID reader can also be connected on a serial port. By default
the serial driver is not built. You must explicitely do:

$ ./configure --enable-twinserial
$ make
# make install

builing serial reader driver only

It is possible to generate the driver for the GemPC Twin using serial
communication only (for example on an embedded system without USB).
Just do:
$ ./configure --enable-twinserial --disable-libusb
$ make
# make install

By default ./configure try to get the directory used by pcscd using
'pkg-config libpcsclite --variable=usbdropdir' and add '/serial'.
You should not have to use --enable-ccidtwindir=DIR to specify the
target directory to use. 

configuring the driver for the serial reader

You have to create or edit the file /etc/reader.conf. The file should
contain something like:

# Gemalto reader with serial communication
#  - n is the serial port to use n in [0..3]
#  - reader is the reader name. It is needed for multi-slot readers.
#    Possible reader values are: 
#     GemCorePOSPro
#     GemCoreSIMPro
#     GemCoreSIMPro2
#     GemPCPinPad
#     GemPCTwin (default value)
# example: /dev/ttyS0:GemPCPinPad
#DEVICENAME        /dev/ttySn[:reader]
#FRIENDLYNAME      "GemPCTwin serial"
#LIBPATH           /usr/lib/pcsc/drivers/serial/

FRIENDLYNAME      "GemPC Twin serial"
DEVICENAME        /dev/ttyS0
LIBPATH           /usr/lib/pcsc/drivers/serial/

You will have to adapt the library path to your configuration.

By default the GemPC Twin serial reader parameters are loaded by the
driver, if you use a GemPC PinPad, a GemCore POS Pro, a GemCore SIM
Pro or GemCore SIM Pro 2 (or IDBridge CR30) you have to indicate it in the
DEVICENAME field. Supported values are:
- GemCorePOSPro for GemCore POS Pro
- GemCoreSIMPro for GemCore SIM Pro
- GemCoreSIMPro2 for IDBridge CR30
- GemPCPinPad for GemPC PinPad
- GemPCTwin for GemPC Twin (default value)

You will then have something like:
DEVICENAME /dev/ttyS0:GemPCPinPad

/dev/ttyS0 (DEVICENAME field) is the first serial port under Linux
(known as COM1 under DOS/Windows). Of course if your reader is connected
to another serial port you have to adapt that.

Binary installation:

Contact your distribution support.

Test procedure:

- check the reader is supported by the driver.
  Get your reader USB identification using the lsusb(1) command:
  $ lsusb
  Bus 001 Device 048: ID 08e6:4433 Gemplus

  Look for 08E6 (ifdVendorID) and 4433 (ifdProductID) in
  Of course your numbers will be different.

  If you can't find them add them (if you know what you do) and/or mail me.

- (re)start pcscd with debug on stdout. Simply do 'pcscd --debug stdout'
  (you will need to have root priviledges). And look for:
  readerfactory.c:1319 RFInitializeReader: Attempting startup of ReaderName
  readerfactory.c:1061 RFBindFunctions: Loading IFD Handler 2.0
  ifdhandler.c:76 Entering IFDHCreateChannel (lun: 0)
  ccid_usb.c:131 Manufacturer: Ludovic Rousseau (
  ccid_usb.c:139 ProductString: Generic CCID reader v0.1.0
  ccid_usb.c:143 Copyright: This driver is protected by terms of the GNU General Public License version 2, or (at your option) any later version.
  ccid_usb.c:223 Found Vendor/Product: 08E6/4433 (GemPC433 SL)
  ccid_usb.c:224 Using USB bus/device: 001/047

  If you don't see this the driver is not installed correctly or your
  reader is not yet supported. Read to know
  what to do.