Tigerbox feat. TonESP(8266)


#1

Moin Moin liebe Gemeinde,
Ich habe bisher im stillen mitgelesen, habe aber jetzt doch eine Frage, auf die ich bisher keine Antwort finde.
Hat schon jemand probiert eine tigerbox in einen tonuino umzubauen?
Die tigerbox gibt es teilweise für unter 30€ und man bekommt dafür neben dem Gehäuse auch den Lautsprecher, Akku und einen Haufen Taster.
Klingt ganz interessant oder?
Jkw

Edit: + Kopfhörer Buchse!
Die Anzahl an Buttons würde wahrscheinlich den Verfügbaren pincount überschreiten, aber das kann man ja durch einen Portexpander oder einen anderen Controller lösen


#2

In diesem Beitrag ging es schonmal um die Box. Ich denke, da wirst du fündig


#3

Thema gibt es hier schon :
Tigerbox als Gehäuse
Bitte nicht für alles nen neuen Beitrag schreiben,das wird hier sehr unübersichtlich


#4

Besten Dank. Habe ich irgendwie übersehen.
Ist echt eng …


#5

Hallo allerseits,

ich wollte dann doch mal von meinem Fortschritt mein kleinen Projekts erzählen. In dem Link oben habe ich ja einige Bilder gepostet von meinem ersten Tigerbox Umbau der eifrig genutzt wird, doch nun folgt Version 2.

Das Ziel ist letztlich ein Tonuino-Artverwandter Aufbau in einer TigerBox mit der Option die Box aus der Ferne bedienen zu können.

Das Fernbedienungs-Augenmerk liegt dabei auf

  •    Programmierung der Karten
    
  •    Starten und Stoppen von Wiedergabe (Emulierung von Karten)
    
  •    Setzen von Regeln (10min Rest Spielzeit / auto off after track)
    
  •    Abfragen vom Status (Batterie, Aktuelle Spielzeit etc)
    

Es geht bei meinem Projekt 2.0 viel mehr ums das Machen als um das Ergebnis.

Für WLAN Support gibt es ja bereits das ESP32 Projekt hier im Forum, allerdings wird das Platz-mäßig niemals in die TigerBox passen. Also habe ich meinen eigenen Spinoff gestartet. Als Controller haben ich den ESP8266 gewählt, hauptsächlich weil ich davon viele hier liegen habe und auch einiges an Erfahrung gesammelt hatte als auch wegen der geringen Größe.

Das offensichtliche Problem des geringe Pin Counts stellte sich als Vorteil heraus dazu gleich mehr.

Den DFmini Player habe ich im Design gelassen, aus selbem Grund (geringer pin count Im Vergleich zu SD-Karte) und ebenfalls per Software Serial (2 Pins) angeschlossen.

Des Weitern habe ich einen i2c port expander an den ESP angeschlossen (SCL / SDA / IRQ) und am selben Bus auch ein NFC/RFID Leser angeschlossen (PN532).

(Jetzt koennet man sagen das ESP8266 + expander wieder so gross sind wie der Arduino oder der ESP32, was auch stimmt, aber ich kann sie in getrennten Taschen der TigerBox verbauen, was sonst nicht ginge.)

Der interrupt Pin und auch der Reset vom Leser gehen dann an den port expander, genau wie das busy signal vom Player und alle 5 Buttons (der expander hat 16 IOs).

Der oben angesprochene Vorteil ist nun das ich nur dann überhaupt kommunizieren muss wenn der expander irq pin zuckt. Dann checke ich wie der Input state ist und verarbeite die Knöpfe oder rufe die Daten vom NFC Leser ab. Der mittelfristige Plan waere diesen IRQ Pin als wakeup vom ESP8266 aus dem Sleepmode zu nutzen um dann in der Zwischenzeit weniger Akkuladung zu verbrauchen.

Ich habe angefangen die originale Firmware zu erweitern bin dann allerdings schnell an die Grenzen gestoßen, z.B. möchte ich ja die Programmierung der Karten via WiFi machen und kann daher nicht auf die Karte schreiben. Somit landen nun alle settings bei mir im internen Dateisystem des esp8266 und werden von dort nach dem Neustart wieder gelesen.

