Fehlerbild:

Fehler am MFRC-522 (dem RFID Kartenleser) äußern sich dadurch, dass keine RFID-Tags gelesen oder geschrieben werden können.
Das heißt, der TonUINO zeigt bei Auflegen eines RFID-Tags keinerlei Reaktion.
Zusätzlich kann es auch dazu kommen, dass der Startvorgang des ToUINO ungewöhnlich lange dauert.

Ursachen

Mögliche Fehler sind in den folgenden Abschnitten beschrieben. Die Ursachen können entsprechend der Anweisungen überprüft und abgestellt werden.

MFRC-522 Datenblatt



com to mfrc522 broken

Die TonUNO Firmware fragt die Firmware-Version des RFID-Readers ab.
Erfolgt keine Rückmeldung ist die Kommunikation gestört. Für die Störung können folgende Gründe vorliegen:

Abhilfe

Seit auch ein Nano ESP32 für den TonUINO verwendet werden kann, wird berichtet, dass es auch zu diesem Fehler kommt, wenn die Classic-Platine für den Aufbau verwendet wurde, obwohl alle Verbindungen zuverlässig und sauber gelötet sind.

Auf der Platine sind Widerstände zur Pegelanpassung integriert, um die 5 V Logikpegel des Arduino Nano an die 3,3 V Logikpegel des MFRC522 anzupassen. Da der Nano ESP32, bedingt durch den anderen Prozessor, nun auch mit 3,3 V Logilpegeln arbeitet, kommt es, abhängig von Bauteilstreuungen, dazu, dass die Signale durch die Pegelanpassung soweit abgeschwächt sind, dass eine zuverlässige Signalübertragung nicht mehr möglich ist.


Abhilfe bei Einsatz eines Nano ESP32
Der Spannungsteiler zur Pegelanpassung auf der Classic-Platine muss unwirksam gemacht oder ausgebaut werden. Dazu werden 2 Möglichkeiten empfohlen:

  1. Umgehung der Pegelanpassung
    Die Anschlussleitungen des MFRC522 werden nicht über die vorgesehene Pfostenleiste auf der Platine angeschlossen, sondern direkt and die entsprechenden Pins des Arduino (Lötpunkte der Buchsenleiste des Arduino) angelötet, womit der Spannungsteiler unwirksam wird.
  2. Ausbau / Deaktivierung der Pegelanpassung
    Die Widerstände zur Pegelanpassung (Levelshifter) befinden sich unterhalb des Steckplatzes für den Arduino Nano auf der Bestückungsseite der Classic-Platine.

    Um die Pegelanpassung (Levelshifter) zu deaktivieren, müssen nur die 2 kΩ Widerstände (R2, R4 und R5), die auf GD-Potenzial geschaltet sind, ausgebaut (ausgelötet) werden. Die 1 kΩ Widerstände des Spannungsteilers verbleiben auf der Platine.

    !! Achtung !!
    Wenn die 1 kΩ Widerstände entfernt werden, ist die Verbindung der Pfostenleiste zur Buchsenleiste des Arduino unterbrochen.
    Damit die Pfostenleiste weiter zum Anschluss des MFRC522 genutzt werden kann, müssen die 1  kΩ Widerstände durch Brücken ersetzt werden.


keine Verbindung mit Nano 2038

Es wurde eine Charge Nano Controller ausgeliefert, bei denen eine Verbindung mit dem MFRC-Kartenleser unmöglich ist, obwohl alle Verbindungen korrekt und sauber ausgeführt sind. Alle Controller, die mit dem zusätzlichen Aufdruck "2038" gekennzeichnet sind, haben eine fehlerhafte Kalibrierung der 3,3 V Regelung auf dem Board.

Wenn der 3,3 V Ausgang dieser Boards zur Versorgung des MFRC-Kartenlesers, wie üblich und vorgeschlagen, verwendet wird, ist die Versorgungsspannung für den MFRC-Kartenleser so gering, dass dieser nicht zuverlässig arbeitet.

