Lecteurs RFID et NFC

Lecteur NFC ACR122U

L'ACR122U est le lecteur NFC USB de référence du secteur — le périphérique PC/SC contre lequel une génération de logiciels de contrôle d'accès et NFC a été écrite — aujourd'hui arrêté par ACS mais toujours fourni pour maintenir les déploiements existants.

L'ACR122U d'ACS est un lecteur/enregistreur USB PC/SC pour cartes et tags à 13,56 MHz, destiné aux logiciels qui parlent déjà PC/SC ou libnfc. Il prend en charge les cartes ISO 14443-4, MIFARE Classic et Ultralight, les tags NFC Forum et FeliCa, mais pas les tags 125 kHz, ISO 15693 ou UHF. ACS signale le modèle comme arrêté ; Proud Tek le fournit toujours et, pour les nouvelles conceptions, les deux modèles ACS actuels, l'ACR1252U et l'ACR1552U.

Échantillons standard gratuits · Devis sous un jour ouvré

Détails du produit

Disponibilité : Proud Tek fournit l'ACR122U ; confirmez la quantité lors de votre commande. ACS le signale comme arrêté, donc pour une nouvelle conception qui doit rester en production pendant des années, vous pouvez commencer par l'un des lecteurs USB NFC actuels d'ACS, l'ACR1252U (USB NFC Reader III) ou l'ACR1552U (USB NFC Reader IV), que nous fournissons également ; la comparaison plus bas indique ce qu'il faut vérifier dans votre code PC/SC avant de changer. Si votre logiciel n'est pas encore écrit et que vous préférez appeler des fonctions de bibliothèque plutôt qu'envoyer des APDU, le µFR Classic CS avec son SDK gratuit est l'autre solution.

Qu'est-ce que l'ACR122U

L'ACR122U est un lecteur/enregistreur USB de bureau fabriqué par Advanced Card Systems (ACS). ACS le décrit comme conforme PC/SC et CCID, pour les cartes ISO 14443-4 de type A et B, MIFARE, les tags ISO 18092 (NFC) et FeliCa à 13,56 MHz. À l'intérieur, un contrôleur sans contact NXP PN532 se trouve derrière un second contrôleur qui présente l'interface USB CCID, de sorte que l'hôte voit un lecteur de carte à puce sans contact standard nommé « ACR122U PICC Interface ». Sa LED rouge/verte et son buzzer peuvent être pilotés depuis votre application.

Trois conséquences découlent de cette conception. Un logiciel écrit pour PC/SC, comme un script pyscard ou une application WinSCard, fonctionne sans SDK du fabricant. Les cartes qui n'acceptent pas les APDU ISO 7816-4, comme MIFARE Classic, sont atteintes par des commandes dont l'octet de classe est FF, que le lecteur traduit en commandes de carte (voir le tableau des commandes ci-dessous). Et le lecteur fonctionne avec une seule carte à la fois : son anticollision sélectionne une seule carte, présentez donc les cartes une par une.

Installation sur l'hôte sous Windows, macOS et Linux

