Lautstärke auf vollgas beim laden


#1

Habe gerade die Powerbank Intenso S10000 zum laden angeschlossen wärend Musik lief.
Kurzes knacken (ArduinoUNO abgestürzt? Versorgung über die USB Buchse),
als die Musik wieder automatisch gestartet ist war es total laut.

Wenn ich erst lade und dann den Arduino starte ist alles gut, läd und spielt.
Wenn jetzt die Powerbank vom Lader getrennt wird, stoppt die Musik ohne ein knacken zu hören.
Erneuter Start mit RFID Karte und es ist wieder voll laut.

Bricht da einfach die Spannung weg und ein Puffer Kondensator würde helfen.
Gibt es vielleicht noch eine Alternative Lösung, zB im Code, das nach dem vermuteten Absturz/Neustart sofort maxVol noch mal neu gesetzt wird im Loop()

sehe ich das richtig, das hier keine maxVolumen abgefragt wird. Aus der MasterVersion:

if (upButton.pressedFor(LONG_PRESS)) {
      Serial.println(F("Volume Up"));
      mp3.increaseVolume();
      ignoreUpButton = true;

#2

In master gibt es kein maxVolume. Und selbst in DEV begrentzt das nur den Input vom User. Es wird nicht dauernd überprüft ob die Lautstärke aus irgend einem Grund > maxVolume ist.

Zu deinem Problem, hört sich für mich so an, als wenn der Player resetet wird, der Nano aber weiter läuft. Da nur in setup() die Startlautstärke gesetzt wird (auf 15 in master) ist es vielleicht so laut weil der Player mit höherer Lautstärke reinitialisiert (womöglich mit 30). Das wäre so meine Interpretation.


#3

Danke!
An den Player habe ich nicht gedacht.
Ich schau mal ob ich die Lautstärke vom Player abfragen kann und im Loop prüfe auf maxVol.


#4

Das kann man, ist aber nicht zu empfehlen. Die Main Loop wird so oft durchlaufen, der Player wird dann regelrecht bombardiert mit seriellen Anfragen. Das wird sehr schnell sehr instabil mit allerlei Nebenwirkungen.


#5

spricht was gegen eine Abfrage alle 1-2sec.
Werde bestimmt Testen aber ich Frag auch gerne :wink:


#6

Die Frage ist ja eher warum die Lautstärke plötzlich steigt


#8

Hab jetzt folgendes gemacht.

uint8_t maxVolume = 15;
uint8_t VolumeSet;
unsigned long T1;

im SETUP()
 // DFPlayer Mini initialisieren
  mp3.begin();
  mp3.setVolume(VolumeSet=maxVolume);
  T1 = millis();**

Im LOOP()
mp3.loop();
if (millis()>T1+2000){
    mp3.setVolume(VolumeSet);
    Serial.println(F("RESET_VOLUZME_SET"));
    T1 = millis();
    }

if (upButton.pressedFor(LONG_PRESS)) {
  Serial.println(F("Volume Up"));
  mp3.increaseVolume();
  VolumeSet=mp3.getVolume();
       Serial.println(F("VolumeSET"));
      Serial.println(VolumeSet);

if (downButton.pressedFor(LONG_PRESS)) {
  Serial.println(F("Volume Down"));
  mp3.decreaseVolume();
  VolumeSet=mp3.getVolume();
      Serial.println(F("VolumeSET"));
      Serial.println(VolumeSet);

Jetzt passiert folgendes, nach dem abstecken der Powerbank.
Mit Chip starten -> Lautstärke wurde sich nicht gemerkt aber it auch nicht mehr 30 sondern ca 15

Aber an der Starttaste kommt bei einem kurzen tipen immer die Ansage “EINS”

Der Fehler ist echt doof da ich die Konsole nicht nutzen kann.
Ohne Powerbank läuft mein Code laut Konsole Richtig.


#9

Warum kannst du die Konsole nicht nutzen? Und BITTE nutze den </> Knopf wenn du Code postest. Danke.


#10

Danke für den Hinweis wegen Code einfügen.

Hänge am USB vom Arduino Uno mit der Powerbank.

Habe jetzt mal die Spannungen gemessen.
Powerbank im Betrieb 4,87V OK!!!
Laden und abspielen 4,35V
Ausstecken vom Laden beim abspielen kurzer Abriss auf 4V