Abhilfe:
  1. alle bekannten Lieferanten haben die fehlerhaften Controller auf Anfrage umgetauscht
  2. ist ein Um-/Austausch nicht möglich, kann auch die Versorgung des MFRC-Kartenlesers über eine separate 3,3 V Spannungsquelle helfen


kann Tag / Karte nicht lesen:

Dem Eintrag im LOG zufolge wird zwar das Auflegen einer Karte erkannt, aber es kommt zu einem Lesefehler.

NFC-Tags haben ihrer Größe geschuldet nur eine kleine Antenne, so dass eine leicht andere Ausrichtung zwischen Tag und Kartenleser schon zur Verbesserung führt.
Ebenso kann ein Lesefehler bedeuten, dass das Gerät durch ein anderes NFC-Signal (eine herumliegende Karte, ein Mobiltelefon) gestört wurde.
Tritt der Lesefehler nur bei einigen Karten auf, benötigen diese Karten bedingt durch Bauteil- und Fertigungsstreuung ein stärkeres Signal und können nicht zuverlässig verwendet werden.


erkennt keinen RFID-Tag

Dieser pauschale Fehler kann durch verschiedene Ursachen ausgelöst werden, die systematisch überprüft und ausgeschaltet werden müssen:
  1. die Spannungsversorgung des Kartenlesers ist nicht korrekt

    Auf dem Kartenleser befindet sich eine rote LED, die anzeigt, dass eine Spannung mit korrekter Polarität anliegt
    Diese LED zeigt weder, dass die anliegende Spannung korrekt, oder gar, dass der Kartenleser betriebsbereit ist.
    Deshalb soll die Betriebsspannung mit einem Multimeter überprüft werden und bei 3,3 V liegen, um ein Fehlverhalten durch inkorrekte Spannungsversorgung auszuschließen. (siehe auch "unzureichende Spannungsversorgung")


  2. der Kartenleser wurde nicht korrekt von der TonUINO Software erkannt

    Der Kartenleser muss Daten mit der TonUINO Software austauschen können, was aber nur möglich ist, wenn Verdrahtung und Signale korrekt sind. Die TonUINO Software überprüft während des Einschaltvorgangs, ob eine ungestörte Kommunikation mit dem Kartenleser möglich ist. Die TonUINO Software gibt entsprechende Meldungen in ein LOG aus, was über die Konsole verfolgt und mitgelesen werden kann.
    Es ist unerlässlich, den TonUINO für diese und weitere Prüfungen an einen PC anzuschließen und ein Fenster für die Konsole zu öffnen, so dass die Meldungen der TonUINO Software gelesen werden können.
    Die TonUINO Software initialisiert den Kartenleser und fragt den aktuellen Stand der Firmware ab:

    Wird die Fehlermeldung "com to mfrc522 broken" ausgegeben, sind weitere Prüfungen der Verkabelung und Lötstellen erforderlich.

  3. das Magnetfeld des Kartenlesers ist durch die Einbausituation gestört

    Die Kommunikation zwischen Karte und Kartenleser funktioniert zwar "drahtlos", aber nicht wie sonst üblich mit Funkwellen sondern über ein Magnetfeld.
    Dieses Magnetfeld induziert gleichzeitig die Betriebsspannung für den Chip in der Karte (ähnlich, wie ein Transformator) und überträgt Daten durch Modulation des Magnetfeldes. Ein Verfahren, dass nur für kurze Abstände (wenige Zentimeter) geeignet ist (deshalb NearFieldCommunication = NFC) und empfindlich auf Störungen in Ausbreitung und Stärke des Magnetfeldes reagiert.
    Solche Störungen werden durch jede Art von magnetisch und/oder elektrisch leitenden Materialien verusacht, die in den Bereich des Magnetfeldes kommen. Wegen der ring - bzw. kugelförmigen Ausbreitung des Magnetfeldes kann es auch wirksam zu Störungen kommen, wenn sich entsprechende Materialien nicht zwingend zwischen Kartenleser und Karte befinden. Kritische Materialien stören das Magnetfeld auch, wenn sie sich in Nähe der Unterseite des Kartenlesers befinden. Das gilt auch (besonders) für jegliche Art von Anschlussdrähten.

    Ein Prüfverfahren ist mit erschwinglichen Mitteln nicht möglich. In den meisten Fällen hilft jedoch eine "saubere Verlegung" der elektrischen Leitungen und eine verständige ind kritische Beurteilung der Einbausituation. Ggf. müssen für Versuche einige Bauteile entfernt werden.

  4. der Abstand zwischen Tag und Kartenleser ist zu groß / zu gering

    Die Datenübertragung zwischen Kartenleser und Tag erfolgt nach dem Prinzip von "NFC" durch Übertragung mittels eines Magnetfeldes. Leicht verständlich ist, dass die Übertragungsqualität von der Antennengröße und dem Abstand zum Sender abhängt. Es ist also nicht nur der Abstand wichtig, sondern auch Größe und Bauweise der Antenne.
    Da die Antenne in Form einer Spule in den Tag integriert ist, ergibt sich automatisch, dass die Empfangsqualität mit der Größe des Tags ebenfalls abnimmt.
    Ungewöhnlich mutet allerdings an, dass die Empfangsqualität bei zu geringem Abstand wieder absinkt anstatt ihr Maximum zu erreichen. Hier hilft der Vergleich mit der "Windstille im Auge eines Taifuns". Kommt man also dem Zentrum der Sendespule zu nahe, nimmt auch die Stärke des nutzbaren Magnetfeldes wieder ab.

    In der Praxis kann der funktionierende Bereich ermittelt werden, indem der Tag dem Kartenleser aus unterschiedlichen Richtungen angenähert wird. Bei gleichzeitiger Beobachtung des LOG in der Konsole können die Bereichsgrenzen gut ermittelt werden.

    Entsprechend der Ergebnisse muss dann die Einbausituation im Gehäuse angepasst / entschieden werden.

  5. die RFID-Karte ist nicht kompatibel zum Kartenleser oder defekt

    Im Feld der RFID-Anwendungen gibt es 2 Systeme, die sich grundsätzlich unterscheiden und absolut nicht zueinander kompatibel sind. Das eine System arbeitet mit einer Basisfrequenz von 125 kHz, das andere mit einer Basisfrequenz von 13.56 MHz.
    Karten und Tags dieser beiden Systeme lassen sich in den meisten Fällen optisch nicht unterscheiden, so dass durchaus die Möglichkeit besteht, inkompatible Tags oder Karten vorliegen zu haben, besonders, wenn bei Nachbestellung aus Unkenntnis nicht auf die Frequenzangabe geachtet wurde.

    Zur Diagnose kann ein Mobiltelefon verwendet werden, da die meisten moderneren Mobiltelefone mit NFC-Technik (für kontaktlose Bezahldienste usw) ausgestattet sind. Ein solches Gerät mit aktivierter NFC-Funktion kann die Karten eines TonUINO erkennen und lesen, wenn vielleicht auch nicht decodieren. Alle kontaktlosen Bezahlsysteme arbeiten wegen der höheren Sicherheit und Übertragungsgeschwindigkeit, wie auch der TonUINO, mit 13,56 MHz als Basisfrequenz.

    Handelt es sich tatsächlich um inkompatible oder defekte Karten, wird dies bei Annäherung der Karte vom Mobiltelefon ganz unabhängig gemeldet.
    Damit bleibt dann nur ein Austausch / Ersatz der vorliegenden Karten.


