Marco's Affenbox Fork

Das neue Release ist online, es haben sich nur die mp3s geändert.

Danke für die Schnelle Abhilfe. Jetzt funktioniert das Admin-Menü auch wieder ordentlich. :slight_smile:

Eine Sache ist mir bei der „Fading LED“ noch aufgefallen. Wenn die Pause endet, wird die aktuelle Helligkeit übernommen. Im Zweifel ist sie dann beim Abspielen aus oder sehr dunkel.

Ich hab mit meinen begrenzten Fähigkeiten mal ein bisschen in dem Code gepfuscht. Damit ist die LED beim Abspielen zumindest hell. Die Geschwindigkeit und die maximale Helligkeit hab ich für meine Box reduziert.

//////////////////////////////////////////////////////////////////////////
#if defined FADING_LED
// fade in/out status led while beeing idle, during playback set to full brightness
void fadeStatusLed(bool isPlaying)
{
  static bool statusLedDirection = false;
  static int16_t statusLedValue = 50;
  static unsigned long statusLedOldMillis;
  static int16_t statusLedMax = 50;
  static int16_t statusLedDeltaValue = 10;

  if (isPlaying)
  {
    statusLedValue = statusLedMax;
  }
  else
  {
    if ((millis() - statusLedOldMillis) >= 100)
    {
      statusLedOldMillis = millis();
      if (statusLedDirection)
      {
       statusLedValue += statusLedDeltaValue;
       if (statusLedValue >= statusLedMax)
        {
         statusLedValue = statusLedMax;
         statusLedDirection = !statusLedDirection;
        }
      }
      else
      {
        statusLedValue -= statusLedDeltaValue;
        if (statusLedValue <= 0)
        {
         statusLedValue = 0;
         statusLedDirection = !statusLedDirection;
        }
      }
    }
  }
    analogWrite(POWER_ON_LED_PIN, statusLedValue);
}
#endif
//////////////////////////////////////////////////////////////////////////
1 „Gefällt mir“

Ich hab mit der aktuellen Version (2.0) nochmal die Kombination aus „Pause wenn Karte weg“ und Stopptanz ausprobiert. In manchen Fällen funktioniert es und in manchen nicht.

Fall 1:
Tonuino starten → Stopptanz-Karte auflegen → Musikkarte auflegen
Soweit funktioniert es ohne Probleme.

"Serieller Monitor Fall 1
Affenbox by Marco Schulz
forked from TonUINO by Thorsten Voß; licensed under GNU/GPL.
Information and contribution https://tonuino.de.

Firmware Version: 0x92 = v2.0
Version 3
Max Vol 25
Min Vol 1
Init Vol 18
EQ 1
Locked 0
Sleep Timer 5
Inverted Buttons 1
Stop when card away 1
Admin Menu locked 0
User Age 0
Saved Modifier 0
SD online
waitForTrackToFinish
waitForTrackToStart
track startet
nxt track
abort
nxt track
abort
track finish
set stby timer
milis 304560
ReadCardSerial fin
Card UID 
 CA  2B  F5  3F 
PICC type MIFARE 1KB
Authenticating Classic using key A...
 FF  FF  FF  FF  FF  FF 
0
Read block4
data on card 
folder 0
mode 2
special 0
special2 7
special3 0
special4 0
set modifier: 2
waitForTrackToFinish
waitForTrackToStart
track startet
nxt track
abort
nxt track
abort
track finish
FreezeDance
FreezeDance next stop 7 s
read card err
ReadCardSerial fin
Card UID 
 AB  1C  76  D4 
PICC type MIFARE 1KB
Authenticating Classic using key A...
 FF  FF  FF  FF  FF  FF 
0
Read block4
data on card 
folder 11
mode 4
special 7
special2 36
special3 0
special4 0
11
11
new tag
disable stby timer
Single
13 mp3 in folder 11
play mp3 7
waitForTrackToStart
track startet
FreezeDance freeze
FreezeDance next stop 19 s
FreezeDance freeze
FreezeDance next stop 15 s

Fall 2:
Fall1 → Musikkarte wegnehmen → Stopptanz-Karte auflegen (zum Deaktivieren)
Der TonUino hängt sich komplett auf und ist nur durch den Reset-Schalter wieder nutzbar. Das gleiche hab ich auch mit einer neu erstellten Modifikations-Karte ausprobiert, um eine defekte Karte auszuschließen.

