Tonuino Cards Manager - der neue Assistent für die Verwaltung von SD- und RFID-Karten

Ich möchte hier eine Software vorstellen, die ich geschrieben habe, um mir die Arbeit bei der Organisation der SD-Karte, den Ordnern mit ihren MP3-Dateien darin sowie den verknüpften RFID-Karten stark vereinfacht: den Tonuino Cards Manager :rocket:

:red_question_mark: Was macht das Ding?

Es erlaubt, die gesamte MP3-Sammlung, die man auf dem Tonuino haben möchte, in einer einzigen Textdatei (YAML-Format) übersichtlich verwalten zu können. Die eigentlichen MP3-Dateien können dann an beliebigen Orten verstreut sein und werden von dem Tool beim Beschreiben der SD-Karte auf die Karte an die richtige Stelle mit numeriertem Dateinamen kopiert werden.

Anschließend generiert der Tonuino Cards Manager für jede RFID-Karte einen QR-Code, der dann etwa mit der TonUINO NFC Tools-App eingelesen werden kann, um die RFID-Karten über ein Smartphone korrekt zu konfigurieren.

:red_question_mark: Kannst du zeigen, wie das funktioniert?

Klar! Hier ein kurzes Video, in dem ich die YAML-Datei zeige (mit 3 konfigurierten Karten/Ordnern) und dann das Tool laufen lasse, welches die Dateien auf die Karte kopiert und mir dann einen QR-Code präsentiert, mit dem ich alle 3 Karten nacheinander bespielen kann:

asciicast

Hier das ganze auch als Text zum Nachlesen:

Textversion des kurzen Videos
$ cat tonuino-cards.yaml
sourcebasedir: "source"
# cardcookie: "1337B347"
# version: 2

cards:
  # A whole directory in album mode
  1:
    source:
      - Rolf Zuckowski/1994 Im Kindergarten
    mode: album
  2:
    source: _Singles/Die alte Moorhexe.mp3
    mode: play-from-to
    from_song: 1
    to_song: 10
  # Multiple single songs and a whole directory in party mode
  3:
    description: Favourites
    source:
      - _Singles/Die alte Moorhexe.mp3
      - _Singles/Große Uhren machen tick tack.mp3
    mode: party

$ tonuino-cards-manager -c tonuino-cards.yaml -d dest/
INFO: Processing Card no. 1
INFO: Processing Card no. 2
INFO: Processing Card no. 3 (Favourites)

