meine Kinder lieben den TonUino, leider haben sie Probleme die Lautstärke zu verändern. Ich würde gerne die Funktion der Lauter/ Leiser Knöpfe tauschen. Sprich kurzes drücken lauter / leiser und langes drücken nächster / vorheriger Song. Ich habe bereits versucht es im Code zu drehen, jedoch bin ich eher ein Einsteiger Skript Kiddi und habe kene Ahnung von proggen. Beim kompelieren meldet er dann immer das “else” eine “{” erwartet. Könnte mir da jemand helfen?
Hi,
poste doch die entsprechenden Zeilen (am besten als Vorformatierter Text formatiert). Vielleicht kannst du dich auch mit dem Compiler einigen und ihm die geschweifte Klammer geben, wenn er drauf besteht…?
ah. hinter dem if (!ignoreUpButton) hast du zwei Zeilen, wo vorher nur eine war. Man kann auf die geschweiften Klammern verzichten, wenn danach nur eine Zeile (durch Semilolon abgeschlossen) kommt. Hier musst du Klammern einsetzen. s.https://www.arduino.cc/reference/en/language/structure/control-structure/if/
The brackets may be omitted after an if statement. If this is done, the next line (defined by the semicolon) becomes the only conditional statement.
@TheSaint, habe den alten Code durch Deinen Auschnitt-Code ersetzt ,nun kann ich jetzt mit kurzen Druck laut und leiser stellen, aber die Funktion vorwärts und zurück funktioniert nicht mehr. Dachte durch langen Druck, kann ich den nächsten Track anwählen, ist irgenwie ausser Kraft gesetzt.
Was muss ich noch ändern?
Also bei mir funktioniert das vor und zurück springen noch, jedoch gibt es einen Nachteil mit der Variante:
Beim langen drücken der Tasten springt er mehrere Tracks vorwärts, da es scheinbar “mehrmals” interpretiert wird. Daher baue ich alle Boxen (es sind 3 im Moment) auf Drehregler um. Ob dieses Verhalten in der DEV auch so ist weiß ich nicht. Mögich wäre auch das meine Taster prellen.
Ich habe das vorhin nur kurz vom Handy rein getippt, hier jetzt der Passende Code ausschnitt. Bitte nicht irritiren lassen das da nicht mp3.* steht sondern “myDFPlayer.*”, das kommt von der Portierung auf den ESP32.
if (upButton.pressedFor(LONG_PRESS)) {
//Serial.println(F("Volume Up"));
//myDFPlayer.volumeUp();
nextTrack();
ignoreUpButton = true;
delay(1000);
} else if (upButton.wasReleased()) {
if (!ignoreUpButton){
//nextTrack();
if(myDFPlayer.readVolume() <= max_Volume){
myDFPlayer.volumeUp();
}
}else{
ignoreUpButton = false;}
}
if (downButton.pressedFor(LONG_PRESS)) {
//Serial.println(F("Volume Down"));
//myDFPlayer.volumeDown();
previousTrack();
ignoreDownButton = true;
delay(1000);
} else if (downButton.wasReleased()) {
if (!ignoreDownButton)
//previousTrack();
myDFPlayer.volumeDown();
else
ignoreDownButton = false;
}
Laut der Fehlermeldung unten gibt es diese Funktion nicht in der Verwendeten Klasse. Ich habe jetzt mal in die DFMiniMp3.h geschaut die du verwendest und dort ist der Name wie folgt:
// sd:/advert/####track name
void playAdvertisement(uint16_t track)
du musst also mp3.advertise(track) durch mp3.playAdvertisement(track) ersetzen.
und Ich habe gesehen das du die Lautstärkelimitierung mit kopiert hast, das könnte dann die nächste Fehlermeldung sein falls du die Variable nicht oben im Code mit z.Bsp.: int max_Volume = 20 deklariert hast.
@Thorsten, ich würde gern die DEV-Version mit den Laustärketasten tauschen ausprobieren, habe heute morgen die neuste Version runtergeladen. Nun zu meinem Problem, wie ich ins Admin-Menü komme weiß ich aber wie speichere die neue Funktion ab. Welche Taste muss ich dazu drücken und wie komme ich aus dem Admin-Menü wieder raus?
Hallo zusammen,
ich habe aktuell meinen zweiten Tonuino fertig gestellt. Würde auch gerne die Tastenbelegung ändern.
Verstehe aber beim besten Willen nicht, wie ich in das Admin Menü komme.
Wenn ich alle Tasten gleichzeitig drücke, kommt bei mir die Ansage " O.k, ich habe den Vorgang abgebrochen"
Was mache ich falsch?