Features für die nächste Software Version

Sicherlich eine Variante, ist aber nur dann was wert wenn der Schlüsselanhänger greifbar ist. Und wir reden ja grade von dem Fall wo nur die Box da ist… (ich bin ja schon froh wenn meine Frau den Autoschlüssel dabei hat wenn sie mit dem Auto unterwegs ist :upside_down_face:)

Deswegen sag ich ja, Halskette. Wie diese Notrufknöpfe. Ist ja in gewisser weise auch für Notfälle. :sweat_smile: Aber klar, versteh schon was du meinst.

Was mir noch nicht ganz klar ist: wenn ich nach dem Einschalten die Play-Taste drücke, welcher Track wird dann gespielt?
Ich glaube ich fände es gut wenn in dem Fall die Box verlangen würde dass eine Karte aufgelegt wird, oder der zuletzt gespielte Track abgespielt wird.

Ich habe einen Startsound. Normal spielt der Player dann den letzten Track. Also bei mir immer wieder den Startsound. Ich hab das in meinem, Fork aber unterbunden. Es passiert einfach gar nichts.

Eine Idee für eine kommende Version wäre die Albenzahl von 99 auf 198 zu verdoppeln. Laut Spezifikation des DFPlayer Mini kann man zusätzlich im root-Verzeichnis die Ordner 01 bis 99 anlegen und über myDFPlayer.playFolder abspielen. Thorstens Workaround der Idee in einem Ordner von-bis Track abzuspielen ist auch nicht verkehrt. Liegt aber in der Natur der Sache, dass die Dateien auf der SD-Karte dann sehr unübersichtlich werden. Mit 198 Ordnern dürfte dann auch bald das sinnvolle Maximum erreicht sein, da meines Wissens nur max. 32 GB gelesen werden können.

1 „Gefällt mir“

Wir legen doch auch heute schon die Ordner 01 bis 99 im Root an. Und nur die. Die Ordner mp3 und advert sind nur für interne Sachen.

Ich habe mich bislang nur Abends mit dem Projekt beschäftigen können und meine erste Box mittlerweile fertig. In die Tiefen des Codes habe ich mich aber noch nicht eingearbeitet. Das muss bis zum nächsten Urlaub zu Hause warten :slight_smile: Nachdem ich alle Ordner einer Karte zugeordnet habe, habe ich die Funktionen zum Löschen von Karten aus dem Quellcode gelernt. Wäre mir zu aufwändig, wenn versehentlich alle Karten gelöscht werden und wieder neu angelernt werden müssten. Generell würde ich empfehlen die Löschfunktionen von den Buttons nehmen und eine Abfrage starten, wenn eine Karte mit Mode 6 aufgelegt wird. Bzw. ein Setup-Menü nur über eine solche entsprechende Karte steuern. Die Zielgruppe für eine solche Musikbox sind nun einmal Kinder. Die Wahrscheinlichkeit, dass wild alle Knöpfe gedrückt und Karten gelöscht werden oder alles verstellt wird, ist gegeben. Den Bedarf einer Sperrung sehe ich dann nicht mehr, da die Kinder vermutlich keine Blankokarten in die Hand gedrückt bekämen. Den angedachten Sleep-Timer könnte man dann vielleicht über eine Karte mit dem Mode 7 steuern.

Dann hatte ich eben einen Denkfehler. Sorry :-/

Man kann prinzipbedingt an der Box nicht alle Karten auf einmal löschen weil die Information was womit verknüpft ist auf den Karten selbst gespeichert ist.

Den Code den du da entdeckt hast, müsste man rausnehmen. Der löscht das eeprom, wo zu Anfang des Projekts die Informationen mal gespeichert waren. Das ist wie gesagt jetzt nicht mehr der Fall. Also keine Sorge.

Was du jetzt verlierst wenn du das triggerst, sind die gespeicherten Stellen vom Hörbuchmodus.

Admin Karten und so weiter sind auf der todo Liste.

1 „Gefällt mir“

Ich fände es schön, wenn bei Hörspielen (vor allem wenn eines zufällig ausgewählt wird) der Titel angesagt werden würde.

