Saltar al contenido
Idioma: ES

¿Por qué un módulo lector de aficionado se deja etiquetas?

Tres causas, por orden de frecuencia: el chip no implementa el protocolo que habla esa etiqueta, la antena pequeña de la placa deja poco margen, y la biblioteca que va encima expone una fracción de lo que el chip sabe hacer. La etiqueta rara vez es el problema.

El protocolo que el chip nunca tuvo

Empieza por la hoja de datos del chip que lleva la placa, y no por la página de producto del módulo. Un chip hecho para ISO/IEC 14443 A no responderá a una etiqueta ISO/IEC 15693, y eso no lo cambian ni la antena, ni el cableado, ni la biblioteca. Una pieza multiprotocolo lo dice sin rodeos: la hoja de datos del TRF7970A de TI enumera 15693, 18000-3, 14443 A y B y FeliCa, y un chip con una lista más corta se queda corto sobre el terreno.

Identifica la etiqueta antes de acusar al módulo, cosa que la página de la identificación del chip hace con un teléfono en un minuto. Un módulo que lee tres de tus cuatro familias de etiqueta se está comportando exactamente como dice su hoja de datos.

Una antena pequeña y sin margen

Las antenas de los módulos son pequeñas, y el alcance sigue al bucle. La nota de adaptación de antenas de TI da una regla de trabajo para una antena de lector: cuenta con unas dos veces la diagonal de la antena, que para una placa de unos pocos centímetros es un toque y no una distancia. La página del tamaño de antena explica por qué la bobina de la propia etiqueta cuenta otro tanto.

Y luego está lo que la rodea. La misma nota pide mantener los planos de masa lejos de las pistas de la antena, y un módulo atornillado encima de una batería, de una pantalla o de una placa metálica se encuentra con la desintonización que encuentra toda etiqueta sobre metal. Un módulo que lee en la mesa y falla dentro de la carcasa no ha cambiado: su antena sí.

La biblioteca por encima del chip

Entre tu programa y el chip hay código que expone un subconjunto de los registros y de los comandos que documenta la hoja de datos. Un módulo que no puede leer un tipo de etiqueta que su chip admite suele ser una biblioteca que nunca lo implementó, y la manera de saberlo es comparar la lista de comandos de la hoja de datos con lo que ofrece la biblioteca.

Este sitio no nombra ninguna biblioteca. Basta con decir que el chip es la referencia y que la biblioteca es una implementación de una parte de él, y que un proyecto cuyo requisito cae fuera de esa parte tiene que llegar al chip directamente.

El orden en que hay que probar

Prueba primero el protocolo, con una etiqueta de cada familia y un teléfono como control: una etiqueta que tu teléfono lee y tu módulo no es un problema del módulo, y una que no lee ninguno de los dos es un problema de la etiqueta.

Prueba segundo la antena, fuera de la carcasa y lejos del metal, a la distancia que predice la regla y no a la que esperabas.

Prueba la biblioteca la última, enviando un comando que documenta la hoja de datos y leyendo la respuesta. Es la más lenta de las tres y la que da una respuesta definitiva, y por eso va después de las dos que a menudo terminan la búsqueda.

Preguntas frecuentes

Mi módulo lee una etiqueta y no otra del mismo tamaño. ¿Por qué?

Probablemente son tipos de etiqueta distintos. El chip implementa los protocolos que enumera su hoja de datos, y las dos etiquetas no hablan el mismo.

¿Lo arreglaría una antena más grande?

Solo si el fallo es de alcance. Un protocolo que el chip no implementa sigue sin leerse a cualquier distancia.

¿Por qué funciona en la mesa y falla dentro de la caja?

El metal y los planos de masa cerca de la antena mueven su sintonía. Prueba dentro de la carcasa, ya que es donde tiene que funcionar.

¿Tiene la culpa la etiqueta?

Rara vez. Compruébala antes con un teléfono: una etiqueta que un teléfono lee es una etiqueta, y el módulo es la parte que hay que explicar.