Wenn es nur um das Deaktivieren von Play / Pause geht, wenn etwas abgespielt wird:
aus
if (pauseButton.wasReleased()) {
if (activeModifier != NULL)
if (activeModifier->handlePause() == true)
return;
if (ignorePauseButton == false)
if (isPlaying()) {
mp3.pause();
setstandbyTimer();
}
else if (knownCard) {
mp3.start();
disablestandbyTimer();
}
ignorePauseButton = false;
musst du folgendes auskommentieren / löschen:
if (pauseButton.wasReleased()) {
if (activeModifier != NULL)
if (activeModifier->handlePause() == true)
return;
if (ignorePauseButton == false)
/*
if (isPlaying()) {
mp3.pause();
setstandbyTimer();
}
else if (knownCard) {
mp3.start();
disablestandbyTimer();
}
*/
ignorePauseButton = false;
Langes Drücken bleibt vorhanden. Da würde der Shortcut gestartet werden bzw. eine Titelnummeransage kommen (was ebenfalls auskommentiert werden könnte).
Diese Abfragen sind dafür da, dass nach einem langem Druck auf Play nicht auchnoch das ausgeführt wird, was bei einem kurzem Druck passieren soll.
Das Pausieren beim Druck auf Play ist hier
Die Zeilen 978-985 kannst du also auskommentieren. Um die Ansage der Tracknummer ebenfalls zu blockieren würde ich die Zeile 1004 mp3.playAdvertisement(advertTrack); auch auskommentieren.
Habe es soeben probiert, Pause ist jetzt tatsächlich deaktiviert. Allerdings ist jetzt auch die Möglichkeit verschwunden den Track der zuvor mit einer RFID Karte gestartet wurde mit der Play-Taste erneut zu starten.
Die Shortcut-Funktion (Play 2 Sekunden drücken) funktioniert nur einmal, erneutes Drücken hat keinen Effekt. Erst nach einer Stromunterbrechung reagiert der Shortcut wieder normal.
Stimmt. Die Versuche ohne RFID bzw. nur mit dem DFPlayer Mini brachten aber noch keinen Erfolg. Plan B ist momentan einfach zum Start einmal mit einer Karte das System zu „initialisieren“ und fortan spielt die PLAY Taste das Stück immer wieder ab.
Mein Wunsch wäre dann eine KITA Funktion. Eine Karte wählt eine mp3 Datei, Kinder können nur PLAY drücken und warten bis zum Ende abgespielt wurde. Zwischendurch PLAY drücken darf nicht unterbrechen…
Es gibt die Modifikationskarte KITA. Da wird jedoch der Play-Taster wohl noch akzeptiert (vor und zurück jedoch nicht). Du brauchst in dem Fall also eine Mischung aus KITA und Krabblermodus.
Der KITA Modus ist jetzt zwar eingestellt, aber es bleiben die alten Probleme.
Mit dem Mod
/*
if (isPlaying()) {
mp3.pause();
setstandbyTimer();
}
else if (knownCard) {
mp3.start();
disablestandbyTimer();
}
*/
kann ich die PLAY Taste nur einmal nutzen, dann ist Schluss - keine Reaktion mehr.
Ohne den MOD kann ich die Taste zwar nutzen aber, erneutes Drücken pausiert den Track.
Ich lösche jetzt erstmal alle Einstellungen und berichte später…
Wenn du den Kita-Modus nutzt, dann brauchst du die Änderung nicht mehr.
Nimm am Besten nochmals die original-SW und nimm nur die Änderung am KITA-Modus vor.
Irgendwie funktionieren alle Modifizierungen nicht oder nur teilweise. Ich denke, das Problem liegt darin, das während der Wiedergabe auf Eingaben per RFID oder Taste gewartet wird bzw. reagiert werden kann. Der Code müsste so umgestellt werden, das Abfragen erst nach Ende des Tracks wieder abgefragt wird…
Also ohne Arduino und nur das DFPlayer-Modul mit Transistor und zwei Widerständen? Okay, wäre für meine Anwendung eine schöne Lösung. Ich nehme an, Busy sperrt über den Transistor den S1 Taster solange der Track läuft. Ich werde die Teile jetzt bestellen und dann berichten.
Vielen Dank an euch alle für die Lösungsvorschläge - tolles Forum!
Arduino muss den Transistor ja irgendwie steuern. Denn mittlerweile soll ja wieder ein Tonuino her (eine Karte soll ein Lied abspielen). Oder doch nicht?