RFID Sticker (mit PN5180)

Hi,

mich würde mal interessieren ob noch jemand solche ntag213 Sticker in Verwendung hat. Die machen mir nämlich leider ein paar Probleme.

Ich habe noch ISO 15693 und ISO 14443 Karten, die auch einwandfrei funktionieren. LPCD funktioniert und die Karten können liegen bleiben ohne neu erkannt zu werden.
Die Sticker werden aber häufig falsch erkannt (falsche ID beziehungsweise pro Sticker eine zweite ID die selten erkannt wird) und beim aufliegen werden sie jede Sekunde neu erkannt.

@tueddy hast du eine Ahnung was da los ist?

Ich habe auch solche Sticker hier und die haben bisher funktioniert.
Allerdings je kleiner die Antenne des Tags desto schlechter die Reichweite und diese Tags habe eine sehr kleine Antenne im Vergleich zu den normalen Karten. Sind daher ein Kandidat für Aussetzer…

Ich benutze das Play/Pause Feature, da ist mir jetzt aufgefallen das die Kartenerkennung scheinbar seit einigen Versionen deutlich schlechter funktioniert. Es könnte mit dem Auslagern der RFID-Erkennungsschleife in einen eigenen Task zusammenhängen.

Dann habe ich das ReadUID Demo mit der Arduino IDE kompiliert und bekomme auch ab und zu eine nicht erkannte UID… Daraufhin die ISO-14443 Erkennung intensiv durchgecheckt und minimale Änderungen durchgeführt. So ganz genau kann ich nicht sagen wo das Problem liegt. Das hat mal besser geklappt, ohne das sich in PN5180 Bibliothek etwas geändert hätte…
Kannst Du das einmal mit meinem aktuellen Master durchprobieren? In der Platform.ini diese Zeile ändern:

https://github.com/tueddy/PN5180-Library.git#2d9ae3d

zu

https://github.com/tueddy/PN5180-Library.git

ändern. Ist dann die ISO-14443 Erkennung zuverlässiger?

Das hatte ich schon probiert, hat leider nichts geholfen. Hatte gesehen dass du in dieser Richtung irgendwas gemacht hast, deshalb hab ich das jetzt auch hier gepostet.

Die Reichweite ist eigentlich ziemlich gut mit den Stickern. Selbst bei direkt auflegen tritt das Problem auf. Eher im Gegenteil, ich habe das Gefühl durch Holz hindurch kommt es seltener zu Fehlern.

Ich checke nochmal wo genau das Problem liegt…

1 „Gefällt mir“

Wenn du irgendwas von mir brauchst, sag gerne Bescheid.

So sieht das bei mir im Log aus

RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
LEDs wurden auf Nachtmodus gedimmt.
Modifikator: Sleep-Timer per RFID aktiviert (60 Minuten).
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
Modifikator: Sleep-Timer wieder deaktiviert.
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
LEDs wurden auf Nachtmodus gedimmt.
Modifikator: Sleep-Timer per RFID aktiviert (60 Minuten).
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
Modifikator: Sleep-Timer wieder deaktiviert.
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
LEDs wurden auf Nachtmodus gedimmt.
Modifikator: Sleep-Timer per RFID aktiviert (60 Minuten).
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
Modifikator: Sleep-Timer wieder deaktiviert.
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
LEDs wurden auf Nachtmodus gedimmt.
Modifikator: Sleep-Timer per RFID aktiviert (60 Minuten).
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
Modifikator: Sleep-Timer wieder deaktiviert.
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
LEDs wurden auf Nachtmodus gedimmt.
Modifikator: Sleep-Timer per RFID aktiviert (60 Minuten).
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
Modifikator: Sleep-Timer wieder deaktiviert.
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
LEDs wurden auf Nachtmodus gedimmt.
Modifikator: Sleep-Timer per RFID aktiviert (60 Minuten).
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
Modifikator: Sleep-Timer wieder deaktiviert.
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
LEDs wurden auf Nachtmodus gedimmt.
Modifikator: Sleep-Timer per RFID aktiviert (60 Minuten).
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
Modifikator: Sleep-Timer wieder deaktiviert.
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-c5
RFID-Karte empfangen: 004244158197
RFID-Karte ist im NVS nicht hinterlegt.
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
LEDs wurden auf Nachtmodus gedimmt.
Modifikator: Sleep-Timer per RFID aktiviert (60 Minuten).
RFID-Karte erkannt: (ISO-14443) ID: 88-04-f4-9e
RFID-Karte empfangen: 136004244158
RFID-Karte ist im NVS nicht hinterlegt.
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
Modifikator: Sleep-Timer wieder deaktiviert.
RFID-Karte erkannt: (ISO-14443) ID: 04-f4-9e-e2
RFID-Karte empfangen: 004244158226
LEDs wurden auf Nachtmodus gedimmt.
Modifikator: Sleep-Timer per RFID aktiviert (60 Minuten).