HôtePiloteVérifiez le fonctionnementAttention à
WindowsPilotes USB CCID et PC/SC intégrés de Microsoft ; ACS indique qu'aucun pilote ACS n'est requis. La spécification d'ACS mentionne les versions de Windows jusqu'à Windows 10Le Gestionnaire de périphériques affiche « ACR122U PICC Interface »Les commandes de lecteur envoyées sans carte présente (commandes d'échappement, SCARD_CTL_CODE(3500)) nécessitent un DWORD EscapeCommandEnable = 1 sous la clé Device Parameters du lecteur (VID_072F&PID_2200)
macOSLe pilote PC/SC open source acsccid d'ACS, qui mentionne l'ACR122U et prend en charge OS X 10.7 ou version ultérieureVotre outil PC/SC liste le lecteur, par exemple readers() dans pyscardTestez sur la version de macOS que vous déploierez
Linuxpcscd (pcsc-lite) avec le pilote CCID libccid, ou acsccid d'ACSlsusb affiche 072f:2200 ; pcsc_scan liste le lecteur et la carteLe pilote NFC pn533 du noyau s'empare du lecteur en premier (paragraphe suivant) ; les commandes d'échappement nécessitent ifdDriverOptions 0x0001 dans le fichier Info.plist de libccid
AndroidACS mentionne Android 3.1 et versions ultérieures, via la bibliothèque Android propre à ACSTestez avec votre application sur l'appareil cibleLa voie Android utilise la bibliothèque d'ACS, et non PC/SC

Le conflit pn533 sous Linux. Le noyau Linux possède son propre pilote NFC, pn533_usb, et sa table de périphériques inclut l'ID USB de l'ACR122U (072f:2200). Le noyau associe le lecteur dès son branchement, avant que pcscd puisse le faire : le pilote CCID de pcsc-lite échoue alors avec « Can't claim interface », et libnfc ne peut pas non plus ouvrir le périphérique. Déchargez les modules pn533_usb et pn533, mettez nfc, pn533 et pn533_usb sur liste noire dans /etc/modprobe.d (libnfc fournit exactement ce fichier de liste noire), puis rebranchez le lecteur et redémarrez pcscd. La mise sur liste noire désactive la pile NFC du noyau, ne le faites donc que sur les hôtes qui ne l'utilisent pas pour un autre périphérique.

Commandes PC/SC et ACS envoyées par votre logiciel

Les cartes ISO 14443-4 comme DESFire et les cartes Java acceptent leurs propres APDU ISO 7816-4, que l'ACR122U transmet telles quelles. Les autres cartes sont atteintes par des commandes dont l'octet de classe est FF, et les tags FeliCa et Topaz acceptent aussi leurs commandes natives. FF CA, FF 82, FF 86, FF B0 et FF D6 sont les commandes de cartes à mémoire définies dans la partie 3 de la spécification PC/SC, de sorte qu'un code MIFARE Classic construit sur elles peut passer à un autre lecteur qui les met en œuvre, bien que les emplacements de clés et les cartes prises en charge varient selon le lecteur. Les commandes de blocs de valeur FF D7 et FF B1 sont propres à ACS, tout comme les commandes de lecteur FF 00, qu'ACS appelle pseudo-APDU. Toutes sont documentées dans le manuel Application Programming Interface de l'ACR122U d'ACS (V2.04). Voici celles dont la plupart des intégrations ont besoin, en hexadécimal :

TâcheAPDURemarques
Lire l'UIDFF CA 00 00 00Renvoie l'UID et 90 00 ; 63 00 signifie que l'opération a échoué. FF CA 01 00 00 renvoie l'ATS d'une carte ISO 14443-4 de type A.
Charger une clé MIFARE ClassicFF 82 00 [slot] 06 [6-byte key]Deux emplacements de clés, 00 et 01, en mémoire volatile : les clés sont perdues lorsque le lecteur est déconnecté de l'ordinateur.
AuthentifierFF 86 00 00 05 01 00 [block] [60 or 61] [slot]60 utilise la clé comme clé A, 61 comme clé B. Une authentification couvre les blocs de ce secteur. L'ancienne forme FF 88 est marquée comme obsolète.
LireFF B0 00 [block] 10Jusqu'à 16 octets. Sur MIFARE Ultralight, 16 octets correspondent à quatre pages à partir de la page indiquée.
ÉcrireFF D6 00 [block] 10 [16 bytes]16 octets pour MIFARE Classic ; Lc 04 et 4 octets pour une page MIFARE Ultralight.
Blocs de valeurFF D7 00 [block] 05 [00, 01 or 02] [4-byte value]; FF B1 00 [block] 04Stocke, incrémente ou décrémente une valeur signée de 4 octets, puis la relit. FF D7 00 [source] 02 03 [target] copie un bloc de valeur au sein de son secteur.
Transmettre une commande au contrôleurFF 00 00 00 [length] [payload]Direct Transmit, jusqu'à 255 octets. ACS l'utilise pour les commandes FeliCa et Topaz et pour éteindre l'antenne (charge utile D4 32 01 00) ou l'allumer (D4 32 01 01).
LED et buzzerFF 00 40 [LED state] 04 [T1] [T2] [repeats] [buzzer]T1 et T2 en unités de 100 ms ; le dernier octet lie le buzzer à T1, T2 ou aux deux. FF 00 40 50 04 05 05 03 01 fait clignoter la LED rouge trois fois à 1 Hz avec le buzzer.
Version du micrologicielFF 00 48 00 00Renvoie la version sous forme de texte ASCII, par exemple ACR122U201.
Bip de détection de carteFF 00 52 00 00Désactive le bip qui retentit par défaut à chaque détection de carte ; FF 00 52 FF 00 le réactive.
Paramètres d'interrogationFF 00 50 00 00 to read; FF 00 51 [bits] 00 to setSélectionne les types de cartes interrogés (ISO 14443 A et B, Topaz, FeliCa à 212 et 424 kbit/s), l'intervalle d'interrogation et l'ATS automatique. La valeur par défaut est FF.

Avec une carte sur le lecteur, envoyez-les comme des transmissions ordinaires (SCardTransmit) vers l'ACR122U PICC Interface. Les commandes de lecteur comme la LED, la version du micrologiciel ou les paramètres d'interrogation peuvent aussi être envoyées avant la présentation d'une carte, mais uniquement via le canal d'échappement PC/SC (SCardControl avec SCARD_CTL_CODE(3500) sous Windows), qui reste désactivé tant que vous ne l'activez pas comme indiqué dans le tableau d'installation sur l'hôte.

Cartes qu'il prend en charge, et cartes qu'il ne peut pas lire

Carte ou tagACR122UComment
ISO 14443-4 Type A et B : MIFARE DESFire, cartes JCOP JavaOuiVos propres APDU ISO 7816-4, transmis tels quels. DESFire accepte les commandes natives ou enveloppées ISO ; la première commande après l'activation définit le format pour le reste de la session.
MIFARE Classic 1K, 4K et MiniOuiCommandes PC/SC de cartes à mémoire (charger une clé, authentifier, lire et écrire des blocs) et commandes de blocs de valeur d'ACS
MIFARE Ultralight, et tags NFC Forum de type 2 comme le NTAG213 de nos autocollants NFCOuiACS mentionne les quatre types de tags NFC Forum. Ultralight se lit avec Read Binary et s'écrit avec Update Binary, et ne nécessite aucune authentification ; testez les fonctions NTAG comme la protection par mot de passe sur un échantillon
FeliCa (NFC Forum de type 3), comme nos cartes FeliCaOuiCommandes natives FeliCa, ou enveloppées dans Direct Transmit
Topaz et Jewel (NFC Forum de type 1)OuiCommandes natives, ou enveloppées dans Direct Transmit
Cartes à double interface : une puce avec un plot de contact et une antenneCôté sans contact uniquementL'ACR122U n'a pas de logement à contact ; l'interface à contact nécessite un lecteur à contact
Cartes combi : cartes multipuces, généralement deux puces sans contact ou plus dans un même corps de carteUniquement sa puce ISO 14443 ou FeliCaUne puce 125 kHz, ISO 15693 ou UHF dans la même carte nécessite son propre lecteur
Tags de proximité ISO 15693, comme ICODE SLIXNonNe figure ni parmi les types de cartes mentionnés par ACS, ni parmi les types recherchés par le lecteur
LF 125 kHz et 134,2 kHz : EM4100, EM4305, T5577, HITAG 2, tags animaux FDX-BNonUn lecteur LF, comme le lecteur Bluetooth R901 pour les marques auriculaires FDX-B
UHF EPC Gen2, 860 à 960 MHzNonUn lecteur UHF et une antenne

Bibliothèques et outils compatibles

  • pyscard (Python), l'API WinSCard (C, C++ et .NET sous Windows) et javax.smartcardio (Java) sont des couches PC/SC : ouvrez l'ACR122U PICC Interface, envoyez les APDU ci-dessus comme transmissions, et envoyez les commandes de lecteur via l'appel de contrôle une fois le canal d'échappement activé.
  • libnfc dispose de deux pilotes pour le lecteur : acr122_pcsc, qui passe par pcsc-lite, et acr122_usb, qui ouvre directement le périphérique USB. Dans les deux cas, les modules pn533 du noyau ne doivent pas être chargés. Pour les modes NFCIP ou d'émulation de carte sans carte sur le lecteur, le README de libnfc indique d'autoriser la commande CCID Exchange dans libccid (ifdDriverOptions 0x0001). Le pilote acr122_usb s'approprie lui-même l'interface USB du lecteur, comme le fait le pilote CCID de pcscd, de sorte qu'un seul d'entre eux peut détenir le lecteur : arrêtez pcscd pendant que vous utilisez acr122_usb, ou utilisez acr122_pcsc.
  • nfcpy mentionne l'ACR122U dans son tableau de matériel, avec une prise en charge en lecture et en écriture des tags NFC Forum de type 2, 3 et 4 et comme initiateur de pair à pair, mais sans émulation de tag ni rôle de cible de pair à pair. Sa documentation déconseille d'acheter l'ACR122U pour nfcpy, car le contrôleur CCID placé devant le PN532 empêche une utilisation complète de la puce ; pour un travail avec nfcpy, choisissez un lecteur que nfcpy prend en charge sans ces limites.

Pièges courants

  • Les clés disparaissent après débranchement. Les clés chargées avec FF 82 vivent en mémoire volatile, chargez-les donc au début de chaque session. Authentifiez-vous à nouveau chaque fois que vous passez à un bloc d'un autre secteur.
  • Écrire un trailer de secteur. Le dernier bloc de chaque secteur MIFARE Classic contient la clé A, les bits d'accès et la clé B, donc une écriture dans ce bloc remplace les clés et les bits d'accès. Essayez d'abord les écritures de trailer sur une carte de rechange.
  • Un bip à chaque présentation. Le buzzer retentit à chaque détection de carte par défaut ; FF 00 52 00 00 le désactive.
  • Commandes longues ou volumineuses. La liste des lecteurs du pilote CCID indique que l'ACR122U ne prend en charge ni les APDU étendues ni les demandes d'extension de délai, et signale des défauts dans certaines versions de micrologiciel. Testez votre commande la plus volumineuse et l'opération de carte la plus lente, et notez la version du micrologiciel avec le résultat.
  • MIFARE Classic 4K et NDEF. ACS conseille un délai de 2 secondes lors de la lecture de messages NDEF depuis des cartes MIFARE Classic 4K.

Comment tester un échantillon

  1. Connectez le lecteur à l'ordinateur et à la version du système d'exploitation que vous déploierez, et vérifiez que l'hôte le voit : Gestionnaire de périphériques sous Windows, lsusb et pcsc_scan sous Linux.
  2. Lisez la version du micrologiciel avec FF 00 48 00 00, et consignez-la avec le système d'exploitation et la version du pilote.
  3. Placez un échantillon de carte sur le lecteur et lisez l'ATR. Pour les cartes à mémoire et les tags, ses octets de nom de carte indiquent le type détecté par le lecteur : 00 01 MIFARE Classic 1K, 00 02 Classic 4K, 00 03 Ultralight, 00 26 Mini, F0 04 Topaz, F0 11 ou F0 12 FeliCa. Les cartes ISO 14443-4 portent à la place des octets historiques provenant de l'ATS (type A) ou de l'ATQB (type B).
  4. Lisez l'UID avec FF CA 00 00 00 et comparez-le avec l'ordre des octets et le format numérique que votre système stocke, hexadécimal ou décimal, avant d'enregistrer un lot.
  5. Exécutez chaque opération dont votre application a besoin sur la vraie carte. Pour MIFARE Classic : chargez la clé, authentifiez-vous, puis lisez et écrivez un bloc de test, et non un trailer de secteur. Pour DESFire ou une carte Java : votre propre séquence de commandes, y compris sa commande la plus longue et sa réponse.
  6. Débranchez le lecteur, rebranchez-le et répétez, pour savoir si votre logiciel recharge seul les clés et les paramètres.

Demandez des échantillons de cartes de la puce exacte avec le lecteur, pour que le test utilise le stock que vous commanderez ; les échantillons standard sont gratuits.

Spécifications indiquées par ACS

Dimensions et poids98,0 mm (L) x 65,0 mm (l) x 12,8 mm (H) ; 70 g
USBUSB CCID, Full Speed (12 Mbps) ; connecteur standard de type A sur un câble fixe de 1,0 m ; alimenté par le port USB, 5 V, 200 mA maximum
Interface sans contact13,56 MHz ; NFC ISO/IEC 18092, ISO 14443 de type A et B, MIFARE, FeliCa ; 106, 212 et 424 kbit/s ; une carte à la fois
Distance de fonctionnementJusqu'à 50 mm, selon le type de tag ; antenne 50 mm x 40 mm
Périphériques intégrésUne LED bicolore rouge/verte ; buzzer monotone
Conditions de fonctionnement0 à 60 °C ; jusqu'à 90 % d'humidité relative, sans condensation
Prise en charge des pilotesWindows XP à Windows 10 et Windows Server 2003 à 2016 ; Windows CE et Embedded Compact ; Linux ; Mac OS ; Solaris ; Android 3.1 et versions ultérieures (avec la bibliothèque Android d'ACS)
ConformitéEN 60950/IEC 60950, ISO 14443, ISO 18092, PC/SC, CCID, CE, FCC, RoHS 2, REACH, VCCI, KC, Microsoft WHQL

ACR122U, ACR1252U ou ACR1552U

Les trois sont des lecteurs USB d'ACS que le logiciel PC/SC ouvre comme un lecteur de carte à puce CCID, et les trois acceptent les commandes de cartes à mémoire du tableau des commandes ci-dessus. L'ACR1552U mentionne plus de types de cartes que les deux autres, et les trois diffèrent par leurs commandes de lecteur et quelques limites. Chaque chiffre de ce tableau provient des propres documents d'ACS pour ce modèle, liés sous le tableau.

FonctionnalitéACR122UACR1252UACR1552U
Connexion USBCCID, Full Speed ; fiche de type A sur un câble fixe de 1,0 mCCID, Full Speed ; fiche de type A (ACR1252U-M1) ou de type C (ACR1252U-MF) sur un câble fixe de 1 mCCID, Full Speed ; références ACR1552U-M1 (type A) et ACR1552U-MF (type C), câble fixe de 1 m
Cartes mentionnées par ACSISO 14443 A et B, MIFARE, FeliCa, les quatre types de tags NFC Forum (ISO/IEC 18092)ISO 14443 A et B, MIFARE, FeliCa, les quatre types de tags NFC Forum (ISO/IEC 18092)ISO 14443 A et B, MIFARE, FeliCa, NFC ISO/IEC 18092 et Topaz, plus ISO 15693, SRI/SRIX, Picopass, CTS et Innovatron
Tags ISO 15693, comme ICODE SLIXNon mentionnéNon mentionnéOui
APDU étenduesNon mentionnéJusqu'à 64 KoJusqu'à 64 Ko
Vitesse ; distance de fonctionnement, selon le tagJusqu'à 424 kbit/s ; jusqu'à 50 mmJusqu'à 424 kbit/s ; jusqu'à 50 mmJusqu'à 848 kbit/s pour ISO 14443 ; jusqu'à 70 mm
Logement SAMNon mentionnéUn logement ISO 7816 de classe A de taille SIM, pour une SAM, et non une carte plein formatUn logement ISO 7816 de classe A de taille SIM, pour une SAM, et non une carte plein format
LED ; température de fonctionnementRouge et verte ; 0 à 60 °CRouge et verte ; 0 à 60 °CBleue et verte ; −20 à 70 °C

Sources : la spécification technique de l'ACR1252U et le manuel API d'ACS, la spécification technique de l'ACR1552U et le manuel de référence, ainsi que le manuel API de l'ACR122U (téléchargements PDF).

Vérifications pour un code PC/SC quittant l'ACR122U :

  • Le nom du lecteur. Un logiciel qui sélectionne l'ACR122U par son nom de lecteur doit changer. Chaque lecteur plus récent présente un lecteur sans contact (PICC) et un lecteur SAM, et les exemples d'ACS ouvrent « ACS ACR1252 1S CL Reader PICC 0 » ou « ACS ACR1552 1S CL Reader PICC 0 ». Sélectionnez le lecteur PICC, et non le logement SAM.
  • Les commandes de cartes sont conservées. Get Data (FF CA), Load Keys (FF 82, deux emplacements de clés volatiles), Authenticate (FF 86), Read et Update Binary (FF B0, FF D6), les commandes de blocs de valeur d'ACS (FF D7, FF B1) et la session transparente PC/SC 2.0 partie 3 (FF C2) sont documentées pour les deux lecteurs plus récents.
  • Les commandes de lecteur changent. L'ACR1252U conserve quatre des pseudo-APDU FF 00 de l'ACR122U comme « commandes compatibles ACR122U » : FF 00 40 (LED et buzzer), FF 00 48 (version du micrologiciel), FF 00 50 et FF 00 51 (paramètres d'interrogation). Sinon, les deux lecteurs plus récents acceptent des commandes d'échappement commençant par E0 00, envoyées avec SCardControl via le canal d'échappement (point suivant) ; E0 00 00 18 00, par exemple, renvoie la version du micrologiciel. Le bip à la détection de carte, que l'ACR122U commande avec FF 00 52, est le bit 3 d'un octet de comportement qui définit aussi les LED, sur les deux : lisez l'octet avec E0 00 00 21 00 et réécrivez-le avec E0 00 00 21 01 et le bit 3 effacé, pour que les réglages des LED restent tels qu'ils étaient. L'ACR1252U conserve le nouveau réglage après extinction.
  • Activez le canal d'échappement pour le nouveau lecteur. Sur l'ACR122U, les commandes de lecteur peuvent passer comme des transmissions ordinaires pendant qu'une carte est sur le lecteur, de sorte qu'un logiciel existant n'a peut-être jamais utilisé le canal d'échappement. Sur les lecteurs plus récents, les commandes E0 00 passent uniquement par lui. Avec le pilote CCID de Microsoft sous Windows, définissez EscapeCommandEnable sous l'ID USB propre au nouveau lecteur, et non l'ID VID_072F&PID_2200 de l'ACR122U, ou installez le pilote d'ACS, que le manuel de l'ACR1552U d'ACS indique d'installer. Sous Linux, le pilote acsccid d'ACS accepte SCARD_CTL_CODE(3500), et le pilote CCID de pcsc-lite (libccid) nécessite ifdDriverOptions 0x0001 et prend l'échappement comme SCARD_CTL_CODE(1) ; sous macOS, installez le pilote acsccid d'ACS.
  • Aucune commande PN532. Sur l'ACR122U, Direct Transmit (FF 00 00 00) transmet des commandes à son contrôleur PN532, comme le commutateur d'antenne. Aucun des lecteurs plus récents ne documente de commandes PN532. Ils utilisent l'en-tête FF 00 00 00 pour les commandes FeliCa, et l'ACR1552U aussi pour les commandes ISO 14443-3. Le champ RF est commuté au sein d'une session transparente PC/SC 2.0 partie 3 : FF C2 00 00 02 81 00 démarre la session, FF C2 00 00 02 83 00 éteint le champ et FF C2 00 00 02 84 00 l'allume, et FF C2 00 00 02 82 00 termine la session. L'interrogation automatique reste désactivée jusqu'à la fin de la session, et le manuel de l'ACR1552U d'ACS avertit qu'une session mal utilisée peut empêcher le lecteur de détecter les cartes. Pour économiser l'énergie, utilisez le réglage d'interrogation automatique de l'ACR1252U (E0 00 00 23), qui peut éteindre l'antenne lorsqu'aucune carte n'est trouvée, ou la commande de contrôle RF de l'ACR1552U (E0 00 00 25).
  • Noms de cartes dans l'ATR. MIFARE Classic 1K et 4K, Ultralight et Mini conservent leurs octets de nom de carte (00 01, 00 02, 00 03, 00 26). FeliCa et Topaz changent : les lecteurs plus récents signalent 00 3B et 00 30, là où l'ACR122U signale F0 11 ou F0 12 et F0 04. L'ACR1552U n'interroge Topaz qu'après son activation avec sa commande Set PICC Polling Type.
  • Micrologiciel. Consignez la version du micrologiciel de votre échantillon. ACS indique une version minimale de micrologiciel pour certaines commandes de l'ACR1552U, y compris les commandes de transmission ISO 14443-3 et ISO 15693.

Ce que Proud Tek fournit

Nous fournissons l'ACR122U, avec la quantité confirmée par commande, les deux modèles ACS actuels comparés ci-dessus, ainsi que les cartes, tags et autocollants avec lesquels vous les testez ; nos lecteurs sont listés sous Lecteurs RFID. ACS fabrique les trois lecteurs et est la source de leurs pilotes, micrologiciels et manuels ; notre rôle est la fourniture, et nous n'écrivons ni ne prenons en charge de logiciel applicatif. Indiquez-nous la puce de la carte, le système d'exploitation hôte et les commandes envoyées par votre logiciel. Les lots que vous préféreriez ne pas encoder vous-même peuvent passer par notre service d'encodage RFID : nous relisons chaque carte encodée avant expédition, chaque commande encodée est accompagnée d'un rapport de données, et pour les cartes numérotées nous ajoutons l'UID de chaque carte à côté de son numéro imprimé dans un fichier Excel, CSV ou XML, ce qui laisse le lecteur libre pour des contrôles ponctuels.

Questions fréquentes

L'ACR122U a-t-il besoin d'un pilote ?

Pas sous Windows : ACS indique que les pilotes USB CCID et PC/SC intégrés de Microsoft sont utilisés, et le lecteur apparaît comme ACR122U PICC Interface. Sous Linux, utilisez pcscd avec libccid ou le pilote acsccid d'ACS ; sous macOS, acsccid prend en charge OS X 10.7 ou version ultérieure. Pour envoyer des commandes de lecteur sans carte présente, activez d'abord le canal d'échappement : une valeur de registre sous Windows, ifdDriverOptions 0x0001 pour libccid.

Pourquoi Linux signale-t-il « Can't claim interface » pour l'ACR122U ?

Le pilote NFC du noyau, pn533_usb, mentionne l'ID USB de l'ACR122U (072f:2200) et associe le lecteur avant que pcscd ou libnfc puisse le faire. Déchargez les modules pn533_usb et pn533, mettez nfc, pn533 et pn533_usb sur liste noire dans /etc/modprobe.d, puis rebranchez le lecteur et redémarrez pcscd.

Quelle APDU lit l'UID d'une carte sur l'ACR122U ?

FF CA 00 00 00. Le lecteur renvoie l'UID suivi de 90 00, ou 63 00 si l'opération a échoué. FF CA 01 00 00 renvoie l'ATS d'une carte ISO 14443-4 de type A. Les deux commandes sont définies dans le manuel Application Programming Interface de l'ACR122U d'ACS.

Comment lire et écrire MIFARE Classic avec l'ACR122U ?

Chargez la clé avec FF 82 00 00 06 et la clé de 6 octets, authentifiez le bloc avec FF 86 00 00 05 01 00, le numéro de bloc, 60 pour la clé A ou 61 pour la clé B, et l'emplacement de clé. Lisez ensuite avec FF B0 00, le bloc et 10, ou écrivez 16 octets avec FF D6 00, le bloc, 10 et les données. Les deux emplacements de clés sont volatiles, rechargez donc les clés après la reconnexion du lecteur. La lecture d'un UID n'implique jamais l'accès aux secteurs protégés.

Quelles cartes l'ACR122U ne peut-il pas lire ?

Tout ce qui sort du 13,56 MHz ISO 14443, ISO 18092 et FeliCa : les tags LF 125 kHz et 134,2 kHz, les étiquettes UHF EPC Gen2 et les tags de proximité ISO 15693 comme ICODE SLIX. Il n'a pas non plus de logement à contact, il n'atteint donc une carte à double interface que par son côté sans contact, et uniquement la puce ISO 14443 ou FeliCa d'une carte combi multipuce.

Comment vérifier si l'ACR122U lit mes cartes existantes ?

Placez une carte sur le lecteur et lisez l'ATR. Ses octets de nom de carte indiquent ce que le lecteur a détecté : 00 01 MIFARE Classic 1K, 00 02 Classic 4K, 00 03 Ultralight, 00 26 Mini, F0 04 Topaz, F0 11 ou F0 12 FeliCa ; une carte ISO 14443-4 renvoie à la place des octets historiques. Si rien n'est détecté, vérifiez si la carte est 125 kHz, ISO 15693 ou UHF, que l'ACR122U ne peut pas lire. FF CA 00 00 00 lit ensuite l'UID sans clés, mais l'UID n'est pas la donnée protégée : les secteurs et les applications nécessitent les clés du système. Pour une carte provenant d'un système de contrôle d'accès ou d'adhésion existant, demandez au fournisseur du système le format de la carte et les clés, et testez un échantillon autorisé.

L'ACR122U fonctionne-t-il avec pyscard, libnfc et nfcpy ?

pyscard et les autres liaisons PC/SC fonctionnent via l'interface standard du lecteur. libnfc le prend en charge via pcsc-lite ou directement par USB, une fois les modules pn533 du noyau déchargés. nfcpy mentionne une prise en charge en lecture et en écriture des tags NFC Forum de type 2, 3 et 4, mais sa documentation déconseille d'acheter l'ACR122U pour nfcpy.

L'ACR122U est-il toujours disponible ?

Oui. Proud Tek le fournit ; confirmez la quantité lors de votre commande. ACS signale le modèle comme arrêté, donc pour une nouvelle conception qui doit rester en production pendant des années, nous fournissons aussi les modèles ACS actuels ACR1252U (USB NFC Reader III) et ACR1552U (USB NFC Reader IV). Les deux acceptent les mêmes commandes PC/SC de cartes à mémoire, mais leurs commandes de lecteur et les noms de cartes ATR pour FeliCa et Topaz diffèrent, et des trois, seul l'ACR1552U mentionne les tags ISO 15693. Si vous préférez construire sur un SDK de fabricant, demandez quel modèle µFR actuel nous pouvons fournir. Testez tout lecteur avec vos propres cartes et votre logiciel.

Prêt à définir votre commande ?

Envoyez le produit, la quantité et l'application afin que nous puissions confirmer les options et les prix pour votre projet.

Vous préférez nous envoyer un message ? WhatsApp ou e-mail au sujet de ce produit.

Obtenir un devis WhatsApp
WhatsApp