I Built a Synth for My Daughter

TLDR: I built a portable step-sequencer synthesizer for my daughter’s 3rd birthday. It has four sliders that control four notes in a looping sequence. Sliding up = higher pitch, sliding down = lower.

These include:

  • One onboard synth module + speaker
  • Tempo, volume, scale, pitch and instrument controls
  • An OLED screen with visual feedback + a dancing panda
  • A custom PCB and 3D-printed enclosure

This is a kid-friendly, tactile musical toy. Here’s the pink version in action:

why i made it

My daughter got a Montessori activity board full of switches and LEDs for her first birthday. Watching him turn knobs and flip switches reminded me of the control surfaces of a synth, and I wondered if I could create a musical version – something simple, tactile, and creative that didn’t require holding down a button to keep the sound going. After a year I finally decided to make it. I had no prior hardware experience, so this became an excuse to learn about microcontrollers, CAD, PCB design, and 3D printing.

first steps

I started the project with a 15 year old Arduino Inventor’s Kit and only a vague idea of ​​how to use it. The first goal was simple: create a basic MIDI controller on a breadboard. If I could get some potentiometer readings, map them to 12 different values ​​– one for each note in an octave – and emit a MIDI message, I would have taken a small step in the right direction. Adding an onboard synth module and designing a pretty box to house it may have to wait until later.

It was quite easy to read the potentiometer inputs and convert them into MIDI messages using the Arduino MIDI library. To hear the output, I wrote a small Python script that intercepted MIDI messages and forwarded them to my Mac’s default MIDI device, which Logic Pro could pick up. This let me “play” the breadboard through software tools.

Once I had the knowledge of wiring up the potentiometers and rotary encoders, the next step was to move the audio synthesis from Logic to my breadboard. For this I used a $12.95 SAM2695 synthesizer module with an integrated amplifier and speaker. Its inner workings remain a mystery to me, but it does what I need and I’m glad I took the time to get a working prototype in my daughter’s hands. I also moved to an Elegoo Nano here due to its lower cost and increased number of analog pins.

Next, I added a small OLED screen and used the useful u8g2 graphics library to provide some visual feedback and character. This was trickier than I expected: the Nano has so little RAM that I couldn’t buffer a full frame. I had to update the screen in small patches, and larger updates were so slow that they sometimes interfered with encoder reads, and at faster speeds caused delays in notes. I still have some work to do to deal with blocking screen updates, but for now I’ve tried and accepted a little lag. I added a little dancing panda that I adapted from a panda I found in a pixel art tutorial that I can no longer find – if you are the original creator, please let me know so I can credit you!

For development on the go, I discovered the Vokavi microcontroller simulator. This allowed me to create a virtual schematic and test code without having to lug around my fragile prototype. They have a free online simulator and a paid VS Code plugin that lets you create your diagrams in the IDE.

Once I had a functional circuit it was time to design an enclosure and assemble a complete version of the synthesizer that my daughter could play with.

adventures in cad

After wiring the breadboard, the next hurdle was figuring out how to make a proper enclosure. I looked for off-the-shelf cases, but nothing matched the size I needed, and everything seemed to come in either black or beige. So I decided to learn some basic CAD and 3D-print the enclosure on a friend’s Bamboo Labs A1 Mini.

I downloaded Fusion 360 and started following the tutorial. With only an hour or two remaining in the evening, progress was slow at first. I had never used any CAD software before, so I was constantly switching between learning the software and trying to make real progress on the design. For other beginners, I highly recommend Product Design Online’s Learn Fusion 360 in 30 Days and this excellent video from Vermi.

After a few weeks of trial-and-error, I finally had a design I could print:

first meeting

Getting the circuit onto a proper PCB seemed daunting, so for the first version I wired everything by hand on a solderable breadboard. Good: Hanging out and drinking with your friend who offered to help with soldering. The Bad: When it was finally time to close both halves of the enclosure, the rats’ nesting of wires put pressure on the delicate solder joints and they broke. My daughter could play with it a bit – enough for me to convince myself she’d actually enjoy using it – but it was fragile. I also wanted to make some units for friends, which meant I needed something sturdier and faster to assemble. It’s time to design the PCB.

designing a pcb

Once again I was back on YouTube and finding my way through an unfamiliar workflow, although I was stuck on Fusion 360, which has its own electronics design suite. For my first attempt I decided I would focus on surface mounting the various components and integrating the microcontroller into the board for a future project. A large chunk of time here was spent reading datasheets, sourcing parts, and importing their footprints/models into Fusion 360. Once I learned the basics, I was able to route the circuit on a 2-layer board. One nice thing about Fusion is that you get a full 3D model of the assembled PCB, which makes designing the enclosure much easier.

When I was done, I exported the PCB design file and uploaded it to JLCPCB. The cost for five boards (minimum order) was £35.41 including shipping, and they arrived five days later. It boggles my mind that this is possible.

path to power

For my first version I decided to use 4 AA batteries and use the Arduino’s built-in voltage converter to provide a steady 5 volts. However, what I overlooked is that the Arduino’s VIN pin that provides a regulated 5V to the board requires a 7-12V input, whereas my battery will provide, at best, 6V when new. The board seems to be working fine at this voltage, but it will be sensitive to random resets as the voltage will start to drop and battery life will decrease.

For the next iteration I decided to get rid of one of the batteries and introduce an Adafruit Miniboost to provide a regulated 5V power supply to the Arduino by combining 4.5V from three AA batteries. This allowed me to reduce the weight slightly and provide the synth with a stable supply of power for longer periods.

final version

Finally, I updated the enclosure so I could safely add the PCB and added a neat little battery compartment. I also added a small bezel to increase the height of the OLED display.

Ideas and next steps

It’s been just over a week since my daughter built her new synth. It now lives on the shelf with his other toys, and has been getting regular use so far and is holding up well. One of my goals was to create something fun to play with on a surface level, but with enough depth to remain interesting as she gets older. The first part seems to be true, and I’ll see how the second part goes in the coming months. There are still some glitches that need to be addressed, such as lag when updating the screen. I’m also planning to upgrade the Elegoo Nano to ESP32, which will simplify the firmware and open up more options for fun display graphics.

After watching some kids and adults (musical and non-musical) play with it, I think there might be the germ of a real product here. With an improved synth engine, audio output, and a way to link multiple units together, this could be an entertaining introduction to electronic music for older children – perhaps even for adults. However, adding features is one thing, but actually bringing a product to market is another. The challenges are not just technical: they are regulatory and financial. Safety certification (UKCA/CE, and FCC in the US) can cost £5-10K or more. Manufacturing is another hurdle. A 3D-printed enclosure is fine for prototyping, but the actual product requires injection-molded parts, which requires expensive tooling. Even a small production operation would require more upfront capital than I can sensibly invest right now.

At the moment I’m treating it as a learning project, but the response so far has been encouraging. A more sophisticated open-source version for makers, or possibly a smaller Kickstarter campaign, might be viable in the next phase. If anyone reading this has experience bringing small-scale running hardware to market, I’d love to hear from you.



Leave a Comment