Go Down

Topic: Groovebox library for Arduino Due (Read 2843 times) previous topic - next topic


May 22, 2013, 04:09 pm Last Edit: Jun 10, 2013, 02:36 pm by gaith Reason: 1
Hello all,

I wrote a library to use Arduino Due as synthesizer and sampler, with audio 12-bits / 44kHz. No shield needed.
The synthesizer is based on DDS synthesis. You can choose to use several oscillator per voice.
Sampler reads one-shot samples on SD card.
There is also a filter.

I post it because maybe someone can find it useful.

Here is the link to guithub page :


My first goal was to build a groove box, that's why I did this library. You can see a video of a simple version here :

But it must be possible to complete a lot of projects with this library, for exemple :

Drum expander for electronic drums
Polyphonic synth
Wavetable synth
Arduinotron ?? (yes, why not)
loop recorder
multi-effect pedal


I put some comments in the library code, some explainations in the groovuino blog, but don't hesitate to ask questions if you are interested in the library, and tell me where there is a lack of explainations.
I spend a lot of time on this project since weeks, so I no more realize what is comprehensible or not. 

Future devs

I have a long list of future devs :
. simple effects (disto, bitcrushing, waveshaping, compression)
. delay effect (using the writing on SD card. I hope it will be quick enough)
. loading all adventurekid waveforms on SD card to select them with arduino
=> 3000 waveforms synth !
. playing loop and not only one-shot samples
. Using 12-bits ADC of Due to have audio input (and recording samples with a microphone for exemple)
. Pitch the samples (not so easy !)


For the moment, I can play up to 10 oscillators at a time, and 4 voices of samples.
EDIT : It can play now more than six samples at a time, after optimizing SD card access.

I'm not a very good C++ developper, so the library can be really optimized I think.

For project ideas and future improvements, any ideas are welcome
For code and exemples, any help is welcome  XD.

Thanks for your attention,

Modulox synth : www.puzzik.com


wished I could come close to that one day ....
Wenn ich hier sehr knapp antworte dann wegen der elenden Tipperei auf dem Tablet.


I can ensure you that it's not very hard to do (once the library is made). The hardest part was to build the case with plexy. (You can see it's not very nice)
Maybe one day we'll all have a 3d printer at home and it will be so easy...
Modulox synth : www.puzzik.com


Greetings Gaith! I have a question- I was trying to load up and play with your "monosynth" example that you posted on your github along with the Groovuino code. I can't get it to compile correctly- do you have a more up-to-date version of that code?

Or, can you share your code that you used to make that demo video with?

I'm very interested to play with this code and I think your examples sound awesome, but I'm a little inexperienced with this and could really use a working example to get started.



Thanks for your interest.
Sorry, the library changed a lot since I had written this example, so it didn't work anymore.
I just made some changes, and now it will work. You'll have to load again the library from guithub, and copy the new code I updated in my post.
But be aware, this example requires the groovuino hardware. (buttons, LEDs, pots...)
The samplers examples are more easy to make it work, it only needs an SD card reader.

If all this examples seem too much complex to you, you can give me an idea of a simple example synth to build (1 pot for pitch, 1 pot for filter, for example), and I will post that. It will surely help other people.
Modulox synth : www.puzzik.com


Hello again Michaeluna.
I just published a new post on my blog here :

It's a very simple example making a monosynth with 4 potentiometers.
I hope it will be a good example to start with the groovuino lib.
Modulox synth : www.puzzik.com

Go Up