QR code for cards batch 1 (cards 1 - 4):


    █▀▀▀▀▀█  █▀████▀▀▀█▄ █ ▀█ ▄█▀▄▀ ▄▄▄▄ ▀▄▀ ▀▀▀▄█▀█  █▀▀▀▀▀█
    █ ███ █ █ █▄▄ █▄▀█▀▀██ ▄▀    ▀ ▀ ▀▄▄▄▄▄▀▀█▀▀▀█▀█  █ ███ █
    █ ▀▀▀ █ █▀█▀▀▀█ ▀▀▀ ▄▄▀██▄█▀▀▀█▀ ▀▄▄ ▀▄▀▄▄▀ ▀ ▄▀  █ ▀▀▀ █
    ▀▀▀▀▀▀▀ █ ▀ █ █ ▀▄▀▄█ ▀▄█▄█ ▀ █▄█ █ ▀ ▀▄▀ ▀▄█▄▀ █ ▀▀▀▀▀▀▀
    ▀▄▀███▀▄ ▄██ ▄▄▄▀███▄▀ ██ ▀█▀▀█  ▀█▀▀█  ▄ ██ █ ▀▄▄▀█▀▀▀ ▄
    ▄ █ ██▀█▀▀  ▄▀▀▀▄██ ▄▄█ █▀▀▀   ▀▄▀▄█▄▀▀███▄ ▄▄▀ █ ▀█▀ ▄█▄
    ▄  ▄▄▀▀█▄▀ ▄▀▀▄█▄▄▄█▄▄▀▄▀██▀ ▄█  ▄▀▄██▀ ▄▄▄  ▀ ▀▄▄  ▄█ ▄▄
     █  █▀▀▄███▄▀▄▄▀▄▀▀ █ ▄▄ ▄█▀▄▄█ ▄▀█▄▀▄▀▄  ▄▄▄█ █▄ ▀▄▄█▄ ▄
    █▀▀██▀▀▀█▀▀ █ ▀█▄██ ▄▀▀▀▄  █ ▀▄ ▄  ▄██  ▄ █  █  ▄ ▀ ▄▀▄
    ▀█▄ ▄▀▀ ▄████▀ ▄▄█  █ ▄ █▄▀█▄█ ▀█ █ ▀█▀▀██  ▄▄▀█▀▀██ █▄█▄
    ▄█▀ ▄█▀▀▀▀▀ ▀█▀ ▄   ▀▄  ▄ ▀▀ ▄   ▄▀▀██   ▄▄█▄▄▀▀▄█▀ ▄ ▄ █
    ▄▄█  █▀▄▀▄█ ▄▄▄█▀▄█ █▀███▄  ▄ █  █▀ ▀▀▀██ ▄▄██▀█▄ ▀▄▄▀██▄
    ▀ █ ▄█▀  █▀█ ▀█▀ ▀█▄▀▀▄▄▄ ▀▀  █▀█▄▀ ▀█    █  ▄▀ ▄ ▀█ ▀ ▀▀
    ▀ ▀ █▀▀▀██▄█ █▀▀▄█▀▀   ▄▀▄█▀▀▀███▄▀▀ ▀▀▀█▀▄ ▄█▀▄█▀▀▀██▄▄
    ▀▀▀▄█ ▀ █▄█▄▀█▄▄▀▄▄██▄█ ▄▄█ ▀ █▄▄▄ ▀█▄▀▀ ▀█▀▄█▀██ ▀ █ ▄ █
    ▄▀  ▀█▀█▀▀█▄   ▀█▄▄▀█ █▄▄▀▀█▀█▀ ▄ ▄ █▀▀█▄▄ ▀▄▄██▀██▀▀▀██
    ▄█▄▀█▄▀▀  ▀▄▀ ▄ ▄ ▄▀ ▀ ▀█  █▀ █ ▄█▀▀ █ ▄▄█▄ ▄    █  ▀▀▄▀
    ▀█ █▀ ▀▀▄█▄▀▄   ▄▀▀▄▀▀▀▀█▀▄▀█ ▀ ▄█▀█ ▀▀▀▄▀▄███▀█▄ ▄  ▄▄▀▀
    ▀ ██▄▀▀▄ ▀█▄▄█▄█ ▄▀▄██ ▀▄ ▄▀▄▀█ ▄█  ▀▀▀█  █ ▄█▀ ▀▀█▄▀ ▄▄▄
    █▄█▀█▄▀██▄▄ ▀█▀▀▄▀  █▀▀ █▄▄▀█▀▀▀█ █   ▀█▄█▄   █▄█▀▄▄▀██
     ▄▄█  ▀▀▄▀▄▄▀ ▀▄ ▄▄█▀█ ▄▄▀█▄▀ █▄ █▀ █▀▀▄▄▄█▀ █▀ █▄▄ ▀▀▄ ▄
     ▀    ▀▀█▀▀█ ▄   ███ █▄▄█▀▀█▀▄▀▄ ▀▀▀▀ ▀█▄ ▄▄▄█▀▄▄▄▄ ▀▀▄█
    ▀▄██▀▀▀▄▄▄█▄███▄▀ ██ ▀▀▄▄▀▀▀▀▄█▄  ▀██▄▀▄▄▀█▄ █  ▀▄▀▄▀█ ▀█
    █▄█▄▄▀▀█▀█ █▀ ▄█▄█ ▀▀▄▀▀▀█▀▄▄▄█▄▄▀▄▀▀▄▀▄▄▀▄  █▀▄█ ▄▄▀█▄▄▄
          ▀ ▄▄ ▄▄▀██▄▄▀   ▀▄▄▀█▀▀▀█ ▄▀█ █▄ ▄ ▄█▀ █ ▄█▀▀▀█▀▄▄▄
    █▀▀▀▀▀█ ▄   ▄▀ ▄█ ▀▄█▀█▄▀ █ ▀ █▄▄█ ▀█ ▀▀▄▄▄ █ ███ ▀ █▀▄▀▄
    █ ███ █ █▀██  ▀▄▄▄▄▄██▀▄▀██▀█▀█  █ ▄█▄▀  ██ ▄▄ ▀▀▀▀██▀  ▀
    █ ▀▀▀ █ ▀  ▀ ▀▀ ▄▀▄▄▀▄▀▄ ▄▄█ ▀█ ▄▄▀ ▄ █ ▄▀▄███▀▀▀▀▀▄▄▄█
    ▀▀▀▀▀▀▀ ▀▀▀ ▀▀▀▀ ▀▀▀ ▀▀▀   ▀▀     ▀ ▀▀ ▀  ▀  ▀ ▀ ▀▀▀   ▀