Vielleicht kann auch @biologist ran, habe gehört er hat ein neues Oszilloskop!
Damit kann man feine Sachen messen … :wink:

@SZenglein wird es zuverlässiger wenn Du den Wert in RfidPn5180.cpp höher setzt, zb. 1000ms ?

Nein, nicht spürbar besser.

Hehe, was du alles hörst :grin:.
Ja grundsätzlich machen kann ich das, bin nur gerade mit dem PCBs beschäftigt.

Die schlechte Kartenerkennung ist die eine Sache (und ich habe gerade keine Idee woran es liegen könntet) aber in Deinem Log wird auch einmal eine falsche UID angezeigt. Hast Du zwei Karten im Feld gehabt?
Deine Karte: 04-f4-9e-e2
Einmal: 88-04-f4-9e
Der Wert 88 kommt aus der Anti-Collisions Erkennung (mehrere Karten im Feld) und dürfte hier so nicht erscheinen. Das ist leider recht kompliziert
Früher, weiß nicht mehr wann, wurde evt. einmal die Karte nicht erkannt, jetzt ist das schlimmer geworden mit einigen Karten. Andere klappen einwandfrei (Bessere Feldabstimmung?). Bei mir tritt das nur mit den klassichenn Mifaire 14443 Karten auf, ISO-18693 Karten werden zuverlässigg erkannt. Kann das jemand bestätigen? Gibt es solche Probleme auch mit dem RC-522 Leser (vermutlich nicht)?
Jeder Input hilfreich…

Also ganz generell habe ich das schon hier und da mal gesehen, dass etwas erkannt wurde, was ich gar nicht aufgelegt hatte. Gab Zeiten, in denen das öfter mal passierte, aktuell geht es aber eigentlich.

Weiß nicht, ob dir das jetzt hilft …

Generell funktioniert das Alles, aber die ISO-14443 Kartenerkennung ist derzeit recht unzuverlässig (Bei einigen Karten). Das merkt man eigentlich nur mit aktivierten Play/Pause Feature. Dann pausiert das Hörspiel alle 5-10 Sek. für einen Moment. Und das nervt!

Bei @SZenglein Log ist das aber ein auch anderes Problem:
Die ISO-14443 UID kann aus 4 Bytes (single UID), 7 (double size UID) oder 10 (triple size UID) bestehen. Dazu wird die Anti-Collision Routine durchlaufen um die UID Bytes nach und nach zusammenzugebasteln… Es gibt aber nun eine falsche Beschreibung im Standard, dadurch könnnte teils ein 0x88 vorangestellt werden. Die UID wird geändert obwohl die selbe Karte aufliegt.
Wenn also so ein Wechsel erkannt wird trotz gleicher Karte könnt Ihr das Log hier auch einfügen? Das wäre ganz hilfreich.
Übrigens die UID kann man auch mit dem Smartphone lesen, z.B. mit der NXP-App für Android oder iOS. Soltte dann im ESPuino die gleiche sein…

