The /etc/reader.conf.d/reader.conf file contains configuration information for serial and (some) PCMCIA smart card readers.
USB readers SHALL NOT be configured using this file. pcscd uses another mechanism to automatically load USB drivers.
The /etc/reader.conf.d/reader.conf is a regular text file. Each reader must be defined by four fields:
The "FRIENDLYNAME" field is an arbitrary text used to identify the reader. This text is displayed by commands like pcsc_scan(1) that prints the names of all the connected and detected readers.
The "DEVICENAME" field was not used for old drivers (using the IFD handler version 2.0 or earlier). It is now (IFD handler version 3.0) used to identify the physical port on which the reader is connected. This is the device name of this port. It is dependent of the OS kernel. The first serial port device is called /dev/ttyS0 under Linux and /dev/cuaa0 under FreeBSD.
The "LIBPATH" field is the filename of the driver code. The driver is a dynamically loaded piece of code (generally a drivername.so*file).
The "CHANNELID" is no more used for recent drivers (IFD handler 3.0) and has been superseded by "DEVICENAME". If you have an old driver this field is used to indicate the port to use. You should read your driver documentation to know what information is needed here. It should be the serial port number for a serial reader.
# Gemplus GemPCTwin reader with serial communication
# connected to the first serial port
FRIENDLYNAME "GemPCTwin serial"
In order to set up your /etc/reader.conf.d/reader.conf file correctly you may want to have debug messages from pcscd. I recommend you to start pscsd in the foreground and debug mode using:
# pcscd --foreground --debug
If everything seems OK you can use the pcsc_scan command to print the list of correctly detected readers and try to get the ATR of your smart cards.
Ludovic Rousseau <email@example.com>