Zur Erläuterung: Die erste konfigurierte SD-Karte beinhaltet alle Dateien eines Ordners, perfekt für Musikalben oder ein Hörspiel mit mehreren Dateien. Die zweite ein einzelnen Lied. Die dritte fasst zwei Lieder zusammen auf eine Karte.

:red_question_mark: Warum so ein Tool?

Klar, man kann MP3s in die numerierten Ordner der SD-Karte legen und dann die RFID-Karten einzeln im richtigen Modus anlernen über das Admin-Menü, aber mir persönlich war das schon beim zweiten Mal zu nervig und v.a. zu fehlerträchtig. Hatte ich den Ordner nun im Modus „Album“ oder „Hörspiel“ konfiguriert? Welche 10 einzelnen MP3s hatte ich nochmal in diesem Ordner abgelegt? Ich möchte das an einer Stelle sehen können!

:red_question_mark: Warum nicht das Exceltool oder andere?

Ganz einfach: ich habe privat kein Excel und ich möchte es auch nicht nutzen. Außerdem bin ich ein Freund von maschinenlesbaren Dateien, die ich etwa auch über Git versionieren kann.

Es gibt auch weitere Tools, aber die waren zum Zeitpunkt der Erstellung entweder stark veraltet und nicht gepflegt, können nicht das, was ich möchte, oder laufen nur auf einem Betriebssystem oder mit kostenpflichtiger, nicht-Open-Source-Software. Außerdem hatte ich Lust, mich selbst der Herausforderung zu stellen :wink: .

:red_question_mark: Aus was besteht der Tonuino Cards Manager?

Es ist eine Python-Anwendung, die prinzipiell unter Windows, macOS und Linux lauffähig sein sollte, wobei ich es selbst nur auf Linux intensiv getestet habe. Es kann als Paket installiert werden und setzt nur eine aktuelle Python-Version sowie ein Paketmanager wie pip voraus.

Außerdem ist es selbstverständlich Open Source, kann also frei verwendet, geteilt und verändert werden.


Wünsche, Anregungen, Probleme?

:backhand_index_pointing_right: Lasst mich gerne wissen, wie ihr das Werkzeug findet und was euch fehlt. Dazu gerne ein Issue erstellen, eventuell habe ich es ja schon auf die Wunschliste gesetzt.

3 „Gefällt mir“

Genial. Das ist ja die absolute Traumlösung (zumindest für mich). Tausend Dank für Deine Arbeit, und dass du es hier mit uns teilst!

Ich hatte mein Tonuino-Projekt etwas bei Seite gelegt, weil ich große Probleme mit der Softwareseite hatte. Unter anderem die SD-Karten-Geschichte war unendlich nervig. Damit hätte ich ein Problem weniger, das macht mir wieder Lust :slight_smile:

