Marco's Affenbox Fork

Ok, da hatte ichvwohl einen üblen Denkfehler…
Hatte folgendes jeweils ergänzt: „, 0, true“…
Ich werde deinen Code mal draufspielen und probieren. Melde mich dazu dann nochmal die Tage.

Vielen Dank für deine Mühe vorab.

Also, jetzt hatte ich mal etwas Zeit zum Testen…

Die funktionierende Wahrheit ist eine Mischung aus beiden Ideen :slight_smile:

Momentan sieht es so bei mir aus und funktioniert:

//Von (special), Bis (special2) speichern
      theFolder->special = voiceMenu(mp3.getFolderTrackCount(theFolder->folder), 321, 0,
                                     true, theFolder->folder, 0, true);
      theFolder->special2 = voiceMenu(mp3.getFolderTrackCount(theFolder->folder), 322, 0,
                                      true, theFolder->folder, theFolder->special, true);

Wenn ich das richtig verstehe, dann ist „special“ der Start-Track und „special2“ der End-Track.

Meine Varianten waren jetzt:
special = , 0, true
special2 = , 0, true
= Fehlermeldung

special = , true
special2 = , true
= keine (gewünschte) Veränderung in der Steuerung

special = , 0, true
special2 = „nix“
= Start-Track kann 10erweise geskipt werden, End-Track aber nicht

special = , 0, true
special2 = , true
= Start-Track kann 10erweise geskipt werden, sowie auch der End-Track :slight_smile: :slight_smile: :slight_smile:

Danke auf jeden Fall für den Tipp und die Mühe! Jetzt tun mir die Finger nicht mehr so weh vom ständigen Drücken…

Eins ist mir bei den vielen Versuchen aber aufgefallen, was sowohl in der Ur-Version, als auch in dem von mir abgeänderten Sketch auftritt:

Im Modus „Hörbuch von bis“ wird der Fortschritt der einzelnen Dateien auf die RFID Karte gespeichert, so wie es sein soll. Gelange ich aber an den letzten Track und drücke nochmal auf „weiter“ (wo dann aber kein Track mehr folgt), dann geht der Fortschritt verloren und die Karte beginnt beim erneuten Auflegen von vorne.

Ist das bekannt oder hab ich mir jetzt tatsächlich etwas zerschossen?

Super, dass das mit der Anpassung geklappt hat.

Das ist vermutlich Absicht. Nachdem der letzte Track gespielt wurde, wird die Wiedergabe beendet und beim nächsten mal geht es von vorne los. Was hattest du denn erwartet was passiert wenn du den letzten Track überspringst?

Ich glaube der gewünschte Effekt wäre, dass das Hörbuch bei Titel 1 beginnt nach Beendigung. Bei dem TonUino unseres kleinen muss ich wenn das Hörbuch zu Ende ist die Karte weg und wieder auflegen damit er von vorn beginnt. Play taste oder next hat da keine Auswirkung.

Für unseren Erwachsenen TonUino hab ich daher die Always Queue von @Thomas-Lehnert mit einer änderung der Modifikation des track wiederholen, dass der komplette Ordner widerholt wird in Verwendung.

Stimmt soweit @ClausiusMaximus und @Gute_Laune
Mein Problem ist nur folgendes Szenario:
Kind will schnell zum Ende gelangen und skipt die Tracks vor. Jeder Track wird als Fortschritt aufcder Karte gespeichert.
Gelangt man an den letzten Track, dann wird auch dieser Fortschritt gespeichert.
Wenn man jetzt aber beim letzten Track nochmal „vor“ drückt, bleibt dies logischerweise ohne Funktion, da ja danach nichts mehr kommt. Gleichzeitig wird aber auch der Fortschritt überschrieben und die Karte beginnt beim erneuten Auflegen wieder von vorn.
Sind jetzt Luxusprobleme, die den Kids während dem Hörspiel vermutlich selbst nicht auffallen…

Noch ne Sache zu dem „Hörspiel von bis“:
Wenn man die letzte Datei gehört hat stoppt der Tonuino. Soweit so gut. Nimmt man dann die Karte weg und legt sie neu auf wird immer wieder der letzte Track gespielt. Erst nach einem Neustart der Box beginnt dann das Hörspiel wieder von vorn.

Ist das bei euch auch so?

Hallo nochmal,

neues Projekt, neues Glück:

ich plane eine Box mit Affenbox-Fork, und als (für mich) Spezial-Einbau Rotary Encoder für Laut-Leiser und bin nun beim Lesen darauf gestoßen, dass ich die Tastenbelegung auch so hinkriegen könnte
(ich nutze die alte AIO-Platine):

1 Button für ausschließlich an/aus, bei Verwendung von #define buttonPower A0;
2 Buttons für vor/zurück,
Der Rotary Encoder für laut/leiser; und der Taster des Rotary Encoders für Pause.

Ich würde mich sehr freuen, wenn ich Hilfe beim Verkabeln bekommen könnte.
Ich wollte mich an diesem Bild orientieren:

Was ich nun noch fragen wollte, ist, ob ich dann die beiden Buttons für vor/zurück an „V-“ und „V+“ anschließen muss? Denn die anderen sind ja durch den RotaryEncoder belegt.
Und ist dann auch wieder was in der Configuration.h zu ändern?

Außerdem habe ich noch nicht verstanden, wo und wie ich dann den Taster des RotaryEncoders als Pausebutton anschließe - am Rotary Encoder ist ja nur noch „SW“ frei, wo müsste das denn dann hin?

Das werd ich testen, sobald meine Box fertig ist, da ich mir diesen Anwendungsfall bei meiner Tochter auch gut vorstellen kann :- )

Ich bin mir Grade nicht ganz sicher, aber

