Karten werden nicht zuverlässig erkannt

Hallo zusammen,
eigentlich bin ich kurz davor, mein Tonuino-Projekt zu canceln, weil ich eigentlich schon so viel Zeit in das Projekt reingesteckt habe, ohne einen durchschlagenden Erfolg gehabt zu haben.

Den Tonuino-Bausatz bekam ich vor einiger Zeit von einem Freund geschenkt, weil er damit auf Grund mangelnder Sehstärke nicht damit zurecht kam.
So habe ich ihn komplett aufgebaut und staunte nicht schlecht, dass nach einigen Schwierigkeiten und dem Lesen einer Vielzahl von Beiträgen im Forum, dann irgendwann mal alles wie gewünscht funktionierte. Wahrscheinlich hatte ich seinerzeit zum Flashen noch eine ältere Version der Software verwendet.
Ich legte den fertiggestellten Tonuino auf die Seite und dachte, wenn mein Enkelsohn noch ein Jahr älter sein wird, drucke ich ihm noch ein passendes Gehäuse dazu und schenke ihm die Musikbox.
Als ich mich jetzt wieder mit der letztendlichen Fertigstellung befassen wollte, staunte ich nicht schlecht. Der Tonuino gab keinen Ton mehr von sich.

Nach geschätzt, dem 15ten Anlegen meiner RFID-Karte an den Leser hat die Box dann reagiert und wie vorgesehen auch funktioniert.
Habe ich aber den Tonuino vom Netzgerät getrennt und später wieder Spannung draufgegeben, hat das gleiche Problem wieder von vorne begonnen. Ausnahmsweise hat der Tonuino schon auch mal gleich auf Anhieb funktioniert. Ich konnte die Box hin und wieder auch „Anstoßen“, durch Kurzschließen von GND und IO_1 oder IO_2,
Ich vermute mal, der Tonuino hätte nach dem ersten Testversuch, das gleiche fehlerhafte Verhalten gezeigt, wenn ich öfters mal gestartet hätte.

Also ging die Fehlersuche wieder von vorne los. Ich habe Bibliotheken aktualisiert und versucht eine aktuellere Software aufzuspielen.

  • Im Einsatz habe ich eine Platine in der Version 1.51
  • installierte Bibliotheken:
    DFPlayer Mini MP3 by Makuna 1.2.1
    JC_Button 2.1.2
    MFRC522 1.4.10
    Software TonUINO-TNG (Die Anleitung zum Compilieren habe ich beachtet)

Das Flashen im Arduino hat nicht ohne Fehlermeldung geklappt, weil da wohl etwas mit dem COM-Port nicht stimmen sollte.
Nun bin ich auf die Beiträge in obengenannter Problemstellung von:

  1. Gute_Laune
    „Am besten nimmst du nur den Arduino Nano ohne irgendetwas dran. Diesen verbindest du dann mit einem USB-Kabel mit dem Computer.“
  2. andidroid
    „Hatte gerade auch so ein Problem.
    Unter WIN 10 musste noch ein Häckchen gesetzt werden bei den Schnittstelleneigenschaften / Advanced bei: Enabling the Serial Port Enumerator (SerEnum)
    Dann hat Upload geklappt.“

aufmerksam geworden und siehe da, das Flashen klappte problemlos.

Beim nachfolgenden Testen kam die Ernüchterung. Durch Anlegen der RFID-Karte zeigte der Tonuino wiederum keine Reaktion.
Was mir im Vergleich mit dem vorherigen Funktionieren der Box auffiel, war eine ganz anderes Verhalten der LED’s nach dem Anlegen der Spannung.

Es ergibt sich nachfolgende Reihenfolge:

  1. Power und RFID - LED’s leuchten dauerhaft
  2. beim Mp3-Player leuchtet die LED kurz auf
  3. auch die TX-LED leuchtet kurz auf
  4. die LED bei L flackert dauerhaft
  5. die LED des Mp3-Players blinkt 2x kurz mit einem Beep auf
  6. das Anlegen der RFID-Karte ergibt sich nur ein kurzes, schwaches Aufleuchten der TX-LED.

Vielleicht gibt es ja unter den Spezialisten im Forum jemand, der mir weiterhelfen kann.

Ja die LEDs verhalten sich bei den neuen Software etwas anders als vorher.

Hast du es mal mit den Hinweisen aus der FAQ versucht?

Hallo,
damit dir gezielt weitergeholfen werden kann, solltest du noch angeben:

  • welchen DF-Mini-Player hast du verbaut? → wenn möglich, den Aufdruck auf dem Chip, der sich beim Player auf der Unterseite befindet, angeben
  • was meinst du mit der „LED bei L“ ? (zumindest habe ich das nicht verstanden)

Mit freundlichen Grüßen
Raimund

Auf dem Arduino Nano ist eine der LEDs mit L beschriftet. Es ist auch normal, dass diese bei Verwendung der neuen Software dauerhaft flackert.

Ja, danke, habe das gerade nachgesehen; habe lange nicht mehr mit Nanos gearbeitet, da ich zuletzt noch 3 AIO bzw. AIO+ hatte.
„L“ ist direkt mit D13 verbunden (built-in)

Vielen Dank für Deinen Hinweis. Da muss ich mich dann mal die Tage dahinterklemmen.

Ich habe einen DF-Mini-Player verbaut mit folgenden Aufdrucken:
größerer Chip - MH2024K-24SS 23315
kleinerer Chip - 8002A AD01C

Normalerweise ist das ein gut funktionierender Player. Allerdings wird in den FAQ auch von Problemen berichtet:
MH-ET LIVE (MH2024K-24SS) - Funktioniert sehr gut.

  • Achtung: Es kursieren neuerdings Modelle, die gar nicht funktionieren.

Wenn möglich, setze mal einen anderen Player ein und prüfe, ob sich etwas ändert.

Ich habe jetzt mal mit Arduino IDE eine Abfrage mit dem Seriellen Monitor erstellen lassen.
Auf meinen ersten Blick scheint alles in Ordnung zu sein.

  |_| |___|_|_|_____|_____|_|___|_____|
TonUINO Version 3.1 - refactored by Boerge1

created by Thorsten Voß and licensed under GNU/GPL.
Information and contribution at https://tonuino.de.

V3.1.4 03.10.23

Ver:2
Vol:25 5 15
EQ:1
ST:0
IB:1
AL:0
AP:1111
PCR:255
Volume: 15
MFRC522:146
enter Idle
Command: 6
enqueue mp3 262 0
play mp3 262

Und was passiert im Monitor, wenn du eine Karte auflegst?

Wenn ich die Karte auflege und entferne, bekomme ich die Meldungen:

Card Inserted
Auth  failed: 1
Card Removed
Card Inserted
Auth  failed: 1
Card RemovedCard Inserted
Auth  failed: 1
Card Removed
Card Inserted
Auth  failed: 1
Card Removed

Wenn ich die Karte auflege und entferne, bekomme ich folgende Meldungen:

Card Inserted
Auth  failed: 1
Card Removed
Card Inserted
Auth  failed: 1
Card RemovedCard Inserted
Auth  failed: 1
Card Removed
Card Inserted
Auth  failed: 1
Card Removed

Sorry, dass ich nicht früher geantwortet habe. Bei mir ist gerade viel los. Vergessen hatte ich dich aber nicht :wink:
Ich habe gestern boerge1 noch was dazu gefragt, denn

sagt uns leider nur
STATUS_ERROR , // Error in communication
Mehr gibt es dazu tatsächlich nicht.
Deshalb würde ich entweder noch einmal mit dem Abstand zwischen Karte und Reader experimentieren (weder zu klein noch zu groß) oder einen anderen Reader probieren.

Hallo Gute_Laune,
entschuldige bitte, ich wollte Dich nicht drängen.
Ich habe jetzt mal einen anderen RFID-Reader getestet und nun hat der serielle Monitor folgende Meldung gezeigt:

Card Inserted
CardData:  31 73 3b 74 01 01 02 00 00
bad ver 1
Card Removed
Card Inserted
MIFARE_Read  failed: 7
Card Removed

Vielleicht ist diese Fehlermeldung ja aufschlussreicher?

Das ist ein Bug in der Software, dass alte Karten von vor 2019 nicht gelesen werden. Habe ich gerade gefixt, spiele also die neuste Software drauf, dann sollte es gehen.

Das ist der Fehler STATUS_CRC_WRONG, ich würde sagen, dass du die Karte beim Lesen bewegt hast und sie dann nicht mehr richtig gelesen werden konnte.
War das die selbe Karte wie oben?

1 „Gefällt mir“

Ich habe gleich mal Deine neue Software heruntergeladen.
Zuvor habe ich die Anweisungen zum Compilieren abgearbeitet. In der constants.hpp bin ich auf eine Stelle gestossen, welche mich unsicher machte.
Da heißt es z.B.

/* uncomment one of the below lines to support a special chip on the DfMiniMp3 player
 * um einen speziellen Chip auf dem DfMiniMp3 Player zu ünterstützen bitte in eine der nächste Zeilen den Kommentar entfernen
 */
//#define DFMiniMp3_T_CHIP_GD3200B
//#define DFMiniMp3_T_CHIP_MH2024K16SS
//#define DFMiniMp3_T_CHIP_LISP3
#define DFMiniMp3_T_CHIP_Mp3ChipIncongruousNoAck

Ich habe ja den Chip: MH2024K-24SS 23315. Meine Frage wäre, müßte ich hier eher den #define DFMiniMp3_T_CHIP_MH2024K16SS auskommentieren und den voreingestellten Player mit // versehen?

Ohne jetzt mal an Playereinstellungen etwas zu verändern bekam ich nach dem Compilieren dann folgende Fehlermeldung:

In file included from C:\Users\Silvia\Downloads\TonUINO-TNG-main\TonUINO-TNG\src\settings.hpp:8:0,
                 from C:\Users\Silvia\Downloads\TonUINO-TNG-main\TonUINO-TNG\src\tonuino.hpp:4,
                 from C:\Users\Silvia\Downloads\TonUINO-TNG-main\TonUINO-TNG\TonUINO-TNG.ino:1:
C:\Users\Silvia\Downloads\TonUINO-TNG-main\TonUINO-TNG\src\chip_card.hpp:6:10: fatal error: MFRC522.h: No such file or directory
 #include <MFRC522.h>
          ^~~~~~~~~~~
compilation terminated.

exit status 1

Compilation error: MFRC522.h: No such file or directory

Die Karte war dieselbe. Da ich den Tonuino noch nicht im Gehäuse eingebaut habe, kann es durchaus sein, dass ich die Karte bewegt habe.

Da deiner ein -24ss und kein -16ss ist, glaube ich das eher nicht. Die Probleme, die wir mit der alten Software festgestellt haben, sind völlig verschieden und dementsprechend sind die Anpassungen andere.

Nein, der 16SS hat ganz andere Fehler.
Für den Chip kommentierst du am Besten auch die letzte Zeile aus.

Du musst noch die entsprechenden Bibliothek hinzufügen. Ich dachte, du hast schon mal compiliert? Dann musste doch alles schon eingerichtet sein.

Ich habe jetzt mal wie es Boerge1 unten vorgeschlagen hat, allle alle DFPlayer auskommentiert.

Jetzt habe ich mal alle DFPlayer in der constants.hpp auskommentiert.
Eigentlich hatte ich ja die 3 Bibliotheken schon mal installiert. Das habe ich nun nochmal gemacht.
Nach dem Compilieren gab es keine Fehlermeldungen mehr.
Das Auslesen mit dem seriellen Monitor und das Annähern der Karte ergab:


 _____         _____ _____ _____ _____
|_   _|___ ___|  |  |     |   | |     |
  | | | . |   |  |  |-   -| | | |  |  |
  |_| |___|_|_|_____|_____|_|___|_____|
TonUINO Version 3.1 - refactored by Boerge1

created by Thorsten Voß and licensed under GNU/GPL.
Information and contribution at https://tonuino.de.

V3.1.4 16.11.23

Ver:2
Vol:25 5 15
EQ:1
ST:0
IB:1
AL:0
AP:1111
PCR:255
Volume: 15
MFRC522:146
enter Idle
Command: 6
enqueue mp3 262 0
play mp3 262
Card Inserted
Auth  failed: 3
Card Removed