Habe das die Tage mal ausprobiert mit meinem Handy (Google Pixel 6), hat auf jeden Fall funktioniert für beide Kartentypen. Irgendwann hat der ESPuino jedoch komplett am Rad gedreht und ich habe mich gefragt warum. Bis mir auffiel, dass mein Handy in der Nähe lag. Weiß nicht genau, was da passiert, wenn NFC im Handy aktiviert ist, auf jeden Fall hat es Aktionen ohne Ende via RFID beim ESPuino ausgelöst :joy:. Also gemacht hat es an für sich nix, aber der Neopixel hat wie wild rot geblinkt.

Evt. hat das Handy als Kartenleser einfach das Feld des ESPuino RFID-Lesers gestört. Aber @biologist prüfe mal Deine Kreditkartenabrechnung, evt. hat derr ESPuino gerade Geld bei Dir abgebucht :wink:

Es gibt da ja noch den aktiven Kartenmodus, z.B. wenn man mit dem Handy kontaktlos bezahlt. Dann emuliert derr RFID.Leser des Handys eine Karte .Ich hatte mir das mal kurz angeschaut. Die erzeugte UID wechselt aber wg. Anti-Tracking und ist damit nicht brauchbar als Kartenersatz. Der PN5180 kann das auch, man könnte eine Karte emulieren und sie dann mit dem Handy auslesen. Mir fällt aber kein Feature ein wofür man das brauchen könnte…

Na ganz sicher nicht. Der Torsten zahlt ganz oldschool per Karte :slight_smile:

Exakt das habe ich gesehen in der Webgui: 574398543 Events mit wechselnden IDs. Aber schön, dass der ESPuino sich nicht hat beirren lassen :joy:.

Ich habe mit normalen ISO14443 Karten ein ähnliches Problem. Die Erkennung setzt immer wieder aus, wenn eine Karte aufliegt. Das absurde: je weiter weg die Karte, desto zuverlässiger die Erkennung. Halte ich die Karte ein paar cm über die Box (durch 6mm Sperrholz) wird sie nur sehr selten nicht erkannt.

@tueddy hast du vielleicht eine Ahnung woran das liegen könnte? Hat der PN5180 evtl. Einen blinden Punkt und erkennt erst ab gewisser Reichweite gut? Kann man irgendwo die Sendeleistung einstellen?

Schonmal danke für die Hilfe, fände es cool das noch zum laufen zu bekommen. Der Fehler mit den Stickern soll erstmal nebensächlich sein.

Es gibt im RF-Feld immer Hotspots, da werden die Karten am Besten erkannt. Diese Hotspots liegen aber nicht zwangsläufig direkt an der Antenne. Das ist also normal.
Aber die Kartenerkennung ist insgesamt schlechter geworden. Ich habe die ISO-14443 Routine mehrfach gecheckt und kann keinen Fehler finden!
Ein einfaches Arduino Projekt liefert ebenfalls unzuverlässige Erkennung, es kann also nicht am ESPuino Code liegen. Der Leser scheint vielmehr irgendwie vertrimmt zu sein. Kann aber nicht erkennen wo im EEProm ein falscher Wert reingeschrieben wurde.

Kann man den EEProm eventuell komplett resetten? Nochmal das firmware-update aufspielen vielleicht?

Ansonsten habe ich hier noch einen „frischen“ PN5180 auf dem ich nur das firmware update durchgeführt habe. Hilft es dir wenn ich alle EEProm Werte irgendwie auslese?

Ich hatte mal gelesen das die Firmware-Werte für Antennen 6x6cm optimiert sind. Unserer Leser hat 4x4cm.
Ich meine aber das der Leser mit neuer Firmware 4.x zunächst sehr gut funktioniert hat und erst später unzuverlässig wurde.
@SZenglein wäre für jeden Hinweis dankbar. Evt. müsste man für erneutes Flashen diese Zeilen auskommentieren?

Ich weiß nur leider auch nicht ob das update überhaupt den eeprom löscht, war nur eine Idee. Ich hatte gehofft du bist da vielleicht mehr drinnen.

Aber dann schaue ich mal ob ich den eeprom gedumpt bekomme.