Neue Karte konfigurieren

Ich hatte ein Problem mit den neuen Karten. Das Schreiben auf die Karte ist immer mit einem NAK vom Reader abgebrochen woren, der Tonuino hat dann mit dem Menü für das initialisieren einer neuen Karte angefangen.
Nach etlichen Recherchen habe ich dann für “Authenticating again using key B…” anstatt kex B ebenfalls den key A benutzt also folgende Änderung gemacht

status = (MFRC522::StatusCode)mfrc522.PCD_Authenticate(
MFRC522::PICC_CMD_MF_AUTH_KEY_A, trailerBlock, &key, &(mfrc522.uid));//für Test KEY_B durch KEY_A ersetzt.
Seitdem funktioniert das Programm einwandfrei.
Ist das PRoblem bekannt oder ist das nur bei mir so? ICh habs mit zei untrschidlichen Arduinos, einer UNO einer NANO probiert, das Verhalten ist bei beiden identisch

Das ist eine interessante Beobachtung. Ich habe in meiner eigenen FW immer nur KEY_A benutzt. Der benutzte Key (in &key) ist ja auch der gleiche. Möglich, daß auch andere damit Probleme hatten, aber bei der überwiegenden Mehrheit läuft das Programm von Thorsten einwandfrei. Das müssen wir aber auf jeden Fall im Auge behalten. Danke für den Hinweis!

Hallo zusammen,

Ich habe heute auch soweit alles zusammen gebaut und verkabelt, die Firmware hochladen hat soweit auch funktioniert.

Allerdings habe ich ein ähnliches Problem, ich kann keine Karten anlernen. Nach der Auswahl des Wiedergabemodus kommt immer die Meldung das etwas schief gelaufen ist.

Im seriellen Monitor wird folgendes immer angezeigt, evtl kann jemand damit etwas anfangen.

19:09:09.194 → Neue Karte konfigurierenTrack beendet247
Track beendet247
Track beendet212
Track beendet212
Authenticating again using key B…
19:09:32.709 → PCD_Authenticate() failed: Timeout in communication.
Track beendet109

Timeout… Ist vielleicht die Verbindung zum NFC Reader nicht in Ordnung? Und hast du die Karte die ganze Zeit am Reader gehabt?

Problem gelöst. Ich hatte mittlerweile sämtliche Kombinationen Probiert. Lag wohl entweder daran das die Karte nicht richtig drauf lag bzw der Abstand zu groß war oder doch was mit der Verkabelung nicht 100%ig korrekt war. Habe jetzt alles nochmal überprüft und jetzt hat alles geklappt.
Danke…

Nicht dafür. Viel Spass! :slight_smile:

Der Fehler kommt auch wenn der Abstand zu gering ist. Ich muss die Karte etwa 5 bis 10 mm über das Gehäuse halten, damit sie beschrieben werden kann. Lesen geht mit Auflegen.

1 „Gefällt mir“

Das ist echt interessant. Ich kann bei meinem Entwicklerboard was nur auf einem Steckbrett aufgebaut ist, sowohl die Karten als auch diese blauen Schlüsselanhänger direkt an das PCB halten. Keine Probleme, weder beim lesen noch beim schreiben.

Hi, Ich bin neu hier und möchte auch nicht klugscheißen, außerdem bin in Arduino Programmierung ein Anfänger. Aber, ich habe festgestellt wenn man ein paar Befehle, Ich habe Ausgaben an den seriellen Monitor genommen, einfügt dann ändert sich der Ablauf des Programms. Ich habe unterschiedliche Fehlermeldungen vom RFID Reader bekommen, bzw verschieden serielle Ausgaben vom Programmablauf. Ich kenne mich jetzt leider nicht genug aus um rauszukriegen wo der Hase im Pfeffer liegt, ich kann nicht nachvollziehen in welcher Reihenfolge das Programm wirklich abgearbeitet wird. Durch die Bibliotheksaufrufe ändert sich der Ablauf ja, ist also nicht mehr linear. Logische Verzweigungen sind ja auch drin. Ich habe ziemlich lang beruflich mit SPS Programmierung zu tun gehabt. Dieses Verhalten weißt eigentlich drauf hin das da irgendwas, im Programm oder in einer Bibliothek nicht sauber logisch verriegelt ist. Dadurch können so Zufallsergebnisse entstehen, bei 1.000 Leuten geht’s auf Anhieb bei anderen zeigen sich irgendwelche Effekt.

Hallo zusammen,
auch wenn das Thema schon etwas zurück liegt:
Bei mir trat das Problem mit „PCD_Authenticate() failed: Timeout in communication.“ ebenfalls auf.

In meinem Fall war das Problem dass ich RFID tags vom „typ“ MIFARE Ultralight verwenden wollte statt MIFARE CLASSIC.
Welchen Chip typ man hat kann man im Seriellen Monitor sehen, wenn man einen Chip (aka eine Karte) vorhält.
Dann wird unter Anderm entweder

„PICC type: MIFARE Ultralight or Ultralight C“

oder

„PICC type: MIFARE 1KB“

angezeigt.

Laut readme der in der Tonuino Software verwendeten Library MFRC522 (siehe hier https://github.com/miguelbalboa/rfid) wird der RFID Chip typ „Mifare Ultralight“ nur teilweise unterstützt.

Ich vermute, dass der Tonuino nur mit den Chip Typen die im eben erwähnten ReadMe unter „works with“ funktioniert.

Weiß jemand ob das so stimmt, oder ob man diesen Chiptyp mit wenig Aufwand doch verwenden könnte?

mfg
Moritz

Ja der Typ funktioniert. Musst halt die DEV verwenden und nicht master. Reichweite kann aber geringer sein. Musste einfach mal testen. Folgende Typen sollten gehen:

  • Unterstützung für MIFARE Classic (Mini, 1K & 4K) Tags/Karten.
  • Unterstützung für MIFARE Ultralight / Ultralight C Tags/Karten.
  • Unterstützung für NTAG213/215/216 Tags/Karten.
1 „Gefällt mir“

Cool danke für die schnelle Antwort :). Das scheint sehr gut zu klappen.

1 „Gefällt mir“

Das gleiche Verhalten habe ich auch. Ich habe erst 5 Karten konfiguriert, 4 haben problemlos funktioniert. Bei einer habe ich den Timeout Fehler von oben bekommen und ich musste den Abstand erhöhen. Danke für den Tip.
Benutze folgende Karten: https://www.amazon.de/gp/product/B01FLPXERO/
Und diesen Reader/Writer: https://www.amazon.de/Ils-RobotDyn-Compact-NFC-Modul-MFRC522