1 „Gefällt mir“

Oh wow, danke für das schnelle und positive Feedback! Lass mich gerne wissen, ob es auch in der Praxis hilft. Bei Fehlern und Wünschen gerne hier oder noch lieber auf GitHub schreiben :slight_smile:

1 „Gefällt mir“

Mega, vielen Dank - das Teil ist genau nach meinem Geschmack

1 „Gefällt mir“

Ein wirklich tolles Tool. Ich habe es heute mal ausprobiert, dabe sind mir ein paar Dinge aufgefallen:

Das Tool lässt den Dateinamen dran, es schreibt nur die Nummer davor. Damik kommen nicht alle Player klar. Ich muss mal ausprobieren ob mein Player das kann, das Tool das ich bisher verwende macht nur Zahlen als Dateinamen. Vielleicht könnte das eine Configoption werden, die man oben in der yaml Datei angeben kann.

Das Tool kümmert sich nicht um die mp3 und advert Ordner. Das fände ich noch eine tolle Ergänzung, wenn ich oben in der yaml Datei die Pfade zu dem mp3 bzw. Advert Ordner angeben könnte und das Tool diese Ordner auch mit auf die SD-Karte schreibt.

Ich habe zum Test eine yaml Datei für 9 Ordner erstellt. Das Tool kopiert und benennt die Dateien wunderbar und erstellt mir dann 3 Barcodes für die 9 Karten, es schreibt an den letzten Barcode dann nur Karten 9-12. :wink:. Kleinigkeit, hat mich aber kurz verwirrt.

Vielen Dank für das Tool, mir gefällt es auch so schon wirklich gut!

1 „Gefällt mir“

Hast du dafür eine Quelle? Ich habe einen AIO Plus und dort geht es ohne Probleme. Gerne kann ich das aber anpassbar machen, wenn ich weiß, welche Anforderungen da maßgeblich sind.

Das ist eine coole Idee! Habe ich direkt als Issue übernommen.

Also prinzipiell erstellt das Tool einen QR-Code für jeweils maximal 4 Karten. Mit dem Tonuino NFC Tools kann die dann im Batch-Prozess abarbeiten. In diesem Issue formulierte ich bereits den Wunsch, das konfigurierbar zu machen.

Oder geht es dir darum, dass „9-12“ geschrieben wird, obwohl es nur 9 Karten insgesamt sind? Das wäre in der Tat ein Bug, aber bitte bestätige doch, dass du tatsächlich nur 9 Karten konfiguriert hast, denn in dem Tools kannst du ja deine 9 Ordner durchaus auf 12 Karten mappen.

Konfiguration von Karten funkioniert nicht - #21 von Gute_Laune ist ein Beispiel von einem Player der das Problem hat. Es gibt halt viele unterschiedliche Chips auf den DFPlayern. Insgesamt ist das Problem aber eher selten, die Sprachansagen enthalten teilweise ja auch weitere Zeichen nach der dreistelligen Nummer und trotzdem sind Berichte über Problem sehr selten.

1 „Gefällt mir“

Danke für den Hinweis. Ich habe ein Issue erstellt und freue mich natürlich auch über Pull Requests, wenn jemand mag :slight_smile:

Ich hatte das z.B. hier gelesen:
Befüllen der SD-Karte

Das Tool, das ich bisher nutze hat einfach nur Zahlen als Dateinamen verwendet. Ich weiß gar nicht wie mein Player auf längere Dateinamen reagiert. Muss ich bei Gelegenheit mal testen.

Super :slightly_smiling_face:

Mit den QR-Codes war ich kurz verwirrt, warum ich Codes für 12 Karten bekomme wenn ich doch nur 9 definiert habe. Es war aber nur die Überschrift, die QR-Codes waren richtig und es waren auch nur 9 Karten (verteilt auf 3 QR-Codes)