Browsing around the internet, looking for cool laser cut projects to do while I’ve got a fancy laser cutter here for review, I found a very interesting looking music box posted to reddit.

I thought the design was delightful. While I personally could do without the little figures with built-in RFID tags, this music box wasn’t made for me, it was made for a child. I reached out to find more information and got some great responses from the creator, Teejo.

who are you?
My name is Teejo, 29 years old from the Netherlands, currently living in Germany. I studied Communications and Media Design and have been working as a freelance filmmakers for the past 8 years.
Since I can remember me and my brother loved to take things apart, mostly electronical devices, and figure out how they work. Professionally I ended up in a more artsy/creative direction but the technical, electronical DIY mindset always stayed with me, mostly as a hobby.

why did you build this?
Here in Germany there is a thing called Toniebox, which my girlfriend showed me as a cool thing for her daughter.

After thinking about how it works for a second I came to the conclusion that I could make something like that. And thus a challenge/new project was born.

A few months ago I discovered the town where I live has a FabLab (sidestep; my first acquaintance with a fablab/makerspace was back when I wrote my bachelor thesis on interactive video. For that I discovered my University had a makerspace. I used it to 3D print a part to combine 6 GoPro cameras into one 360˚ camera. They also had a laser cutter and I played around with that as well)  I went there out of curiosity and came back to make some t-shirt for a hiking club I run. After a few weeks I got hooked and now participate as an operator, opening the lab, keeping the machines running and helping people when they have problems with their projects.
So that gave me the possibility to create the gift that I had seen in the store and subsequently converted to a DIY project in my head.

how did you come up with the circuit?
Because of my job I usually start thinking at the end. So how should/will the user interact with the product. in this case the user would be a 7 year old girl, so I wanted to make it as simple as possible.
I briefly thought about buttons/screen to select songs on the music box but I loved the simplicity of the interaction of button a figure on the box to play. Place figure on box, music starts playing, take it of and the music stops. Doesn’t get much simpler than that.

The main goal was to make it cheap and relatively simple. So that’s where RFID came in. The tags don’t need power, and are very cheap. To the figures that hold the songs (or better said, the tag ID) can be made very cheaply. I had been playing around with RFID before so I already had the reader and tags for it at home. Same goes for the Raspberry Pi. I’ve used it in many projects before so it was a no brainer to use it.
I did briefly think about alternatives like an ESP chip or Arduino but the RPi was the easiest when it came to uploading new songs to the device and playing said songs.

So in the end the circuit in my head was Input (RFID) > Processing (RPi) > Output (Speakers).

what was the toughest part?
The toughest part for me was (and still is since I’m trying to make it better) the scripting. I have quite some experience with web programming but for this project that wasn’t an option (or at least, I think it would have been too difficult for an easy task I wanted to achieve). So I decided to go with Python. Never really programmed anything in Python so there was a bit of a learning curve. I knew what I want to achieve, but I just didn’t know what exact commands to use to achieve that goal. It consisted of a lot of Googling and trial and error.

what did the child it was made for think?
Don’t know yet. The gift will be given in stages. The figures will be part of her Advent Calendar (if you’re not familiar with the concept, it’s a calendar from the 1st to the 24th of December, with every day a little gift, or chocolate, or whatever). So every few days she’ll get a figure, building the mystery since she has no idea what they’re for. And then on the 24th she’ll get the music box to use the figures with.

if you had to do it again, what would you do differently?
If there comes a version 2 I would simplify the electronics. I think the RPi is overkill and the whole thing could probably be constructed with an ESP32. That would also make the project way more affordable. I think the biggest cost in this project is the RPi 3B+. So in short, cheaper electronics, that are at the same time smaller. And then maybe even make the enclosure itself smaller.

what is next for you?
So many things..
First I’m gonna document this project more properly. The FabLab here asked me if I can make a workshop out of the music box. And then I want to share the schematics/how to with people online.
One other project that is still waiting to be finished is a system that measures how much water we use while showering. So its partly a flow meter with ESP8266 in the shower but then also the server the data gets send to (I like to keep everything in house, so that would also be a Raspberry Pi including a front-end website where we can monitor our water usage.