Aus diesem Grund habe ich meine eigene Firmware begonnen. Bisher kann ich:

  • dfplayer ansteuern und Feedback erhalten
  • RFID/NFC Leser konfigurieren und NFC Tags einlesen und entsprechend Lieder wiedergeben
  • WiFi (hart kodiert) verbinden und per MQTT (hart kodiert) kommunizieren
    – Karten per mqtt anlegen, ändern, löschen, emulieren
    – den Speicher löschen
    – Play, Pause, next, prev via mqtt msg
  • das tonuino Setup Menü habe ich beibehalten, um auch an der Box zu konfigurieren
  • Tasten einlesen und entsprechend reagieren
  • settings (current volume etc) und Karten Datenbank im Speicher ablegen und beim Neustart laden

Es fehlt aber noch einiges z.B. der Support der lustigen weißen Karten, Feedback via mqtt und das verbauen in der Box. Diesmal möchte ich auch die originale Funktion belassen (Bluetooth, Kopfhörer, Led Licht) und nur nach Bedarf den Sound des TonESP über die aux Schnittstelle der Box starten.

Wenn ihr Interesse habt Berichte ich.
Hier noch ein Bild von aktuellen Aufbau.


Und der Link zur Firmware https://github.com/KoljaWindeler/TonESP
Jkw


#6

Hier ein kleines Update von meinem ESP Projekt.
Ich bin ueberrascht wie sinnvoll die MQTT integration war, ich habe sie ja eigentlich nur zur Kontrolle von Play/Pause etc einbauen wollen, aber man kann darueber wirklich sehr zuegig die Box steuern und z.B. Karten anlegen.

Zu dem Log file:
Links seht ihr die Ausgabe von meinem ESP (seriell) rechts oben den MQTT log inklusive der Antworten und unten die Eingaben von mir.

Die Box startet also und laedt erstmal alle bekannten Karten aus dem File, dann die Settings.
Danach werden die Geraete (port extender, nfc, mp3) gesucht. Bisher muss ich den PN532 immer 2x suchen … nicht sicher warum, daber beim 2. mal gehts zuverlaessig (vielleicht startzeit nach reset?).

Bei Sekunde 10 ist das Setup vorueber und er beginnt die Startup Karte zu spielen (“Hallo”).
Sekunde 21 zeigt dann den Interrupt durch die aufgelegt Karte. Das ist auch der Moment bei dem rechts oben die Ausgabe der gescannten Karten UUID erfolgt die ich markiert habe. Die Ausgabe zeigt die leeren Daten, da die Box die Karte noch nicht kennt {UUID, Mode, Album, Track, Userdata}.

Die UUID habe ich markiert um sie im Fenster rechts unten an die Box zu schicken.
1 (=Create/Modify Card), 69E8…(=UUID), 1 (=Mode), 1 (=Folder), 1 (=Track), 12300… (=Userdata).

Das Logfile oben wiederholt das Kommando. Die Box hat es bei Timestamp 54 empfangen, und fuegt es der Datenbank hinzu, (und laedt diese neu).

Bei 1:15 lege ich die Karte erneut auf den Scanner (da sagt er auch das es zwar die selbe Karte ist, aber das sie >3 nicht in Sicht war was ein neues Abspielen triggert). Nun ist sie aber bekannt und startet den Hoerspielmodus, Album 1, Track 1.

Ich merke hier beim schreiben das es recht aufwendig klingt, aber es geht tatsaechlich super easy :slight_smile:
Also falls nochmal jemand ein ESP oder sonstigen WiFi Spinoff bauen wird: MQTT macht zumindest ein wenig Sinn

JKW
PS: Ja mir ist bewusst das da recht viele Zugangsdaten stehen :see_no_evil:


#7

Find das echt cool, was du da mit dem ESP8266 die Beine stellst. Gut das mit der Tigerbox grenzt an Masochismus :wink: aber irgendwas is ja immer hehe.