kann RFID-Tag nicht programmieren

Beim Beschreiben einer Karte kommt es zur Meldung “Schade das hat leider nicht geklappt

Kommt es beim Beschreiben von Karten zu dieser Fehlermeldung, ist es nicht ganz unerheblich zu wissen, auf welchem Weg der Schreibvorgang eingeleitet wurde und ob es sich um eine neue oder bereits verwendete Karte handelt.
  1. Wird eine neue Karte aufgelgt erkennt der TonUINO das und führt mit der Ansage "Oh, eine neue Karte" direkt in das Konfigurationsmenü für Karten. Allein diese Reaktion des TonUINO ist schon Nachweis dafür, dass es sich um eine kompatible Karte handelt-
  2. Soll eine bereits verwendete Karte neu konfiguriert werden, ist deren Kompatibilität ebenfalls durch die vorherige Verwendung nachgewiesen.
  3. Wird allerdings die Kartenkonfiguration direkt über das Admin-Menü gemacht, erfolgt kein vorheriger Lesezugriff (und damit eine Kompatibilitätsprüfung) bevor der Schreibvorgang eingeleitet wird.
    Kommt es auf diesem Wege zu einem Schreibfehler, sollte vor weiteren Maßnahmen zunächst die Kompatibilität der Karte geprüft und nachgewiesen werden, wie im Abschnitt "erkennt keinen RFID-Tag" beschrieben.
