Previously, I had trouble getting some of these readers to work under Linux – the ccid software would complain that the reader firmware was “bogus” and needed to be upgraded. To repeat a previous post, there is *NO* visible difference between the right and wrong versions of the readers – both say SCR331 on the dataplate on the bottom of the reader. However, I noticed that the part number of the good reader is 904622, while the PN of the unusable reader is 904054. Digging around got me to the SCM site, with different choices of driver and firmware ZIP files to download. After much trial-and-error, here is the process I found to work ( you must do this on Windows – either a physical or virtual machine):
- UPDATED (their site has changed): Download two files from http://www.scmmicro.com/support/pc-security-support/downloads.html (there appears to be a Linux utility now, but i have not tried it):
- SCR331 SCR531 CCID (USB) row x Firmware column – v5.22, filename = SCRx31CCID_fw5.22.zip
- SCR331 SCR531 CCID (USB) row x Windows PC/SC CT-API Installer column – v8.18, filename = SCR3xxx_installer_V8.18.zip
- Try the 331/531 USB or serial files, as you need, and click on Utilites and Diagnostic Tools to get the FWupdate file. There is also one for Linux, which sounds very interesting.
- YMMMV – I have not tried these, and I am very tired, so good luck. If you get good results or even some pain and suffering and want to provide feedback that might help others, please do so.
- Consider the rest of this post stale – I have no idea what else may have changed, so maybe it still works, maybe it doesn’t. Sorry. I’ll get to it later.
- Unzip each to the local machine, and turn off any software that uses the card reader (such as the Active Card Gold program that was running in the system tray of the computer I did this on). If you do not, when you run through this process, it will fail with an error message about the card reader being busy. Of course, make sure your reader is plugged into a USB port.
- Run the “Setup.exe” file from the SCR3xxx_installer_V8.18 folder, and accept the defaults. Reboot if you like, but I did not have to do so. On Windows XP and Windows 2000, Plug-and-Play recognized the card reader. If you do not do this step, you may get an error from the upgrader that no USB card could be found.
- Run the “FwUpdate.exe” file from the SCRx31CCID_fw5.22 folder, which also contains the 5.22 .bin firmware file. Click through the process until you get to a dialog with a black window/green text display of the current version (probably 4.13 or something else less than 5.22) and the upgrade version (5.22). Click the Continue button and let it run. It takes only a short time, but do not interrupt it, or you might wreck the reader.
- Test it – it should still work on Windows as before, but plugging it into a Linux PC with the CAC software loaded should show you happy things in /var/log/messages. As an aside, I use the Ryolog 1.3 SuperKaramba theme, which shows me my log in realtime (and color-coded), so I can easily watch events as they happen. Try logging into a CAC-restricted site with your card – it should work fine now.
- On a VMWare Windows Guest, you may not see the reader in Linux unless you uncheck the reader listed under the VM menu, RemovableDevices, USB Devices. Ryolog will show the logged events, something along the lines of the reader being busy, unable to initialize the device.
- In Windows, FwUpdate closes with an error that it found no SCM USB reader – try loading the v8.18 drivers first. Reboot if it still does not work.
- FwUpdate gets to the black and green display dialog, but does not allow you to continue, stating that the USB reader is busy, and to try again later. Make sure all software that could possibly be using the reader is turned off, and try again.
Hope this helps!