sw
müsste glaub ich an
pbp

angeschlossen werden
Damit betätigst du die Play taste

und wenn du die vor und zurück Tasten an V+ und V- anschließen willst, dann musst du denke ich die Tasten für Lautstärke und Tracks tauschen. So wie du es oben in der Zeichnung hast würdest du mit dem Encoder vor und
zurück spulen.

Haben herausgefunden, dass man auch nach Ende der Geschichte einfach eine andere Karte auflegt. Die „resettet“ quasi dann ebenfalls die vorherige Karte.

Funktioniert der Fork mit 3x3 Board und RFID Leser? Oder dann eher den Always queue?

Danke für die Hilfe.

Bei mir hat es nun so funktioniert, wie von Marco direkt beschrieben:

" Und es ist eine neue Funktion dazu gekommen.
Es gibt nun die Möglichkeit Pause und Shut Down zu trennen. Dazu gibt es das neue
#define buttonPower A0
Wenn ihr das aktiviert, dann könnt ihr den eigentlichen Pausebutteon an der AiO nur zum Ein-/Ausschalten verwenden. Pause kann man dann z.B. auf WS(D6) am Button Board legen
#define buttonPause 6"

Heute hab ich geschafft herauszufinden, wo dieser W6(D6) Button ist, nämlich direkt am mitgelieferten ButtonAdapter der AiO, man muss nur die Verbindung festlöten.

Und die Zeichnung oben hat auch gestimmt, die war auch direkt von Marco, das ist im Code scheinbar auch so definiert, auch wenn die Bezeichnungen dann erstmal falschrum erscheinen.

Bin aber jetzt sehr froh, einen separaten PowerButton, einen Drehknopf für Laut-Leiser und Pause zu haben. Sehr schön!

@Bullterrier: danke, das ist eine gute Lösung!

@pivo: ich hab den Affenbox Fork mit 3x3 Board nicht hinbekommen, weiß aber noch nicht woran es lag.
Jetzt im Nachhinein glaub ich, es könnte an mangelnden Bibliotheken gelegen haben, die ich schlicht vergessen habe zu installieren, aber testen kann ich es grad nich weil die damalige Box grad in der Kita im Einsatz ist - mit dem Always queue - Fork.

Danke für die Antwort. Mit dem Always Queue Fork habe ich das 3x3 auch bereits zum Laufen gebracht (mit Hilfe natürlich, ist meine erste TonUino :stuck_out_tongue: ).

Jetzt habe ich doch noch mal eine Frage speziell zu der Modifikation „Sleeptimer“.

Wir konnten jetzt lange und ausgiebig testen und haben folgendes „Problem“:

Wenn man den Sleeptimer aktiviert (man hört den Aktivierungs-Sound), dann läuft die Zeit ab und die Box schaltet sich sogar ganz aus (springt also nicht um in den Standbymodus). Soweit so gut…

Egal ob ich Sleeptimer über Shortcut oder NFC aktiviere; es zickt danach immer die Karte zum Abspielen herum. Sprich: Ohne vorherige Modifikation spielen die MP3s ohne Probleme beim Auflegen der Karte und werden unterbrochen, wenn man die Karte wieder entfernt.
Ist aber der Sleeptimer aktiviert, dann „frisst“ der Tonuino die nachfolgenden Karten sehr schlecht. Heißt: Man muss mehrmals auflegen, die Karte drehen und wenden, bis es dann mal funktioniert.
Wenn es dann endlich funktioniert, dann wird Aktivierungston des Sleeptimers nochmal abgespielt… (keine Ahnung, ob das wichtig ist…)

Könnte das mal jemand testen, ob es bei ihm genau so ist?

Ich schieb noch einen hinterher:
(Suche schon den ganzen Tag, kann hier aber nichts passendes finden; vermutlich fehlen mir die passenden Suchbegriffe)
Ich würde gerne den Hörspielmodus gerne wieder automatisch von vorne beginnen, wenn die letzte Datei im Ordner gespielt wurde. Alternativ könnte man ja auch den Queue des Partymodus so modifizieren, dass er die Dateien der Reihe nach spielt…?! Dort ist ja implementiert, dass der Ordner wieder von vorn beginnt und die Wiedergabe somit nie stoppt…

Der Hörspielmodus spielt doch immer nur eine Datei. Meinst du den Hörbuchmodus?

Da bin ich jetzt tatsächlich überfragt. Ich meine das, was den ordner komplett der Reihe nach wiedergibt und nach dem letzten Track stoppt.
Mein Vorhaben wäre dann einfach wieder beim ersten Track anzufangen…

Also grundsätzlich kann man sowas machen (wurde zum Beispiel hier gemacht, allerdings nicht für den Affenboxfork). Um dir genau zu sagen, wo du den Code anpassen musst, müsste man halt wissen, welchen Modus du benutzt. Sowohl der Hörbuch als auch der Albummodus spielen ja den Ordner von vorn nach hinten durch.

Prinzipiell wäre es mir dann wurscht welchen Modus ich nutzen müsste, damit mein Vorhaben gelingt.

Mein Gedanke ist ähnlich wie in deinem Link:
Wird die letzte Datei im Ordner vor dem Ablaufen des Sleeptimers erreicht sollte es wieder von vorn losgehen…

Der Albummodus spielt der Reihe nach ab, speichert aber den Fortschritt nicht. Heißt, wenn der Tonuino aus war und die Karte aufgelegt wird beginnt die Wiedergabe vom Anfang an. Beim Hörbuchmodus wird auch vom Anfang an in der Reihenfolge abgespielt , aber der Fortschritt gespeichert. Bei erneutem Auflegen der Karte wird ab dem letzt gehörten Tracks wiedergegeben.