J’ai construits un lecteur RFID autour du module RC522. J’utilise la librairie MFRC522.
Tout fonctionne parfaitement avec les Tags fournis avec le module mais ca accroche avec d’autres deja en ma possession ; le souci c’est que j’ai une centaine de ces derniers et que j’aimerai bien pouvoir les utiliser :-/ ; surtout que ces tags semblent partager la meme puce ( Fudan FM11RF08 ).
Je vous ai attache une photo reprenant les caracteristiques des deux differents tags. Si une bonne ame pouvait eclaircir ma lanterne …
J’ai construits un lecteur RFID autour du module RC522. J’utilise la librairie MFRC522.
Tout fonctionne parfaitement avec les Tags fournis avec le module mais ca accroche avec d’autres deja en ma possession ; le souci c’est que j’ai une centaine de ces derniers et que j’aimerai bien pouvoir les utiliser :-/ ; surtout que ces tags semblent partager la meme puce ( Fudan FM11RF08 ).
bonjour
qu’est ce qu tu entend exactement par “ça accroche” ?
avec le lecteur et la lib tu recupere l’UID de tes tags ?
ça donne quoi en utilisant ce programme
/*
* Dump serial number of a MIFARE RFID card using a RFID-RC522 reader
* Uses MFRC522 - Library to use ARDUINO RFID MODULE KIT 13.56 MHZ WITH TAGS SPI W AND R BY COOQROBOT.
* https://github.com/miguelbalboa/rfid
-----------------------------------------------------------------------------
* Pin layout should be as follows:
* Signal Pin Pin Pin
* Arduino Uno Arduino Mega MFRC522 board
* ------------------------------------------------------------
* Reset 9 5 RST
* SPI SS 10 53 SDA
* SPI MOSI 11 52 MOSI
* SPI MISO 12 51 MISO
* SPI SCK 13 50 SCK
*
* Hardware required:
* Arduino
* PCD (Proximity Coupling Device): NXP MFRC522 Contactless Reader IC
* PICC (Proximity Integrated Circuit Card): A card or tag using the ISO 14443A interface, eg Mifare or NTAG203.
* The reader can be found on eBay for around 5 dollars. Search for "mf-rc522" on ebay.com.
*/
#include <SPI.h>
#include <MFRC522.h>
#define SS_PIN 10 //Arduino Uno
#define RST_PIN 9
byte tagok = 0;
unsigned long sernum[11] = {0, 679864085, 3478850816, 1159921925, 3278950471, 0, 0, 0, 0,0, 1149839889}; //poste 0 N° carte lue, poste 1 à 9 pour UID carte a tester, poste 10 carte master
MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance.
MFRC522::MIFARE_Key key;
int led = 8;
void setup() {
pinMode(led, OUTPUT);
Serial.begin(9600); // Initialize serial communications with the PC
SPI.begin(); // Init SPI bus
mfrc522.PCD_Init(); // Init MFRC522 card
Serial.println("SERIAL OK ");
}
void loop() {
digitalWrite(led, LOW);
// Look for new cards
if ( ! mfrc522.PICC_IsNewCardPresent()) {
return;
}
// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial()) return;
Serial.print("Card UID:"); //Dump UID
for (byte i = 0; i < 4; i++) {
Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
Serial.print(mfrc522.uid.uidByte[i], HEX);
}
sernum[0] = *((unsigned long *)mfrc522.uid.uidByte); //recup num serie lu long unsigned
Serial.print(" ");
Serial.print(sernum[0]);
Serial.print(" ");
Serial.print(sernum[0], HEX);
Serial.print(" ");
tagok = 0;
for (byte i = 1; i < 10; i++) {
if (sernum[0] == sernum[i]) tagok = 1; // carte reconnue dans la liste
}
if (sernum[0] == sernum[10]) tagok = 255; // carte master reconnue
if (tagok == 0) { // faire si carte inconnue
Serial.print("TAG INCONNU");
}
if (tagok >0) //faire si carte reconnue
{
digitalWrite(led, HIGH);
Serial.print("TAG OK ");
if (sernum[0] == sernum[1]) Serial.print("Badge STOCK " );
if (sernum[0] == sernum[2]) Serial.print("Badge LABO " );
if (sernum[0] == sernum[3]) Serial.print("Bramble card OK " );
if (sernum[0] == sernum[4]) Serial.print("Badge ANECHO " );
if (sernum[0] == sernum[10]) Serial.print("Badge MASTER " );
delay(50);
digitalWrite(led, LOW);
}
if (tagok == 255) //faire si carte master reconnue
{
Serial.print("CARTE MASTER RECONNUE");
}
Serial.println();
mfrc522.PICC_HaltA(); // Halt PICC
}
as tu vu le fichier que j'ai attache au post ? j'ai scanne les deux tags via une apps pour smartphone.
Sur la gauche, les tags qui ne fonctionnent pas et sur la droite un tag livre avec le module.
Ce qui me trouble c'est que les deux tags utilisent la meme puce / meme norme. Concernant le protocole je ne comprends pas tres bien les differences ; c'est a ce niveau la qu'il me faudrait quelques explications.
mytrax:
as tu vu le fichier que j'ai attache au post ? j'ai scanne les deux tags via une apps pour smartphone.
Sur la gauche, les tags qui ne fonctionnent pas et sur la droite un tag livre avec le module.
Ce qui me trouble c'est que les deux tags utilisent la meme puce / meme norme. Concernant le protocole je ne comprends pas tres bien les differences ; c'est a ce niveau la qu'il me faudrait quelques explications.
tu remarquera que l'ATS ne renvoie qu'une reponse B2 suivie de 0
Il faudrait lire un de tes tag avec un lecteur multiprotocole pour faire des comparaisons, mais en l'etat il n'est à priori pas compatible avec le module basique RC522