Serieller Monitor Fall 2
FreezeDance freeze
FreezeDance next stop 15 s
tag gone
pause
set stby timer
milis 352300
ReadCardSerial fin
Card UID 
 CA  2B  F5  3F 
PICC type MIFARE 1KB
Authenticating Classic using key A...
 FF  FF  FF  FF  FF  FF 
0
Read block4
data on card 
fold

Fall 3:
TonUino starten → Musikkarte auflegen → Musikkarte wegnehmen → Stopptanz-Karte auflegen → Musikkarte wieder auflegen
Nach dem erneuten Auflegen der Musikkarte wird der (nur) Sound zur Bestätigung der Modifikationskarte abgespielt.

Serieller Monitor Fall 3
Affenbox by Marco Schulz
forked from TonUINO by Thorsten Voß; licensed under GNU/GPL.
Information and contribution https://tonuino.de.

Firmware Version: 0x92 = v2.0
Version 3
Max Vol 25
Min Vol 1
Init Vol 18
EQ 1
Locked 0
Sleep Timer 5
Inverted Buttons 1
Stop when card away 1
Admin Menu locked 0
User Age 0
Saved Modifier 0
SD online
waitForTrackToFinish
waitForTrackToStart
track startet
nxt track
abort
nxt track
abort
track finish
set stby timer
milis 304561
ReadCardSerial fin
Card UID 
 AB  1C  76  D4 
PICC type MIFARE 1KB
Authenticating Classic using key A...
 FF  FF  FF  FF  FF  FF 
0
Read block4
data on card 
folder 11
mode 4
special 7
special2 36
special3 0
special4 0
11
11
new tag
disable stby timer
Single
13 mp3 in folder 11
play mp3 7
waitForTrackToStart
track startet
tag gone
pause
set stby timer
milis 310363
ReadCardSerial fin
Card UID 
 CA  2B  F5  3F 
PICC type MIFARE 1KB
Authenticating Classic using key A...
 FF  FF  FF  FF  FF  FF 
0
Read block4
data on card 
folder 0
mode 2
special 0
special2 7
special3 0
special4 0
set modifier: 2
waitForTrackToFinish
waitForTrackToStart
track startet
nxt track
abort
nxt track
abort
track finish
FreezeDance
FreezeDance next stop 17 s
read card err
ReadCardSerial fin
Card UID 
 AB  1C  76  D4 
PICC type MIFARE 1KB
Authenticating Classic using key A...
 FF  FF  FF  FF  FF  FF 
0
Read block4
data on card 
folder 11
mode 4
special 7
special2 36
special3 0
special4 0
11
11
same tag
play
disable stby timer
nxt track
disable stby timer
no nxt track
set stby timer
milis 323926
nxt track
abort
FreezeDance freeze
FreezeDance next stop 13 s
FreezeDance freeze
FreezeDance next stop 10 s

Aber ganz wichtig: Meine Tochter ist glücklich, weil der Stopptanz funktioniert! :slight_smile: Papa muss nur die richtige Reihenfolge einhalten und die ganze Box ausschalten um den Stopptanz wieder zu deaktivieren.

1 „Gefällt mir“

mit den MP3s hat alles geklappt, super vielen Lieben Dank.

ich hab allerdings das Problem , wenn ich ein Album im Albummodus abgespielt hab und der letzte Track zuende gespielt hat scheint der Standbytimer nicht zu greifen.

Danke für die genaue analys, ich werde mir den Fehler mit dem Stopptanz ansehen.

Die Fading LED ist auch noch so gut wie nicht getestet bzw optimiert.

Aber schon mal sehr gut das die mp3s jetzt passen

Werde ich mir auch ansehen.

hab mal in den serielen Monitor geguckt. da wird angezeigt, dass im 5. Ordner 9 Tracks sind obwohl eigentlich nur 8 vorhanden sind und im 2. Ordner werden nur 8 angezeigt obwohl es 9 sind

Was für einen Player hast du denn?
Das klingt sehr wie das hier beschriebene Problem

