Strings Synthesizer project around Littlebits

Hi all,
I’m thrilled !
I’ve spend some time adapting an original idea by Jan Ostman.
He developed an open source Solina String synthesizer, unfortunately only for the Arduino nano.
It took me a lot of time to translate this sketch to the littlebits platform.
I had to change timers, PWM, MIDI implementation, AD conversion, …
The Littlebits arduino has 2 dimmers connected, 1 is for the sound envelope and adjustment, the 2nd is for modulation and detune.
Finally, you can see a sneak preview here :
The sound demo comes later in the video, later on, I will make a longer recording.
Later on, I will post everything on the Invention page.

1 Like

Very nice demo @Frankje!, I would have liked the song to have continued for much longer!

Anytime you wanna share yer code, I’m all ears. Would you like to discuss the issues you came across converting to littleBits’ arduino module?

Hi @chris101 and Hi all !
The project is fully working and running, so I’ve composed a song around this project.
If possible, use a good set of speakers or headphones :grinning:

All sounds ( exept the noise wave ) come from the String Synthesizer Littlebits arduino, processed through littlebits modules ( filters, envelopes, delay, … ).
Even for the noise, a rather complex circuit around only littlebits modules, create a slowly moving and evolving noise sound wave. And guess what, no arduino involved here !
The rhytm track comes from the Littlebits Mini Pops project.
Everything was recorded with audacity and only some reverb was added to the mini pops rhytm.
All other tracks were just panned a bit to add stereo.
A standard MIDI keyboard with DIN ouput is connected to the serial input of the Littlebits arduino through a self made MIDI bit. Rather easy and it works. You can even adapt the sketch to use other parameters like modulation wheel etc.

The fun part is, finally polyphonic playing is possible, yes, chords, please !

It took me a week or so to rewrite the whole sketch to adapt the Littlebits arduino. I have totally no programming skills and I had to learn everything by studying the Leonardo environment. This was a good way to learn how C++ programming work and how to use registers and timers. I’ve written down everything in a notebook for future use.
By now, I’m gathering all info to put on the invention channel.


Wonderful music ! Great !

Thank you Alex !
The whole project is published at the inventions page.
Here is the link :

@chris101: I had lots of work to translate the nano to leonardo, since they use different timers and setups of the registers.
Also, the pinout of the leonardo and the ATmega16U4/ATmega32U4 chip regarding the analog inputs are reversed, I found this after a day of debugging the software.
The serial input of the leonardo differs from the nano, regarding USB.
Also, the crazy thing is, the complementary outputs of the littlebits arduino d5 and d13 sound completely different. I guess this has something to do with the build-in opamp circuit.
And lots of small, but sometimes hard-to-find modifications;
Since I’ve just starting using the littlebits arduino, it was a great but sometimes frustrating way to code.

1 Like

Thanks for the info @Frankje!

It’s good to know the scope of the problem, because soon I want to begin a project using the DFRobot Beetle, which is electronically similar to the littleBits arduino module.

1 Like