Repository navigation
3. How to use
Wunderkiste is a music player for children. Its controls are extremly simple so that it can be used by children as young as 3 years. This manual contains all information needed to use it.
| H | Headphone jack. Mutes internal speakers when headphones are plugged in. |
| S | Status LED. Indicates what Wunderkiste is doing. |
| V | Volume control. |
| P | "Prev" button. Jumps to the previous track. |
| A | RFID - active "card area". Place cards / tags here. |
| N | "Next" button. Jumps to the next track. |
| SD | SD card slot. |
| R | "Reset" button. Push with a pointy object to reset the Wunderkiste in case it hangs due to a software error. |
| C | Charging port. Connect to a USB phone charger to charge the internal battery. |
| L | Battery indicator LEDs. Show the battery level. (Optional) |
| B | "Battery" button. Activates the battery indicator LEDs. (Optional) |
- Each piece of music is represented by a plastic RFID card. Alternatively, tags, figurines, etc. can be used instead.
- Wake up your Wunderkiste by pressing (and holding) one of the buttons P or N until the status LED S lights up in green.
- Place a card on the card area A. Wunderkiste will start playing the corresponding music from its SD card and the status LED S will turn yellow.
- While the music is playing, press the N and P buttons to jump to the next / previous track.
- To stop playback, simply remove the card from the card area A. The status LED S returns to green.
- After a while of inactivity, Wunderkiste goes back to sleep. The status LED S turns off.
- If there is an error, the status LED will start flashing in a pattern of red/green/yellow to show you what's wrong.
Each card plays MP3 files from a single folder on the SD card in alphabetical order. To determine which folder to play when a specific card is placed on the card area A, Wunderkiste maintains a library that links folder names to the RFID cards. This library is stored in the library.txt file that Wunderkiste will automatically create on the SD card. Usually you don't have to edit this file, Wunderkiste will take care of it.
Wunderkiste needs the SD card to be formatted as FAT32. Thankfully, new cards usually come formatted as FAT32 and you can just use them as-is.
If you get the
error code when you wake up your Wunderkiste then you'll have to manually format the card before it can be used like this:
- Format the card on a computer. On Windows, right click the card in Windows Explorer and select
Format. On macOS, you can use theDisk Utilityapp to format the card. Make sure to select FAT32 as the file system. Usually this fixes any issues, but there are special cases where this doesn't work due to weird partitions on the card. - A safer way could be this: Insert the card into a digital camera and format the card via the camera menu. Most cameras use the FAT32 file system as well. The camera will most likely add some folders, like
DCIMorMISC. Make sure to delete all of them so that the card is entirely empty before you use it with Wunderkiste.
If Wunderkiste still can't read the card, try using another one.

Wunderkiste uses RFID to detect objects that are placed on the active area A. There are various types of plastic cards, tags or stickers that work with Wunderkiste. They are usually quite cheap at online retailers. Here's what you need to know, when selecting cards / tags:
- Search for "Mifare Classic 1K". This is an RFID protocol that Wunderkiste can read. You'll find various types of cards, tags and stickers, just like the ones in the pictures above.
- The RFID chip in Wunderkiste is called MFRC 522 or RC 522 and it is used in many DIY projects. Usually, cards / tags are specifically sold as "MFRC 522 compatible".
- To make the cards / tags easily recognizable for children you can modify them with photos, attach them to figurines or embed them in cuddly toys. Just make sure that the RFID chip inside the card / tag remains close to the surface of Wunderkiste so that the RFID communication is not negatively affected. My preferred choice are white RFID cards to which I glue a photo of the story / music associated with that card. For this, I print a photo on a photo printer and simply glue it to the card. The resulting cards are easy to handle, robust and can simply be put in a small box. They tend to get lost though, so using bigger objects can be beneficial, too.
- Before you invest time and effort into customizing the RFID cards / tags, I suggest you pair them with music so that you can easily check if they work.
- Add new music by copying folders of
*.mp3files to the SD card. Each folder will later be linked to its own unique card. Place each folder directly in the root directory of the SD card, don't use subfolders. You can add multiple folders at once. - Place the SD card into the card slot on your Wunderkiste.
- Wake up your Wunderkiste by pressing (and holding) one of the buttons P or N until the status LED S lights up. Wunderkiste now detects that there are new folders for which it doesn't know a corresponding card yet.
- The status LED S starts blinking
and music from one of the new folders starts playing. Wunderkiste now waits for you to tell it which card should be linked to this folder.
- Place an unused card (= not linked to any other folder) on the card area A. Wunderkiste will link this card to the folder and the status LED S starts rapidly flashing in green
to indicate that the folder was successfully linked to this card.
- Remove the card from the card area A. If there are more unlinked folders, Wunderkiste starts playing the next folder (go back to 4.)
- Once all folders are linked to their own unique cards, the status LED S lights up in green and Wunderkiste is ready to be used.
- Locate the folder on the SD card that contains the music you want to remove and delete the entire folder.
- Open the
library.txtfile on the SD card with a text editor. - You'll see many lines like this
<Some characters>:<A folder name>. Locate the line for the folder which you just deleted and erase it. Then save the file. Now the card that was used for this folder is free to be used for new folder.
If you would like to use a different card for a folder of music (= unlink the current card and link a new one), you'll have to remove the corresponding entry from the Wunderkiste library.
- Open the
library.txtfile on the SD card with a text editor. - You'll see many lines like this
<Some characters>:<A folder name>. Locate the line for the folder for which you'd like to change the card and erase it. Then save the file. - Place the SD card into the card slot on your Wunderkiste.
- Wake up your Wunderkiste by pressing (and holding) one of the buttons P or N until the status LED S lights up. Wunderkiste now detects that there is a folder for which it doesn't have a linked card yet. Follow the pairing process described above.
The status LED can be lit continuously or blink in a pattern to display what Wunderkiste is currently doing.
| LED pattern | Description |
|---|---|
| off | Wunderkiste is sleeping. Wake it up by pressing (and holding) one of the buttons P or N until the status LED S lights up. If that doesn't work, the battery may be empty. Connect Wunderkiste to a charger and try again. |
|
|
Wunderkiste is awake and ready to play music for you. Place a card on the card area A. |
|
|
Wunderkiste is playing music. |
|
|
Wunderkiste can not read the SD card. Make sure that it is formatted to a FAT32 file system. |
|
|
Pairing: Wunderkiste plays a folder of music that is not yet linked to a card. Place an unused card on the card area to link it to this folder |
|
|
Pairing: Wunderkiste has successfully linked the card to the folder that is currently playing. Please remove the card to finish the pairing process. |
|
|
Pairing: There was an error while trying to link the card to the folder that is currently playing. Please remove the card and try again with another card. Possible reason: The card was already in use for another folder. |
|
|
An internal error occured. Ooops. That should not happen. Please help fix this issue by providing a bug report on the issues page! |
The firmware can be updated easily like this:
- Download the
*.hexfirmware image file from the latest release - Remove the SD card from the card slot.
- Open the Wunderkiste case by removing the 6 screws from the bottom panel. Tilt the panel slightly along the back edge so that the USB connector and battery status LEDs can retract from their cutouts in the top piece of the case.
- Now that the case is open, connect a USB cable to the firmware update port on the STM32F4 Discovery board, as shown in the image:

- Connect the other end of the cable to a computer / phone / tablet where you'll see a "USB thumb drive" appear (In case it doesn't appear, check the version number as shown in the image above: It should read "MB997D". If the last letter is an A, B or C, your board is too old to support drag & drop flashing and you'll have to use another method of flashing the firmware, see the info box below.)
- Copy the firmware
*.hexfile to the drive. You should see an LED on the board flash red/green during the file transfer. - After the transfer is complete, eject the drive (!) then disconnect the USB cable. The firmware update is now complete.
How to update from older board versions!
- If your board version is "MB997A" or "MB997B" or "MB997C", you can't simply program a new firmware by dragging and dropping a file. These boards have an older version of the programmer that doesn't support this feature.
- The firmware download will be done with
openocd, a commandline utility for debugging and flashing. - Open the case of your Wunderkiste as described above and connect the USB cable to the firmware update port.
- On windows:
- Download
openocdfrom the xpack project github release. It probably doesn't contain an installer. Simply extract the folder contents somewhere on your harddrive, then add the path toopenocd.exe(in thebinsubdirectory) to your system PATH environment variable. - Download and install the ST-LINK/V2-1 USB driver from the ST website
- Download the
*.hexfirmware image file from the latest release - Open a command prompt
Start > Run > "cmd" - In the terminal window, navigate to the folder where you downloaded the
*.hexfirmware image using thechdircommand:chdir path\to\your\download\folder - Copy this line into the terminal window:
openocd.exe -f interface/stlink-v2-1.cfg -f target/stm32f4x.cfg -c init -c "reset init" -c "flash write_image erase Wunderkiste.hex" -c "verify_image Wunderkiste.hex" -c "reset run" -c shutdown - You should see a bunch of messages that ultimately say
verified XXX bytes in 0.XXXs (XX.XX KiB/s)andshutdown command invoked - The firmware download is complete.
- Download
- On linux / macOS:
- Download
openocdfrom your package manager. (If that's not available, you may also use the xpack project github release. It probably doesn't contain an installer. Simply extract the folder contents somewhere on your harddrive. - Open a terminal window. Add the path to the
openocdexecutable file (in thebinsubdirectory) to your search path with this commandexport PATH="/path/to/openocd/binary:$PATH". - Download the
*.hexfirmware image file from the latest release - In the terminal window, navigate to the folder where you downloaded the
*.hexfirmware image using thecdcommand:cd path/to/your/download/folder - Copy this line into the terminal window:
openocd -f interface/stlink-v2-1.cfg -f target/stm32f4x.cfg -c init -c "reset init" -c "flash write_image erase Wunderkiste.hex" -c "verify_image Wunderkiste.hex" -c "reset run" -c shutdown - You should see a bunch of messages that ultimately say
verified XXX bytes in 0.XXXs (XX.XX KiB/s)andshutdown command invoked - The firmware download is complete.
- Download
Please make sure that the *.mp3 files are at a sample rate of 44.1kHz (standard CD sample rate). If not, you can use an audio editor like Audacity to convert the files to 44.1kHz.
You probably hit a bug in the firmware. Oops. Sorry! Use a pointy object (e.g. paper clip) to press the reset button R on the back of your Wunderkiste. This should switch it off so that you can wake it up again. Please help fix the issue by providing a bug report on the issues page!