Auf dem Player steht WH 247A ich hab das mit der 000 Datei probiert vorher eine andere Karte aufgelegt gehabt. Es wird im seriellen Monitor zwar angezeigt, dass 9 Dateien im Ordner sind (ich hab am Code noch nichts geändert gehabt) aber am Ende des Albums wird zwar nichts mehr abgespielt leider wird der Standby Timer nicht aktiviert

Das Problem bei den anderen Playern war, dass in der Ausgabe immer die Anzahl der Tracks von dem Ordner stand, der vorher abgespielt wurde.
Anstatt die Anzahl der Tracks von dem Ordner anzuzeigen, der jetzt gespielt werden soll.

Wenn der Player meldet, dass 9 Tracks in dem Ordner gibt, geht er nach 8 natürlich nicht in den Standby, sondern versucht Track 9 abzuspielen, den es ja gar nicht gibt. Andersherum spielt er Track 9 nicht, wenn er vorher nur 8 gezählt hat.

Deshalb ist es so wichtig, dass die Anzahl der Tracks zu der tatsächlichen Anzahl auf der SD-Karte passt. Sonst kommt es zu verschiedenen weiteren Problemen.

Das mit der 000 Datei kann übrigens nur mit einer Softwareänderung zusammen funktionieren. Die zusätzliche Datei muss ja entsprechend berücksichtigt werden. Allerdings hilft die dort präsentierte Lösung aich nur, wenn genau das dort beschriebene Problem vorliegt.

Ich bin mir nicht ganz sicher aber ich glaube auf einer anderen Box wo ich ich die Dev. Version drauf hatte gab es das Problem nicht.
Ich muss heute Abend Mal Schauen

20:01:09.602 -> Affenbox by Marco Schulz
20:01:09.602 -> forked from TonUINO by Thorsten Voß; licensed under GNU/GPL.
20:01:09.602 -> Information and contribution https://tonuino.de.
20:01:09.602 -> 
20:01:10.162 -> Firmware Version: 0x92 = v2.0
20:01:10.162 -> Version 3
20:01:10.162 -> Max Vol 20
20:01:10.162 -> Min Vol 1
20:01:10.162 -> Init Vol 4
20:01:10.162 -> EQ 1
20:01:10.162 -> Locked 0
20:01:10.162 -> Sleep Timer 1
20:01:10.209 -> Inverted Buttons 0
20:01:10.209 -> Stop when card away 1
20:01:10.209 -> Admin Menu locked 0
20:01:10.209 -> User Age 0
20:01:10.209 -> Saved Modifier 0
20:01:12.344 -> waitForTrackToFinish
20:01:12.344 -> waitForTrackToStart
20:01:12.765 -> track startet
20:01:13.701 -> nxt track
20:01:13.701 -> abort
20:01:13.748 -> track finish
20:01:13.748 -> set stby timer
20:01:13.748 -> milis 64140
20:01:13.748 -> ReadCardSerial fin
20:01:13.748 -> Card UID 
20:01:13.748 ->  23  14  7E  16 
20:01:13.748 -> PICC type MIFARE 1KB
20:01:13.748 -> Authenticating Classic using key A...
20:01:13.748 ->  FF  FF  FF  FF  FF  FF 
20:01:13.748 -> 0
20:01:13.748 -> Read block4
20:01:13.748 -> data on card 
20:01:13.748 -> folder 5
20:01:13.748 -> mode 2
20:01:13.748 -> special 0
20:01:13.748 -> special2 0
20:01:13.748 -> special3 0
20:01:13.795 -> special4 109
20:01:13.795 -> 5
20:01:13.795 -> 5
20:01:13.795 -> new tag
20:01:13.795 -> == playFolder()
20:01:13.795 -> disable stby timer
20:01:13.795 -> kurze Pause
20:01:15.368 -> 142 Dateien & 1 Stille in Ordner 5
20:01:15.368 -> Album
20:01:15.368 -> 142 mp3 in folder 5
20:01:15.368 -> play mp3 1
20:01:15.368 -> waitForTrackToStart
20:01:15.557 -> track startet
20:01:27.490 -> nxt track
20:01:27.490 -> disable stby timer
20:01:27.490 -> track 2
20:01:28.228 -> nxt track
20:01:28.228 -> disable stby timer
20:01:28.228 -> track 3
20:01:29.194 -> nxt track
20:01:29.194 -> disable stby timer
20:01:29.194 -> track 4
20:01:29.836 -> nxt track
20:01:29.836 -> disable stby timer
20:01:29.836 -> track 5
20:01:30.897 -> nxt track
20:01:30.897 -> disable stby timer
20:01:30.897 -> track 6
20:01:32.552 -> nxt track
20:01:32.552 -> disable stby timer
20:01:32.552 -> track 7
20:01:35.675 -> nxt track
20:01:35.675 -> disable stby timer
20:01:35.675 -> track 8
20:01:37.644 -> nxt track
20:01:37.644 -> disable stby timer
20:01:37.644 -> track 9

