Toniebox Reverse Engineering

Beim 37C3 habe ich einen Talk mit dem Namen Toniebox Reverse Engineering gesehen und mir daraufhin auch eine Box gekauft.

Leider habe ich eine Rev. 2.1 mit einem CC3200 anstelle einer Rev. 4 mit einem ESP32 bekommen, aber das ist mir erst vor kurzem aufgefallen, als ich mich mit dem Projekt beschäftigen wollte.

Das Projekt macht es möglich, dass die Toniebox mit einer alternativen Firmware bespielt wird, sodass neben den normalen Tonies auch eigene NFC Tags als kreativ Tonies angelegt werden, für die, die Audio Dateien, dann von einem selbstgehostetem Server bezugen werden.

Schritt 1 ist ein Setup des Teddycloud Server mittels docker-compose nach dem vorgegebenem Template.
Schritt 2 ist das Aufspielen des HackieboxNG Custom Bootloader for CC3200.
Dafür benötige ich jedoch einen TC2050-IDC-NL 10-Pin No-Legs Cable with Ribbon connector um mich mit dem CC3200 zu verbinden.

Falls der Connector nicht in meinem näheren Dunstkreis ausgeliehen werden kann, erstelle ich demnächst einen Eintrag in Wunschliste und berichte dann weiter.

1 „Gefällt mir“

Wie versprochen ein kleines Tagebuch, wie ich bei meiner Toniebox vorgegangen bin.

Auf der Toniebox Reverse Engineering Website gibt es direkt einen Verweis auf “How to get started”. Dort sind zwei Ansätze beschrieben.

  1. The easy way (techless)

    You may already know creative tonies. This is the Tonies way to get your own content onto the box. We offer you an alternative way to replace all content on your Toniebox without the 90 minute or creative tonie only limit. You’ll need to remove the microSD from your Box and put it into your computer. With our software teddyBench you can edit the content on it. If you like you may also buy cheap SLIX-L Tags, assign your very own content to it with teddyBench and design your own figurines or even create them together with your children.

    If you need some more detailed steps you may check out the Ultimate Noob Guide in our forum.

  2. The complex way (tech-savy)

    If Docker, DNS, MQTT and Flash are no new words for you, you may go a step further. With the open-source server teddyCloud you can run your own toniebox cloud. This allows you to serve your own content to the box over the air and you can also download the original content from the original cloud. For that you’ll need to download and replace the certificates on the toniebox’ flash memory.

    If you want to start straight ahead and own a v4 Toniebox (so based on ESP32) you may shortcut to Teddycloud ESP32 newbie documentation in our forum. For the other box versions and more technical details, just have a look here teddyCloud.


Grundsätzlich möchte in den zweiten Ansatz umsetzen, habe während der Wartezeit auf den Adapter aber mit dem ersten Ansatz vorliebgenommen.


Zunächst soll die Toniebox aktualisiert werden. Das macht sie selbst, sobald sie mit dem WLAN verbunden ist und das kann auch ohne App eingerichtet werden:

  1. Beide Ohren drücken und halten, nach etwa 5 Sekunden leuchtet die Box blau und macht Geräusche.
  2. Weitere ~20 Sekunden die Ohren gedrückt halten, bis ein weiterer Ton zu hören ist.
  3. Die Toniebox hat nun ein eigenes WLAN aufgemacht, mit dem Namen ‚Toniebox-####‘.
  4. Mit dem Handy mit dem WLAN verbinden und die Adresse http://192.168.1.1 öffnen.
  5. Sprache auswählen und „ok“ drücken.
  6. WLAN SSID und Passwort eingeben und auf „verbinden“ drücken.
  7. Wenn alles geklappt hat, sag die Toniebox das.

Als Nächstes muss die SD-Karte zugänglich gemacht werden. Dazu die Toniebox auf den Boden drücken und mit einem Ruck nach links drehen, damit sich der Verschluss am Boden öffnet. Danach sind es nur noch drei Schrauben, bis die SD-Karte entnommen werden kann.


Nun kann die Software teddyBench (nur für Windows verfügbar) heruntergeladen werden.

With this tool you can dump existing files of the famous audio box or create custom ones.

Doch Moment, für welche NFC-Tags denn? Bisher gab es nur den original Kreativ-Tonie, der bei der Box dabei war. Weitere Tags gibt es bei RFIDfriend.com, bzw. auf der entsprechenden kleinanzeigen Seite.
Bevor diese Tags auf die Toniebox gelegt werden, sollte die ID ausgelesen werden, da die Tags durch die Toniebox in einen Privacy Mode gesetzt werden und nicht mehr ohne weiteres ausgelesen werden können.
Ich habe dazu die Android-App NFC Reader aus dem F-Droid store verwendet und die ID anschließend direkt auf die Tags geschrieben.

Dann konnte in teddyBench unter Angabe der ID eigene Inhalte auf die Box gespielt werden. Diese werden dann ins OGG/Vorbis Format konvertiert und im Ordner und unter einem Namen abgespeichert, der zu der ID vom Tag passt.

Für die Tags habe ich noch 39 mm Münzkapseln bestellt, damit diese einfacher zu handhaben sind.
Wichtig: Der Tag darf nicht direkt auf der Box liegen, sondern muss auf der Oberseite der Münzkapsel sein, damit die Box ihn erkennt.

Und ta da: es funktioniert :slight_smile:


Da es jedoch lästig ist, immer die ganze Box auseinander zu bauen, um an die SD-Karte zu kommen, gibt es die Möglichkeit ein Verlängerungskabel einzubauen.
Ich habe eine günstige Verlängerung bei 3DW gefunden.
Damit das Kabel mit der Toniebox funktioniert, muss ein Widerstand entfernt werden:

Die Verlängerung kann dann unten im Sockel montiert werden. Dazu lässt sich entweder die Batteriehalterung und der Boden bearbeiten oder eben beide Teile mit der Modifikation neu drucken.

Wenn bei der Montage nicht gut aufgepasst wird, kann das Flachbandkabel von der Verlängerung abreißen und muss dann neu angelötet werden. Am schwierigsten war es dabei, die Isolierung vom Kabel zu entfernen. Mit einem Messer habe ich beim Schaben die Litzen abgerissen und habe mich dann für ein Schleifen mit dem Glasfaserpinsel entschieden.

Bei der Öffnung der Toniebox muss die SD-Karte nun zwangsweise erst entnommen werden. Ich habe getestet, was passiert, wenn das nicht gemacht wird: Knack und die SD-Karte bricht und ist kaputt.

Also noch eine kompatible SD-Karte nachbestellt
Diese muss dann FAT32 formatiert werden und zum Initialisieren die Toniebox auf Werkseinstellung zurückgesetzt werden:

  1. Toniebox auf die Ladestation stellen
  2. Toniebox mit Ladestation auf den Kopf drehen
  3. Beide Ohren für 10 Sekunden gedrückt halten

Das ganze Vorgehen ist in folgendem Video gut nachzuvollziehen