RFID Sticker (mit PN5180)

@SZenglein Danke für den Fehlerbericht, ich habe das in der PN5180-Bibliothek entsprechend angepasst.

Deine Tags haben eine 7Byte lange UID, die wird in zwei Teilen a 4Bytes gelesen:
Der erste Block enthält in Byte0=0x88, das ist das CT (cascading Info) und teilt mit das noch ein 2.Block folgen wird. Das Byte darf auch bei Lesefehlern nicht in die UID übernommen werden. Daher kamen die teils verschobenen UIDs…

Einen Fall verschobener/falscher UID’s konnte ich noch nachvollziehen und beheben:

Evt. kann bei Gelegenheit @biologist die PN5180-Bibliothek neu pinnen.

Die UID eines RFID-Tags kann 4, 7 oder 10 Byte lang sein. ESPuino wertet aber nur die ersten 4 Bytes aus. Es könnte evt. mal bei einem Satz Karten/Sticker sein das sich nur die letzten Stellen unterscheiden und damit bei allen die gleiche UID rauskommt. Kann man die Länge hier gefahrlos vergrößern?

constexpr uint8_t cardIdSize = 4u;

Puh, ich denke das zieht mehr Arbeit nach sich. Ich denke da jetzt an das Lesen und Schreiben ins nvs zB. Da müssen die Puffer vergrößert werden. Auch die Länge der ID in der GUI ist auf 12 begrenzt.

@biologist Mein Vorschlag: Lass es einfach so solange sich niemand beschwert. Die UID wird halt nach 4 Bytes abgeschnitten.
Habe gerade so eine Rolle RFID-Sticker nacheinander durchgezogen. Die haben tatsächlich eine fortlaufende UID, die Zählung findet aber in den ersten 4 Bytes statt. Damit haben die im ESPuino alle eine eindeutige UID…

Re-Pinning ist aber nötig wg. seltener Falscherkenung bei 7Byte UID Karten.

Hab’s neu gepinnt, danke.

1 „Gefällt mir“

Hallo @tueddy

bei mir erkennt der PN5180 nur Karten und keine Chips, muss hier zusätzlich noch etwas eingestellt werden? Habe diverse Chips durch, keine Reaktion.

Vielleicht hast du hier einen Tipp?

Was sind denn das für Chips? Hast Du eine Bezeichnung oder kannst ein Foto hier zeigen?

der Chip wo beim PN5180 dabei war und die welche bei den billigen RC522 dabei waren da steht leider nichts drauf.
Ich habe gerade noch welche von AZ Delivery gefunden die funktionieren jetzt :slight_smile:

Meinst Du die hier?

IMG_8717

Das sind ganz normale ISO-14443 aka Mifaire-Classic Tags und sollten ohne Probleme erkannt werden. Habe ich gerade nochmal getestet, kann mich mit den Dingern totschmeissen :wink:

Bei Problemen mit der Erkennung könntest Du am PN5180 den 5V Pin auch wirklich an 5V legen um die Antennenleistung zu erhöhen…

Ich habe das Gefühl die Fehler werden immer weniger. Ich habe inzwischen nochmal mit deiner neuesten Version getestet, und leider tritt ein Fehler immer noch auf:

RFID-Karte erkannt: (ISO-14443) ID: 04-f0-9e-0e
RFID-Karte empfangen: 004240158014
RFID-Karte ist im NVS nicht hinterlegt.
RFID-Karte erkannt: (ISO-14443) ID: 04-f0-9e-e2

Ich habe das ganze aber schon aufgegeben. Normale 14443 Karten funktionieren inzwischen zuverlässig und dabei kann es verbleiben. Sollte doch noch irgendwann die Lösung zu diesem komischen Problem mit den Stickern kommen freue ich mich darüber, aber einen Workaround um diese einfach-Fehlerkennung will ich jetzt auch nicht schreiben.

@biologist ist das bei deiner Platine so umgesetzt das 5V an den PN5180 gehen? Wenn ich messe sind an der 5V Markierung nur 3,2V identisch wie an 3V :thinking:

Ich habe immer noch die schlechte Mifaire-Classic Tags Erkennung, erst bei sehr nahem Auflegen klappt es, die weißen Karten funktionieren hingegen super.

Da ich Figuren mit Magnet befestigen möchte und auch hier der Neopixel sitzt, habe ich leider zu wenig Platz um mit dem PN5180 nah am Gehäuse zu bleiben, über jeden Tipp wär ich dankbar. :slightly_smiling_face:

Ich antworte mal für Torsten: In dem Beitrag den du verlinkt hast steht unter Pinout dass die 5V des RFID-Readers auch auf 3.3V gelegt werden.

Im Batteriebetrieb hat man ohnehin keine 5V. Hier wird ja eher auf direkten Anschluss des Akkus gesetzt als wie bei anderen Projekten auf Power-Bank mit entsprechendem step-up. Ich glaube es setzt auch keiner einen extra step-up ein um die Batteriespannung auf 5V zu bekommen, da ist es einfacher (und energieeffizienter) alles auf 3.3V zu belassen.

Eigentlich funktioniert fast die gesamte Peripherie besser auf 5V (Neopixel, Verstärker, RFID). Man könnte also überlegen eine extra Spannungsversorgung einzubauen um das letzte bisschen Leistung rauszukitzeln. Mir war und ist es das allerdings nicht Wert und ich denke andere sehen das ähnlich.
Machen kann man es natürlich trotzdem recht einfach mit einem entsprechenden step-up modul.

1 „Gefällt mir“

Sorry, habe gestern Abend vergessen, noch auf den Post zu antworten.
Ich schließe mich den Ausführungen von @SZenglein vollumfänglich an.

Das mit der Energieeinsparung ist mir auch wichtig, allerdings funktionieren die Chips aktuell nicht :frowning:

Was setzt Ihr denn für Chips ein die ohne Probleme funktionieren?
Oder habt Ihr evtl. mal Bilder wie bei euch der PN5180 verbaut ist?

Ich hab den PN5180 mit 1-2mm Abstand hinter 6mm Holz geschraubt und keine Reichweitenprobleme (bis auf meine oben beschriebenen, aber die Reichweite ist in Ordnung). Wie man sieht aber auch getrennt und nicht unter anderer Elektronik wie z.B. LEDs verbaut.

Ich setze für meinen Teil ausschließlich Karten ein. Die funktionieren ordentlich.

Hab den Reader jetzt direkt hinter 2mm Kunststoff und noch ein paar Ausschitte das klappt soweit schonmal besser mit den Chips :slight_smile:

Die LED werde ich auch woanders verbauen, vielen Dank.