Ist die Kompatibilität der Karte sicher gegeben, kann der Schreibfehler durch zu geringe Reichweite, ungünstige Ausrichtung oder Bewegung der Karte während des Schreibvorgangs ausgelöst werden. Da für den Schreibvorgang vermutlich (auf der Karte) eine höhere Energie als für den Lesevorgang erforderlich ist, kann der Fehler trotz funktionierendem Lesevorgang durch zu geringe Reichweite oder ungünstige Ausrichtung der Karte ausgelöst werden.

Als erstes sollte eine "Bereinigung" der Einbausituation vorgenommen werden, bei der alle störenden metallischen Bauteile (auch Leitungen) auf möglichst großem Abstand zum Kartenleser gehalten werden.
Ein experimenteller Aufbau, bei dem Abstand und Ausrichtung von Kartenleser zu Karte leicht veränderbar ist, gibt Hinweise auf wirksame Maßnahmen.

Funktionsprüfung

Hat das Programmieren von Karten bisher problemlos funktioniert und der Fehler tritt nun erst nach einer gewissen Zeit oder bei Verwendung von neu beschafften Karten auf, kann die Funktion mit einer "alten" Karte, bei der es seinerzeit zu keinem Fehler kam, überprüft werden, indem genau diese Karte erneut programmiert wird. Dabei können auch die enthaltenen Daten unverändert erneut programmiert werden, da auch in diesem Fall ein Schreibvorgang komplett ausgeführt wird und nur bei Erfolg eine entsprechende positive Meldung ausgegeben wird.
Wird KEINE Fehlermeldung ausgegeben, ist dies der Nachweis, dass TonUINO und Kartenleser funktionsfähig sind und die Ursache in der Kompatibilität der Karten zu suchen ist.


reagiert nicht auf Tag / Karte

Bei dieser Beschreibung können 2 unterschiedliche Fehler vorliegen
  1. die Karte wird prinzipiell nicht erkannt
  2. die Karte wird zwar erkannt, aber die Software reagiert nicht, wie erwartet
Um die Art des Fehlers näher bestimmen zu können, muss eine Analyse / Beobachtung des LOG in der Konsole erfolgen.

Ist das Auflegen einer Karte in der Konsole nicht zu erkennen, hilft ein Vorgehen weiter, wie im Abschnitt "erkennt keinen RFID-Tag" beschrieben.
Wird jedoch das Auflegen der Karte registriert und Daten gelesen, ohne dass eine Reaktion des TonUINO erkennbar ist, muss eine detaillierte Analyse des anschließenden LOG erfolgen, denn das Programm wird auf die gelesenen Daten reagieren, auch wenn sie zu keiner (ohne LOG) wahrnehmbaren Reaktion des TonUINO führt.



keine / unzureichende Spannungsversorgung

Bei fehlender oder unzureichender Spannungsversorgung des MFRC-Kartenlesers kann es zu unterschiedlichen Fehlerbildern kommen: Die LED der Baugruppe ist also KEIN sicherer Indikator dafür, dass die Baugruppe wirklich betriebsbereit und funktionsfähig ist, sondern signalisiert lediglich dass eine Spannung anliegt, die aber nicht unbedingt korrekt sein muss.

Ursachen