Dazu könnte man ein Skript schreiben, was die ID3-Tags ausliest, per Text-to-Speech vertont und entsprechend der Ordnernummer/Dateinummer benennt und abspeichert. Die Dateien werden dann in den großen “mp3” Ordner (mit Platz für 9999 Dateien) abgelegt und vom Tonuino vor der Wiedergabe des Hörspiels abgespielt.
Das würde zumindest für die Ordner 10 bis 99 funktionieren (da bis Dateien 0001.mp3 bis 0999.mp3 ja schon für andere Statusinformationen belegt sind)
z.B. erhält die Titelansage des Hörspiels 01.mp3 aus dem Ordner 10 den Dateinamen 1001.mp3 im “mp3”-Ordner (und Titelansage des Hörspiels 08.mp3 im Ordner 67 den Dateinamen 6708.mp3).

Wenn keine passende Datei vorhanden ist wird nichts abgespielt, daher wäre man nicht gezwungen sich die Titelansagen zu erstellen.

Das ist eine nette Idee. Allerdings sind doch die Dateinummern in den Ordnern 01-99 dreistellig. Und zwar von 1-255. Das würde dann nicht in das Schema OrdnerDateinummer.mp3 passen wenn beides zusammen nur vierstellig ist bzw. sein kann?!

Schmeisst dann halt ne Fehlermeldung der DFPlayer. Ist im Prinzip kein Problem, aber ich weiss nich wie sich das verhält wenn das dauernd passiert. Manchmal ist der DFPlayer ja etwas zickig… :wink:

Da wäre es deutlich einfach via Script die Titelansage an den Anfang der MP3 Datei zu packen.

Via ffmpg kann man die dann zusammenfügen ohne dass die Qualität unter einem recodieren leiden würde.

1 „Gefällt mir“

Oh. Da bin ich wohl durcheinander gekommen. Ich dachte es dürfen nur 99 Dateien in einen Ordner.

Ansonsten wäre es vielleicht ne gute Idee für die Zukunft ein paar Hooks in der Firmware zu haben wo man genau sowas (ein Hook vorm Abspielen eines Tracks) realisieren kann und trotzdem bei Updates einfach ein git pull machen zu können.

Daran habe ich auch schon gedacht. Dazu muss man wahrscheinlich darauf achten, das beide Dateien gleich encodiert sind (gleiche Bitrate, Samplingfrequenz, VBR/CBR etc.). Also das die Titelansage-MP3 passend zum Hörspieldatei generiert wird.
Davor bin ich zurückgeschreckt und dachte zwei einzelne Dateien abzuspielen wäre deutlich einfacher.

Nochmal ein anderes Feature: eine Karte tatsächlich einfach löschen. Aktuell (so ich es denn richtig interpretiere) kann eine Karte nur neu konfiguriert werden, nicht aber gelöscht. Bricht der Konfigurationsvorgang aus welchem Grund auch immer ab hat die Karte noch den vorherigen Modus.

1 „Gefällt mir“

Das ist korrekt. Habe ich bei mir auch entsprechend angepasst, das löschen auch wirklich löscht. Zum neu programmieren, muss dann die Karte erneut aufgelegt werden.

Habe ich bei mir auch entsprechend angepasst, das löschen auch wirklich löscht.

Wärst Du so nett zu verraten welche Teile deines Quelltextes dafür zuständig sind? Stehe etwas auf dem Schlauch, würde gerne versuchen das einzubauen.

Im Prinzip Zeile 1588-1589. Ruft einfach writeNfcTagData() auf aber setzt vorher die zu schreibenden Bytes auf 0x00. Der Rest drumrum ist nur das handling (wie wird’s getriggert etc.). Das wird aber OT hier, weil das nichts mehr mit Features für die offizielle FW zu tun hat. Kannst dich aber gerne per PN melden.

Danke dir, schau ich mir bei Gelegenheit mal an. OT jein, könnte ja als Feature in Thorstens git wandern, aber die Detaildiskussion müssen wir nicht hier führen, da bin ich bei dir.