ACS CCID PC/SC Driver for Linux/Mac OS X
Advanced Card Systems Ltd.
Introduction
------------
acsccid is a PC/SC driver for Linux/Mac OS X and it supports ACS CCID smart card
readers. This library provides a PC/SC IFD handler implementation and
communicates with the readers through the PC/SC Lite resource manager (pcscd).
acsccid is based on ccid. See CCID free software driver [1] for more
information.
To build acsccid, you need the following software:
Linux
- pcsclite 1.8.3 or above
- libusb 1.0.9 or above
- flex
- perl
- pkg-config
Mac OS X
- libusb 1.0.9 or above
- pkg-config
For more information, see the INSTALL file.
[1] https://ccid.apdu.fr/
System Requirements
-------------------
Linux
Mac OS X 10.5 or above
Supported Readers
-----------------
CCID Readers
VID PID Reader Reader Name
---- ---- ------------------- -----------------------------
072F B301 ACR32-A1 ACS ACR32 ICC Reader
072F B304 ACR3201-A1 ACS ACR3201 ICC Reader
072F B305 ACR3201 ACS ACR3201 ICC Reader
072F 8300 ACR33U-A1 ACS ACR33U-A1 3SAM ICC Reader
072F 8302 ACR33U-A2 ACS ACR33U-A2 3SAM ICC Reader
072F 8307 ACR33U-A3 ACS ACR33U-A3 3SAM ICC Reader
072F 8301 ACR33U ACS ACR33U 4SAM ICC Reader
072F 90CC ACR38U-CCID ACS ACR38U-CCID
072F 90CC ACR100-CCID ACS ACR38U-CCID
072F 90D8 ACR3801 ACS ACR3801
072F B100 ACR39U ACS ACR39U ICC Reader
072F B101 ACR39K ACS ACR39K ICC Reader
072F B102 ACR39T ACS ACR39T ICC Reader
072F B103 ACR39F ACS ACR39F ICC Reader
072F B104 ACR39U-SAM ACS ACR39U-SAM ICC Reader
072F B10C ACR39U-U1 ACS ACR39U ID1 Card Reader
072F B113 ACR39U-W1 ACS ACR39U-W1 Top ICC Reader
072F B114 ACR39U-W1 ACS ACR39U-W1 Edge ICC Reader
072F B000 ACR3901U ACS ACR3901 ICC Reader
072F 90D2 ACR83U-A1 ACS ACR83U
072F 8306 ACR85 ACS ACR85 PINPad Reader
072F 2011 ACR88U ACS ACR88U
072F 8900 ACR89U-A1 ACS ACR89 ICC Reader
072F 8901 ACR89U-A2 ACS ACR89 Dual Reader
072F 8902 ACR89U-FP ACS ACR89 FP Reader
072F 1205 ACR100I ACS ACR100 ICC Reader
072F 1204 ACR101 ACS ACR101 ICC Reader
072F 1206 ACR102 ACS ACR102 ICC Reader
072F 2200 ACR122U ACS ACR122U
072F 2200 ACR122U-SAM ACS ACR122U
072F 2200 ACR122T ACS ACR122U
072F 2214 ACR1222U-C1 ACS ACR1222 1SAM PICC Reader
072F 1280 ACR1222U-C3 ACS ACR1222 1SAM Dual Reader
072F 2207 ACR1222U-C6 ACS ACR1222 Dual Reader
072F 222B ACR1222U-C8 ACS ACR1222 1SAM PICC Reader
072F 2206 ACR1222L-D1 ACS ACR1222 3S PICC Reader
072F 222E ACR123U ACS ACR123 3S Reader
072F 2237 ACR123U ACS ACR123 PICC Reader
072F 2219 ACR123U Bootloader ACS ACR123US_BL
072F 2203 ACR125 ACS ACR125 nPA plus
072F 221A ACR1251U-A1 ACS ACR1251 1S CL Reader
072F 2229 ACR1251U-A2 ACS ACR1251 CL Reader
072F 222D [OEM Reader] [OEM Reader Name]
072F 2218 ACR1251U-C (SAM) ACS ACR1251U-C Smart Card Reader
072F 221B ACR1251U-C ACS ACR1251U-C Smart Card Reader
072F 2232 ACR1251UK ACS ACR1251K Dual Reader
072F 2242 ACR1251U-C3 ACS ACR1251 1S Dual Reader
072F 2238 ACR1251U-C9 ACS ACR1251 Reader
072F 225F ACR1251T-E2 ACS ACR1251T CL Reader
072F 224F ACM1251U-Z2 ACS ACR1251 CL Reader
072F 223B ACR1252U-A1 ACS ACR1252 1S CL Reader
072F 223B ACR1252U-M1 ACS ACR1252 1S CL Reader
072F 223E ACR1252U-A2 ACS ACR1252 CL Reader
072F 223D ACR1252U BL ACS ACR1252 USB FW_Upgrade v100
072F 2244 ACR1252U-A1 (PICC) ACS ACR1252U BADANAMU MAGIC READER
072F 2259 ACR1252U-A1 ACS ACR1252IMP 1S CL Reader
072F 225B ACM1252U-Z2ACE ACS ACR1252 CL Reader
072F 225C ACM1252U-Z2ACE BL ACS ACR1252 USB FW_Upgrade v100
072F 223F ACR1255U-J1 ACS ACR1255U-J1 PICC Reader
072F 2239 ACR1256U ACS ACR1256U PICC Reader
072F 2211 ACR1261U-C1 ACS ACR1261 1S Dual Reader
072F 2252 ACR1261U-A ACS ACR1261 CL Reader
072F 2100 ACR128U ACS ACR128U
072F 2224 ACR1281U-C1 ACS ACR1281 1S Dual Reader
072F 220F ACR1281U-C2 (qPBOC) ACS ACR1281 CL Reader
072F 2217 ACR1281U-C2 (UID) ACS ACR1281 Dual Reader
072F 2223 ACR1281U (qPBOC) ACS ACR1281 PICC Reader
072F 2208 ACR1281U-C3 (qPBOC) ACS ACR1281 Dual Reader
072F 0901 ACR1281U-C4 (BSI) ACS ACR1281 PICC Reader
072F 220A ACR1281U-C5 (BSI) ACS ACR1281 Dual Reader
072F 2215 ACR1281U-C6 ACS ACR1281 2S CL Reader
072F 2220 ACR1281U-C7 ACS ACR1281 1S PICC Reader
072F 2233 ACR1281U-K ACS ACR1281U-K PICC Reader
072F 2234 ACR1281U-K ACS ACR1281U-K Dual Reader
072F 2235 ACR1281U-K ACS ACR1281U-K 1S Dual Reader
072F 2236 ACR1281U-K ACS ACR1281U-K 4S Dual Reader
072F 2213 ACR1283L-D1 ACS ACR1283 4S CL Reader
072F 222C ACR1283L-D2 ACS ACR1283 CL Reader
072F 220C ACR1283 Bootloader ACS ACR1283U FW Upgrade
072F 2258 ACR1311U-N1 ACS ACR1311 PICC Reader
072F 0102 AET62 ACS AET62 PICC Reader
072F 0103 AET62 ACS AET62 1SAM PICC Reader
072F 0100 AET65 ACS AET65 ICC Reader
072F 224A AMR220-C ACS AMR220 Reader
072F 8201 APG8201-A1 ACS APG8201
072F 8206 APG8201-B2 ACS APG8201-B2
072F 8202 [OEM Reader] [OEM Reader Name]
072F 8205 [OEM Reader] [OEM Reader Name]
072F 90DB CryptoMate64 ACS CryptoMate64
072F B200 ACOS5T1 ACS CryptoMate (T1)
072F B106 ACOS5T2 ACS CryptoMate (T2)
072F B112 ACOS5T2 ACS CryptoMate EVO
non-CCID Readers
VID PID Reader Reader Name
---- ---- ------------------- -----------------------------
072F 9000 ACR38U ACS ACR38U
072F 90CF ACR38U-SAM ACS ACR38U-SAM
072F 90CE [OEM Reader] [OEM Reader Name]
072F 0101 AET65 ACS AET65 1SAM ICC Reader
072F 9006 CryptoMate ACS CryptoMate
History
-------
v1.1.8 (6/1/2020)
- Add the following readers support:
ACR39U-W1 Top ICC Reader
ACR39U-W1 Edge ICC Reader
ACR1251T CL Reader
- Import files from ccid 1.4.31.
- Merge with ccid 1.4.31.
- InterruptRead(): log the timeout used.
- Remove response timeout fix for APG8201 and APG8201Z.
v1.1.7 (24/7/2019)
- Add the following readers support:
ACR3201 ICC Reader
CryptoMate EVO
- Fix card detection issue for multi-slot readers on macOS.
- Fix configuration descriptor issue on macOS in OpenUSBByName().
- Fix APG8201 response timeout issue.
- Merge with ccid 1.4.5.
- Do not build simclist with (unused) file dump option.
- MacOSX/configure: fix checking error for dynamic library libusb.
v1.1.6 (29/10/2018)
- Add the following readers support:
ACR1252 CL Reader (ACM1252U-Z2ACE)
ACR1252 USB FW_Upgrade v100 (ACM1252U-Z2ACE BL)
- Enable TLV properties for APG8201-B2 in IFDHControl().
- Enable TLV properties for APG8201-B2 in process_spe_ppdu().
- Fix ACR39U T=0 APDU problem in CmdXfrBlockTPDU_T0().
- Return 6B 80 for supported readers in CCID_Receive().
- Merge with ccid 1.4.29.
- Remove extra_egt() causing problems.
- Update the comment in IFDHControl().
- Fix undefined symbol yylex.
- Set the status to absent if SAM reset failed in IFDHPowerICC().
- Merge with ccid 1.4.30.
- Import files from ccid 1.4.30.
- macOS: exit configure with an error when needed.
- Fix libusb config descriptor leak.
- Fix leaking an allocated bundle in case no matching reader was found.
- InterruptStop(): Log the libusb text instead of number.
- InterruptRead(): revert change.
- Enable ICC extended APDU for ACR1281U-C1 >= v526.
- Add IOCTL_SMARTCARD_TOGGLE_CARD_STATE for SAM slot.
v1.1.5 (23/10/2017)
- Add the following readers support:
ACR1252IMP 1S CL Reader
AMR220 Reader
APG8201-B2
- Merge with ccid 1.4.26.
- Fix spelling in log message.
- PowerOn: use automatic voltage selection when needed.
- PowerOn: move from 1.8V to 5V if 1.8V is not supported.
- PowerOn: always try every possible voltage values.
- PowerOn: default value comes from Info.plist.
- MacOSX/configure: remove reference to libusbx.
- MacOSX/configure: check static libusb will be used.
- MacOSX/configure: move definition of MAC_VERSION.
- ifdhandler: only GetNewReaderIndex() has to be thread protected.
- FreeChannel(): release reader_index only after use.
- Fix ACR39U memory card problem in IFDHSetProtocolParameters().
- Use CHECK_STATUS macro to check read/write status in acr38cmd.c.
- Try 10 times to warm up the reader in CreateChannelByNameOrChannel().
- Merge with ccid 1.4.27.
- InterruptRead(): return a valid IFDHandler code.
- ccid_usb.c: document CCID composite devices.
- Makefile.am: do not display udev message in red.
- OpenUSBByName(): the device bus & addr must match.
- CmdEscapeCheck(): signals buffer overflow.
- OpenUSBByName(): simplify USE_COMPOSITE_AS_MULTISLOT code.
- configure.ac: fix error message for SCardEstablishContext.
- Return IFD_ERROR_INSUFFICIENT_BUFFER in IFDHControl().
- Rename ACR3901U ICC Reader to ACR3901 ICC Reader.
- Merge with ccid 1.4.28.
- udev rule: allow rule overwrite.
- Makefile: add support of spaces in DESTDIR.
- Process IOCTL_FEATURE_IFD_DISPLAY_PROPERTIES in IFDHControl().
- Process FEATURE_IFD_DISPLAY_PROPERTIES in process_spe_ppdu().
- Process IOCTL_FEATURE_GET_KEY in IFDHControl().
- Process FEATURE_GET_KEY in process_spe_ppdu().
- Process IOCTL_FEATURE_WRITE_DISPLAY in IFDHControl().
- Process FEATURE_WRITE_DISPLAY in process_spe_ppdu().
- Check for iconv.
- Enable specific I/O controls for APG8201-B2 in IFDHControl().
v1.1.4 (7/12/2016)
- Add the following readers support:
ACR1261 CL Reader
ACR1311 PICC Reader
ACR1281 Dual Reader (ACR1281U-C2 UID Reader)
- Merge with ccid 1.4.25.
- Import src/misc.h.
- log_msg(): log up to 3 lines of 80 characters.
- Fix spelling error in a log message.
- Add missing openct/README in distribution.
- CmdXfrBlockCHAR_T0: returns an error when needed.
- create_Info_plist.pl: fix typos in comment.
- Remove extra spaces.
- Fix incorrect message length for APG8201 v008I.
v1.1.3 (22/6/2016)
- Add the following readers support:
ACR39U ID1 Card Reader
ACR1251 CL Reader (ACM1251U-Z2)
- Break if the device was disconnected in Multi_PollingProc().
- Merge with ccid 1.4.23.
- MacOSX/configure: exit in error if configure failed.
- InterruptRead(): log libusb error name.
- Remove support of DRIVER_OPTION_RESET_ON_CLOSE.
- Update URL in a comment.
- ccid_usb.c: improve close_libusb_if_needed().
- Fix a busy loop consuming 100% of CPU.
- Merge with ccid 1.4.15.
- get_end_points(): be more strict for bInterfaceClass = 255.
- Add control codes for Windows compatibility.
- Merge with ccid 1.4.24.
- ccid_usb.c: fix a race condition on multi reader.
- CreateChannel: allow to use a non default timeout.
- IFDHGetCapabilities: fix SCARD_ATTR_VENDOR_IFD_SERIAL_NO size.
- Fix a race condition in CardDetectionThread().
- Avoid libusb timeout on Mac OS X in CreateChannelByNameOrChannel().
- Fix random order of interfaces in OpenUSBByName().
v1.1.2 (18/2/2016)
- Return the second version in ACR83_GetFirmwareVersion().
- Disable SetParameters for OEM Reader (VID: 072F, PID: 8205) v029Z in
ccid_open_hack_post().
- Merge with ccid 1.4.22.
- Comments: Remove the $Id$ tag.
- Move max() definition in a header file.
- IFDHTransmitToICC: Reuse ccid_descriptor.
- OpenUSBByName(): use device bus and address only when available.
- IFDHCloseChannel(): use FreeChannel().
- CreateChannelByNameOrChannel(): call FreeChannel() in case of error.
- OpenUSBByName(): do not call close_libusb_if_needed().
- OpenUSBByName(): read Info.plist only once.
- OpenUSBByName(): add some low level debug.
- OpenUSBByName(): fix possible use of uninitialized variable.
v1.1.1 (3/11/2015)
- Fix the mutex lock problem in Multi_InterruptRead().
- Fix uninitialized variable warning in ACR38_CmdPowerOn().
- Fix APDU sequence bug in ACR122U.
- Merge with ccid 1.4.19.
- Use libusb_error_name() instead of strerror().
- Ignore errno and use libusb returned value only.
- IFDHSleep(): timout parameter is in ms not µs.
- Enable syslog logging on Yosemite.
- Merge with ccid 1.4.20.
- MacOSX/configure: use /usr/local/libexec/... on El Capitan.
- Merge with ccid 1.4.21.
- Use libusb_error_name() to display the error name.
- OpenUSBByName(): add more time on Mac OS X.
- OpenUSBByName(): fix the order of interfaces in log.
- OpenUSBByName(): free the device list in case of error.
- Info.plist: use hex values in the documentation.
- Replace ccid_error() with acr38_error() in ACR38_Receive().
- Update LIBUSB_NEEDED_VERSION to 1.0.9 in configure.ac.
- Return IFD_ERROR_INSUFFICIENT_BUFFER if rx_length < 2 in CCID_Receive().
- Return 64 02 if two "new PIN" entries do not match in CCID_Receive().
- Implements SPE pseudo APDU from PC/SC v2.02.02 Part 10 Supplement.
- Enable bPPDUSupport over SCardTransmit in IFDHControl().
- Return 6B 80 if the parameter is invalid in SecurePINVerify().
- Return 6B 80 if the parameter is invalid in SecurePINModify().
- Fix segmentation fault on Mac OS X in CardDetectionThread().
- Break if the device was disconnected in CardDetectionThread().
- Use pthread_exit() in CardDetectionThread().
- Add the following readers support:
ACR1251 Reader
ACR3201 ICC Reader
OEM Reader (VID: 072F, PID: 8205)
v1.1.0 (10/12/2014)
- Add the following readers support:
ACR1255U-J1 PICC Reader
- Fix the PICC detection problem in ACR1281 2S CL Reader.
- Merge with ccid 1.4.18.
- Fix the memory leak in Multi_PollingProc().
- Fix the compilation warnings.
v1.0.8 (3/7/2014)
- Add the following readers support:
ACS ACR1252U BADANAMU MAGIC READER
ACS ACR1261 1S Dual Reader
- Change the delay of cold reset to 10 ms.
- Remove the checking of specific mode before setting the parameters.
v1.0.7 (16/6/2014)
- Fix ACR39U card power on problem.
- Add the following readers support:
ACR1251 1S Dual Reader
CryptoMate (T1)
CryptoMate (T2)
- Remove ChangeLog from DISTCLEANFILES.
v1.0.6 (17/4/2014)
- Add the following readers support:
ACR32 ICC Reader
ACR1251K Dual Reader
ACR1252 1S CL Reader
ACR1252 CL Reader
ACR1252 USB FW_Upgrade v100
ACR1256U PICC Reader
- Fix ACR32 incorrect max slot index.
- Get the data rates if bNumDataRatesSupported is not equal to zero.
- Merge the fixes from ccid:
Use ATTRS{bInterfaceClass}=="0b" in src/pcscd_acsccid.rules.
Fix the buffer overflow in ATR_InitFromArray().
Fix the T1 resync problem.
v1.0.5 (2/9/2013)
- Fix a bug that ACR38U cannot select the card type reading from Info.plist on
Linux x64 platform.
- Fix a bug that ACR1222U-C1 and ACR39U cannot detect the card.
- Fix a bug that the driver cannot start the debug mode on Mac OS X 10.8.
- Import udev rules from ccid-1.4.12 to remove pcscd group support.
- Add the following readers support:
ACR3901U ICC Reader
ACR123 3S Reader
ACR123 PICC Reader
ACR123US_BL
ACR1251U-C Smart Card Reader (SAM)
ACR1251U-C Smart Card Reader
ACR1281U-K PICC Reader
ACR1281U-K Dual Reader
ACR1281U-K 1S Dual Reader
ACR1281U-K 4S Dual Reader
v1.0.4 (15/6/2012)
- Add the following readers support:
ACR39U ICC Reader
ACR39K ICC Reader
ACR39T ICC Reader
ACR39F ICC Reader
ACR39U-SAM ICC Reader
ACR1251 1S CL Reader
ACR1251 CL Reader
OEM Reader (VID: 072F, PID: 222D)
ACR1283 4S CL Reader
ACR1283 CL Reader
ACR1283U FW Upgrade
- Fix a bug that only the first slot of reader (composite device) can be used if
pcsc-lite is compiled with libudev support.
- Fix a bug that APG8201 causes segmentation fault with pcsc-lite 1.8.2.
- Fix a bug that the SAM slot support is not enabled for ACR1281 1S PICC Reader
if the configure option "--enable-composite-as-multislot" is not used.
- Enable silent build and disable static library creation.
- Remove symbolic link creation.
- Fix a bug that pcscd causes segmentation fault on Mac OS X after unloading the
driver.
- Display default message for ACR83U.
v1.0.3 (13/1/2012)
- Add the following readers support:
ACR1281 PICC Reader (qPBOC)
ACR1281 1S Dual Reader
ACR1281 2S CL Reader
ACR33 ICC Reader
ACR1281 1S PICC Reader
ACR38U
ACR38U-SAM
OEM Reader (VID: 072F, PID: 90CE)
CryptoMate
OEM Reader (VID: 072F, PID: 8202)
ACR1222 1SAM PICC Reader (ACR1222U-C1)
ACR1222 1SAM PICC Reader (ACR1222U-C8)
ACR89 ICC Reader
ACR89 Dual Reader
ACR89 FP Reader
AET62 PICC Reader
AET62 1SAM PICC Reader
AET65 ICC Reader
AET65 1SAM ICC Reader
CryptoMate64
- Import udev rules from ccid-1.4.3 to support pcscd auto-start.
- Fix reader hang problem by checking card status of ACR85 PICC before
exchanging APDU.
- Correct the code that enabling polling mode is applied to ACR122U only and
not all ACS readers.
- Fix a problem that the optimal baud rate is not selected properly in
IFDHSetProtocolParameters().
- Perform cold reset and try default Fl/Dl (0x11) if PPS_Exchange() or
SetParameters() is failed in IFDHSetProtocolParameters().
- Protocol parameters will not be set in IFDHSetProtocolParameters() if card is
specific mode.
- Correct the value of CCID features and maximum data rate of ACR88U and
ACR128U.
- Add BSI miscellaneous command to return driver version for ACR1281 BSI
readers.
- Correct the value of CCID features and maximum data rate of ACR1281 1S Dual
Reader.
- Fix problem using pcsc-lite 1.7.3 or later header files.
- Add SCARD_CTL_CODE(2079) support for sending escape command to ACR1222,
ACR128 and ACR1281 readers.
- Add firmware version check for ACR85.
- Change PID of ACR33 ICC reader from 0x8306 to 0x8307 because 0x8306 is used
by ACR85 ICC.
- Check if the card supports the selected protocol before setting protocol in
IFDHSetProtocolParameters() and return IFD_ERROR_PTS_FAILURE if the card does
not support the selected protocol. On Mac OS X 10.6, pcscd will select wrong
protocol if Starcos 3.2 card is inserted.
- Rename "ACR1222L 3S CL Reader" to "ACR1222 3S PICC Reader".
- Rename "ACR33 ICC Reader" to "ACS ACR33U-A1 3SAM ICC Reader",
"ACS ACR33U-A2 3SAM ICC Reader", "ACS ACR33U-A3 3SAM ICC Reader" and
"ACS ACR33U 4SAM ICC Reader".
- Fix incorrect max slot index for ACR1222U-C1.
- Enable SAM slot support.
- Fix connection problem by setting default supported protocol to T=0 in
IFDHSetProtocolParameters() if the card does not support any protocol.
- Add SCARD_ATTR_ICC_INTERFACE_STATUS and SCARD_ATTR_ICC_PRESENCE support in
IFDHGetCapabilities() (import from ccid-1.4.5).
- Fix problem on getting IFSC from ATR (import from ccid-1.4.5).
- Support extended APDU of up to 64kB with APDU readers
(import from ccid-1.4.5).
- Change CmdPowerOn() read timeout in IFDHPowerICC() from 4 seconds to 10
seconds.
v1.0.2 (16/3/2011)
- Add the following readers support:
ACR125 nPA plus
ACR1281 PICC Reader (BSI)
ACR1281 Dual Reader (qPBOC)
ACR1222 Dual Reader
ACR1222 1SAM Dual Reader
ACR83U
ACR85 PINPad Reader
APG8201
ACR100 ICC Reader
ACR101 ICC Reader
ACR102 ICC Reader
ACR1222L 3S CL Reader
ACR1281 CL Reader (qPBOC)
ACR1281 Dual Reader (BSI)
ACR3801
- Do not use separate thread to poll the slot ICC status due to poor
performance of libusb v0.1.12.
- Enable polling mode automatically for ACR122U v2.06.
- Import Mac OS X 10.6 configure script from ccid-1.3.12.
- Secure PIN Entry (SPE) support for ACR83U requires firmware version 4500 or
later.
- Add SCARD_CTL_CODE(3500) support for sending CCID escape command.
- Add the following readers support:
- Fix a bug that APG8201 and ACR85 cannot receive command properly if command
length is greater than 64 bytes.
- Set infinite timeout in T=0, Short APDU and Extended APDU exchange.
- Simulate ACR1281 Dual Reader (composite device) as multi-slot reader.
- Improve performance and stability for ACR122U v2.00 - v2.04.
- Replace acx_pthread.m4 with ax_pthread.m4 from autoconf archive.
- Add the following driver options and these options are enabled by default:
DRIVER_OPTION_REMOVE_PUPI_FROM_ATR
Remove PUPI from ATR if ISO 14443-B card is detected (ACR1222).
DRIVER_OPTION_DISABLE_PICC
Disable PICC if ICC is inserted (ACR1222).
- Add DRIVER_OPTION_REMOVE_PUPI_FROM_ATR and DRIVER_OPTION_DISABLE_PICC driver
options to ACR85.
- Simulate ACR85 as multi-slot reader. The first slot is ICC and the second
slot is PICC.
- Add firmware version check for ACR1222. The driver options are for ACR1222
v401 only.
- Fix reader hang problem by checking card status of ACR85 PICC if SW1SW2
"63 00" is received.
v1.0.1 (9/11/2009)
- Remove firmware version check.
- Modify the driver to use separate thread to poll the slot ICC states from
interrupt endpoint.
v1.0.0 (14/10/2009)
- New release.
- Based on ccid-1.3.11 (http://pcsclite.alioth.debian.org/ccid.html).
- Change CmdPowerOn() read timeout in IFDHPowerICC() from 60 seconds to 4
seconds.
- Import Mac OS X 10.5 configure script from ccid-1.3.11.
- Update AUTHORS and COPYING files.
- Disable interrupt read in ccid_open_hack_pre() for all readers. It will cause
the driver hang in ACR88U and ACR128U readers on Mac OS X.
- There is a pcscd problem supporting multi-slot readers on Mac OS X. It will
create duplicate reader name for each slot. ACR88U and ACR128U readers are
affected by this bug. For more information, please refer to
http://www.opensc-project.org/sca/wiki/LeopardBugs.
- Test the driver on Mac OS X 10.6.
Support
-------
In case of problem, please contact ACS through:
Web Site: http://www.acs.com.hk/
E-mail: [email protected]
Tel: +852 2796 7873
Fax: +852 2796 1286
-------------------------------------------------------------------------------
Copyright (C) 2009-2020 Advanced Card Systems Ltd.
Copyright (C) 2003-2011 Ludovic Rousseau
Copyright (C) 2000-2001 Carlos Prados
Copyright (C) 2003 Olaf Kirch
Copyright (C) 1999-2002 Matthias Bruestle
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA