Dachte ich kein Problem, hast ja die backup.txt, also die eingelesen (vorher alle Zuordnungen gelöscht) aber nix da gleiches Verhalten.
Daher auf den neusten DEV Branch gewechselt da kann man die Zuordnungen ja sehen, aber auch da kaputt (siehe Anhang rfid.json, letzter Eintrag) rfid.json.txt (841 Bytes)
Zum Thema Umlaute: Ich kann den Fehler bestätigen. Allerdings betrifft das nur die Dateinamen selbst. Umlaute in Pfaden scheinen keine Probleme zu machen.
Zum Thema NVS: Sehe ich ehrlich gesagt zum ersten Mal sowas. Also zB der ESPuino meiner Tochter dürfte schon >2j alt sein und ist täglich in Gebrauch. Hast du da viel (salopp gesagt) „rumgespielt“?
Ok, also ich hab’s mit nem Einzeltitel versucht, bei dem der Pfad Umlaute hatte und der Titel aber nicht. Das ging. Aber sobald der Titel selbst Umlaute hatte war’s rum.
//DEBUG
String s=gPrefsRfid.getString("019228129022"); //tauscht nicht in der rfid,json auf
Log_Printf(LOGLEVEL_DEBUG,s.c_str());
am Ende der setup() sorgt für den richtigen Output, daher die Daten sind da!
Auch lassen sich die Karten abspielen!
Ich vermute oben einen Fehler aufgrund der Umlaute im Namen vom Verzeichniss und einen Fehler in der Auflistung der RFIDs @tueddy Kannst du da mal schauen was da los ist?
EDIT:
hab eben meine backup.txt von Umlauten befreit und dann die Ordner auf der SD Karte auch umbenannt, und schon läuft alles wieder wie vorher…
Das ist also an mehr als einer Stelle noch was schief mit den Umlauten
Der Fehler mit unvollständigen rfid.json ist geblieben @tueddy
Hast du die rfids auf einer älteren dev oder gar master angelernt und dann auf der aktuellen dev darauf zugegriffen? Da kann ich bestätigen, dass es Probleme mit Umlauten gibt. Muss man neu anlernen, dann geht es wieder. Da gab es wohl irgendwann mal eine Änderung, wie mit Umlauten umgegangen wird.
zunächst Danke an @JHB für die ausführiche Fehleranalyse! Kaputtes NVS ist ja auszuschließen, zur Software:
[ 48725 ] Datei oder Verzeichnis existiert nicht: %s
Log-Meldung ist schon blöd wenn man das Verzeichnis nicht sehen kann, hab’s angepasst
Ich vermute oben einen Fehler aufgrund der Umlaute im Namen vom Verzeichniss und einen Fehler in der Auflistung der RFIDs
Jepp, beides!
Daher auf den neusten DEV Branch gewechselt da kann man die Zuordnungen ja sehen, aber auch da kaputt (siehe Anhang rfid.json, letzter Eintrag) rfid.json.txt (841 Bytes)
Letzter Eintrag ist vollständig im NVS, wurde aber leider nicht komplett über den neuen Endpunkt /rfid ausgeliefert, der JSON Puffer war zu klein. Der ist jetzt zwar größer und hat Platz für ca. 100 Einträge, trotzdem könnte es sein das nicht alle Einträge anzeigt werden. Das wurde hier bereits angemerkt.
Ich hatte die Datei „rfid.json.txt“ mal über den NVS Import hochgeladen und bekam prompt einen Buffer-Overflow Absturz. Das ist jetzt hier abgefangen.
Umlautproblem: Im Dateisystem des Master wird noch OEM 852 (MS-DOS) verwendet! Dateisystem des DEV-Branch verwendet UTF-8. Daher wird sich ein Backup des Master nicht ohne Umlautfehler einlesen lassen. Das wäre evt. auch wichtig für eine Migration. Was tun? Entweder manuelles Ändern z.B. mit Notepad++ oder eine automatische Erkennung des Zeichensatzes? Wir könnten beim Erstellen auch ein BOM-Marker schreiben? Gern Vorschläge!
Umlaute sollten jetzt passen, UTF-8 BOM wird geschrieben, das erleichtert auch die manuelle Bearbeitung z.B. mit Notepad++. Import eines Backups aus dem Master mit Umlauten klappt auch.