Hallo Jérôme,
damit funktioniert jetzt die Kommunikation zwischen Wiegand Leser und CCU!
Aber mir ist noch nicht plausibel, was in der CCU als Chip ID generiert wird.
Bei den Fingerprints, und PINs werden ja die Speicherplatznummern übergeben.
Das funktioniert bei 4-stelligen Speicherplätzen auch gut.
Ich habe mir in der RFID.h noch eine Serielle Ausgabe der Wiegand-Lib eingebaut.
Code: Alles auswählen
bool getRfidAddress(uint8_t *addr) {
if (wg.available()) {
memset(addr,0x00, ID_ADDR_SIZE);
memcpy(addr,wg.getCode(), ID_ADDR_SIZE);
Serial.print("Wiegand HEX = ");
Serial.print(wg.getCode(),HEX);
Serial.print(", DECIMAL = ");
Serial.print(wg.getCode());
Serial.print(", Type W");
Serial.println(wg.getWiegandType());
return true;
}
return false;
}
Beispiel1 - FingerPrint Speicherplatz 1499:
Code: Alles auswählen
Chip ID (CCU)
E2FBBF786DD56AF1
Wiegand HEX = 5DB, DECIMAL = 1499, Type W26
released
<- 0B 17 86 40 F33C00 000000 01 00 - 17436
Beispiel2 - FingerPrint Speicherplatz 1498:
Code: Alles auswählen
Chip ID (CCU)
E8E2FBBF786DD56A
Wiegand HEX = 5DA, DECIMAL = 1498, Type W26
released
<- 0B 18 86 40 F33C00 000000 02 00 - 20404
Beispiel3 - PIN-Code Speicherplatz 1000:
Code: Alles auswählen
Chip ID (CCU)
008D030001260000
Wiegand HEX = 3E8, DECIMAL = 1000, Type W26
released
<- 0B 1B 86 40 F33C00 000000 03 00 - 27125
Mit den RFID-Transpondern funktioniert es nicht.
Hier wird beim gleichen Transponder bei jedem Anlernvorgang, eine neue Chip ID angelernt.
Eventuell ein Längenproblem des Tags?
Beispiel4 - RFID-Karte:
Code: Alles auswählen
Wiegand HEX = DB4CE1, DECIMAL = 14372065, Type W26
Chip ID
9F7392A7C6912C3B
Chip ID
08F801964128461B
Chip ID
08F8FE0CEC69EC64
Gruß
Marcel