Vielen Dank dir!
Wenn wir das Problem voll verstanden oder weitere Abhängigkeiten geklärt haben können wir da ja dann nochmal draufschauen…
Werde eine Rückmeldung geben, wenn ausreichend Tests durchgeführt wurden…
War die Änderung aufgrund von einem Problem oder einfach so? Wollte erstmal nicht nur reverten, weshalb ich auf diese Werte gegangen bin…
Okay, habt ihr mal versucht vor dem audio.loop() ein vTaskDelay von etwa 1ms zu setzen? Durch den internen Task ist im loop() nicht mehr viel zu tun, manchmal gar nichts und das würde anderen Tasks mehr Zeit geben.
Ja, das ist bereits der Fall. Jeden Zyklus im AudioPlayer warten wir nach dem loop() aufruf eine ms. Die Probleme mit den Unterbrechungen waren aber auch weniger auf Core 1 (wo der Audioplayer läuft) sondern vor allem auf Core 0, wo der interne Task läuft.
Aber das ist alles noch vorläufig…
Nur zur Vollständigkeit.
Ich nutze die Platine ESPuino-mini 4Layer in REV 3. Zusammen mit einem Lolin D32 pro (Li-Ion), und dem PN5180.
- Der Neopixel hat 24 LED
- kein MQTT
- Dafür an 3 PINs des Portexpander jeweils eine LED (Taster)
Ich habe immer noch die Vermutung, dass die Spannung mit verantwortlich ist.
Ich habe zumindestens alles neu kompiliert und jetzt habe ich nur einen Sprung trotz langer Verwendung provozieren können.
Ich warte mal bis der Akku noch etwas runtergenuttelt ist, dann versuche ich es noch einmal und dann werde ich mal die LEDs abschalten
Ich habe meinen ESPuino inzwischen mehrere Stunden mit dem neuesten dev-Branch und Arduino 3 in einer Schleife laufen lassen - und zumindest hier auf dem Schreibtisch mit USB-Stromversorgung gab es bislang keine Abbrüche mehr.
Vorher hatte ich das (mit der problematischen Version) auch mit CBR-MP3s getestet, hier trat der Fehler auch auf (interessanterweise wieder beim selben Song…). Nicht allerdings bei einem MP3-Webstream. Die SD-Karte würde ich dennoch tendenziell ausschließen, ist eine 16GB Class 10/U1-Karte. Sollte das Problem wieder auftreten, hätte ich noch eine U3-MicroSD hier, um ganz sicher zu gehen.
Dann wird es wohl langsam Zeit im DEV-Branch auf Arduino 3 und die neueste Audio-Bibliothek zu wechseln., es ist ja bereits Alles vorbereitet, leider bislang wenig bis null Rückmeldungen.
Ich frage mich aber warum ich das Problem überhaupt nicht nachvollziehen kann trotz gleicher Konfiguration & Hardware, wo liegt die Ursache?
Ich nehme mir vor, dev nochmal kurzfristig zu testen mit Arduino3.
Das frage ich mich auch - aber selbst bei mir ließ sich das Problem ja nicht provozieren, sondern trat immer zufällig auf. Vielleicht auch relevant: bei den Tests ist es zwei Mal passiert, dass sich der ESPuino (genauso zufällig) neugestartet hat. Das ist mir ansonsten noch nie aufgefallen. Leider war keine serielle Verbindung angeschlossen, sodass die Ursache nicht geloggt wurde. Mit Verbindung zum PC konnte ich es bislang nicht nachstellen. Eventuell doch was mit dem störrischen RFID-Leser?
Egal warum das Problem hier so war, ich würde es einfach gerne nachvollziehen & verstehen
So wie ich das sehe, sind die Aussetzer tief unten in der Audio-Library: Änderung des DMA-Buffers, DMA = Direct Memory Access = ein Speicherbereich, auf den der Prozessor für zeitkritische Anwendungen schnell zugreifen kann = bisserl magic
Der Fix, Umstieg auf Arduino 3 + aktuelle Audio-Library: Das ist ein kleinerer & unproblematischerer Schritt als von Arduino 1 auf 2. Für mich passt da alles. Aber z.B. MQTT ist erst letzte Woche dazugekommen, also gerne nochmal testen! Von meiner Seite können wir das gern updaten, das Angebot gibt es schon seit Mai 2024, muss halt auch Alles andere laufen..
Das Problem ist auch mit der Umstellung des Buffers nicht weg, allerdings ist immer noch absolut nicht nachvollziebar warum es nur bei einigen auftritt.
Habe jetzt nochmal eine andere SD-Karte und auch dort tritt es noch mit dem „Fix“ auf.
Aus meier Sicht spricht nichts gegen den Umstieg auf Arduino 3.
Das Problem ist auf beiden Ständen gleich .