La ranura PCMCIA


La ranura PCMCIA es una interfaz de conexión de tarjetas de ampliación para ordenadores. Existen muchos tipos de tarjetas que agregan distintas funcionalidades a los ordenadores: lectores de tarjetas inteligentes, módems, tarjetas de red, tarjetas de sonido,…

Las ranuras PCMCIA suelen incorporarse en ordenadores portátiles.

Prerrequisitos de los lectores de tarjetas inteligentes PCMCIA


Antes de iniciar cualquier instalación de un lector de tarjetas inteligentes (y antes de conectarlo al sistema) es necesario instalar el subsistema de soporte de lectores de tarjetas inteligentes de GNU/Linux y OpenSolaris: PC/SC.

 

Este subsistema, en una instalación típica de GNU/Linux u OpenSolaris se compone únicamente de tres paquetes instalables, libpcsclite1, pcscd y pcsc-tools.

 

Un ejemplo de instalación de estos paquetes mediante la utilidad aptitude de GNU/Linux sería la siguiente:

$ sudo aptitude install libpcsclite1
$ sudo aptitude install pcscd
$ sudo aptitude install pcsc-tools

 

Tras instalar PC/SC, podemos proceder a la instalación de los propios controladores del lector de tarjetas. Al contrario de lo que ocurre con los lectores USB, los lectores de tarjetas inteligentes PCMCIA no siguen un estándar que permita identificar un método de instalación común para todos ellos. En este caso es necesario consultar la página Web del fabricante para obtener los controladores e instrucciones específicas para su instalación.

 

Como ejemplo,  se explica brevemente el procedimiento para la instalación del lector SmartCard Cardman 4040 PC/SC del fabricante Omnikey.

 

Una vez instalado PC/SC nos dirigimos a la Web del fabricante y descargamos los drivers que le corresponden a nuestro lector de tarjetas.

 

El archivo con los drivers es, en este caso, un archivo tar.gz que deberemos descomprimir en un directorio:

# tar -xzvf nombre_del_archivo.tar.gz

 

Accedemos por consola en modo root al directorio en donde hemos descomprimido el driver e introducimos la siguiente instrucción:

# ./install

 

Tras un breve momento, el sistema le indicará que el software se ha instalado correctamente. Podrá comprobar que el dispositivo funciona correctamente mediante la aplicación pcsc_scan.

Resolución de problemas comunes

 

¿Cómo puedo comprobar si mi lector de tarjetas inteligentes está correctamente instalado?

Es posible comprobar la correcta instalación del lector de tarjeta inteligente mediante la utilidad pcsc_scan del paquete pcsc-tools. El procedimiento a realizar es:

$ pcsc_scan


La salida típica en consola debe ser muy similar a la siguiente (en este caso teniendo una tarjeta inteligente compatible ISO 7816-4 insertada en el lector):

PC/SC device scanner
V 1.4.8 (c) 2001-2006, Ludovic Rousseau 
Compiled with PC/SC lite version: 1.3.2
Scanning present readers
0: OMNIKEY CardMan 4040 Socket 0 00 00

Mon Oct  6 13:02:06 2008
Reader 0: OMNIKEY CardMan 4040 Socket 0 00 00
Card state: Card inserted, ATR: 3B 79 94 00 00 59 01 01 0E 01 00 01 02 A9

 

En la salida del comando (de la cual se han omitido las líneas finales) se interpretan dos aspectos importantes:

 

  • Hay correctamente instalado un lector, identificado con el número 0 y con la descripción “OMNIKEY CardMan 4040”.
  • Hay una tarjeta insertada, cuyo ATR (respuesta al reset, Answer To Reset) es: 3B 79 94 00…

 

 

Mi lector no se instala correctamente en OpenSolaris ¿Hay alguna instrucción adicional para este sistema operativo?

 

Sí. El controlador PC/SC que se distribuye ya instalado en OpenSolaris comúnmente presenta problemas. Es recomendable en estos casos instalar el controlador PC/SC de Sun Microsystems para Solaris. Podemos descargar este controlador desde la página Web:

https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_SMI-Site/en_US/-/USD/ViewProductDetail-Start?ProductRef=PCSC-Lite-1.1-SP-G-F@CDS-CDS_SMI


Para realizar la descarga es necesario registrarse previamente en la Web de Sun Microsystems.

 

¿Por qué mi lector no encaja en la ranura PCMCIA?

 

Asegúrese de que su ranura es realmente PCMCIA/CARDBUS.

 

Existe un tipo de ranura de expansión llamada ExpressCard que, aunque externamente tenga las mismas dimensiones, internamente se estrecha haciéndola incompatible con los dispositivos PCMCIA estándar. Si la ranura de expansión de su ordenador es ExpressCard (señalada con EX) no podrá usar lectores de tarjetas PCMCIA.