hab mal den seriellen Monitor kopiert, wie Ihr seht wird angezeigt, dass 142 Dateien in Ordner 5 sein sollen obwohl es nur 8 sind und wenn ich die vor taste betätige springt er auf Titel 9 der gar nicht existiert und setzt keinen neuen Stand by.

habe nochmal ein bissel gebastelt, seltsam ist, dass @Gute_Laune s erwähnte anpassung GD3200B - Anzahl angezeigter Ordner erst nach 2.tem Auflegen der Karte richtig - #27 von Gute_Laune

auf der Master version funktioniert aber leider nicht auf der Beta
oO :thinking:

master und dev unterscheidennsich schon extrem voneinander.

Die master hat auch nich viele Bugs die in der dev behoben wurden.

Das Problem mit dem Standby Timer scheint allgemein zu existieren, ich werde das etwas umbauen um es zu vereinfachen und stabiler zu machen.
Am Ende des letzten Tracks sollte ein „set stby timer“ kommen sonst wurde er nicht aktiviert.

Die SW Anpassung des neuen Chips nehm ich auch mit auf mein ToDo.

Ich bin mir ziemlich sicher das ich den Stand by Timer aktiviert hab weil wenn keine Karte aufliegt wird auch im seriellen Monitor angezeigt „set stby Timer“ xD

Also, das kleine Problem mit dem Standby konnte ich lösen, hier wird im loop abgefragt ob gerade etwas gespielt wird
wenn ja → Stanby dekativieren
wenn nein → Standbytimer starten

Das mit dem Modifiern ist größer. Das betrifft jeden Modifier, beim deaktivieren. Egal ob Stopp wenn karte weg oder nicht.
Irgendwo läuft der Speicher über schätze ich. Leider ist das immer äußerst schwer zu finden.

1 „Gefällt mir“

ich kam doch schneller ans Ziel als Gedacht, das Problem hab ich gefunden, ich stelle heute noch ein neues Release ein

Das neue Release ist raus

5 „Gefällt mir“

Top Sache! Serieller Monitor sagt set Stand by Timer nach dem letzten Titel im Albummodus.


20:23:50.760 -> track 13
20:23:50.760 -> set stby timer
20:23:50.760 -> milis 74320
20:23:50.851 -> disable stby timer
20:23:54.794 -> nxt track
20:23:54.794 -> nxt track
20:23:54.794 -> abort
20:23:54.794 -> set stby timer
20:23:54.794 -> milis 78332
20:24:54.916 -> standby act
20:24:54.916 -> Shut Down
20:24:55.145 -> waitForTrackToFinish
20:24:55.145 -> waitForTrackToStart
20:24:55.423 -> track startet
20:24:56.343 -> nxt track
20:24:56.343 -> abort
20:24:56.343 -> nxt t

andere Sache, wenn das Album durch ist und ich die Karte entferne und die Selbe wieder auflege spielt der Letze Titel, gibt es da ne Möglichkeit, dass das Album von Vorne beginnt?

Ich hab bei meiner Forensuch grade kein Erfolg gehabt.

Und noch mal ein GROßES LIEBES DANKESCHÖN für die ganze Mühe und den Support @marco-117

nutzt du ein Album mit Speicher?

Aktuell ja (du meinst den Fortschritt speichern richtig ?!), aber ich bin der Meinung, dass bei meinem Probelauf gestern, mit und ohne Speicher nach Ende des Letzten Titels und entfernen und direktes auflegen der Karte wieder der letzte Titel abgespielt wird.