Ahhh, this is really cool. I saw your post on the teensy forums, should have guessed you were over here too.

Thanks for putting all your code on GitHub, it looks real good.

1 Like

This project has evolved so much since December last year… I have been completely out of the forum since then but I have been working on it and on many other things too.

I have developed 3 base platforms to build modules on top of them, I call them Motherboard6, Motherboard9 and Motherboard12.

I have reworked this synth, renamed it to just Synth, it is based on Motherboard6, so it has 6 controls now.

Here is a demo, I play from the laptop, sending midi via USB:

I have built also other modules, Psyc03 (an acid percussive synth), DS9 (a drum synth), Byte (a drum sequencer), Cycle (a note sequencer), and Drone (which is obvious).

They all communicate via midi over jacks from the back.
I am very close to be able to jam properly with my modules now, here is a recent test of 4 modules together:

7 Likes

By the way the code of this new version of Synth is on GitHub here:

7 Likes

This is an incredible idea, and I love it. So it’s basically digital, programmable modular, and you can write your own damn synths for it?

Do you plan to add a MIDI host module to this system? The ability to hook this up to external sequencers, controllers, and instruments would make it even more enticing.

3 Likes

Good questions.

So the core of the modules are the Teensy microcontroller, which is similar to Arduino but more powerful and has also an audio board that can be added on top of it to handle all the audio processing, giving good audio quality.

So Teensy allows for generating audio, transmitting and receiving Midi and reading inputs. It is indeed digital but it is capable of outputting CD quality, 16 bits, 44.1 kHz.

What I did is I created modular boards that allows to create modules. So the boards themselves are modular in the way that when you are about to solder your inputs on them, you can decide to go with buttons or potentiometers or rotary encoders.
So you can use the same board design to create many different modules. That makes it cheaper because when ordering PCB at any manufacturing company, you have a minimum quantity to order and the more quantity the lower the price. Also then I don’t have to design and maintain specific boards for each module which makes it simpler over time.

To be able to handle 3 different type of inputs I had to use multiple multiplexers, because the number of pins on Teensy is too limited, especially when the audio board is connected to it. But depending on what inputs you have (and outputs actually because you can have LEDs too) you can avoid some multiplexers.

So the boards I created so far are Motherboard6, Motherboard9, Motherboard12, the number indicates the number of inputs.

They all have 2 boards, one on which you solder the inputs, one on which you solder all other components, and both are connected together with header pins.

The Motherboards offer Midi input and output jacks on the back, the audio jack is on Teensy’s audio board on the back too, and there is also a dipswitch to select a midi channel for the module.

I designed them also folowing the Eurorack format so that they can be put into Eurorack rails. Though they are powered by micro USB.

Theoritically you can connect the Midi IN of these boards to any other device. I haven’t tested it though, and you have to know that there is no protection on the board to limit the current and voltage coming from the Midi jack, so if you are not careful you could burn the Teensy. Though this is something I will try to work on later.

Now on the code part, you can program your own synths/sequencers, pretty easily I would say. I provide examples and all the code of the modules I made. And what makes it cool I think is that because of the board being the same for many modules, then I was able to create one class per Motherboard (6,9,12) to handle the inputs/outputs, so that to make a new module all you need is to copy this class and concentrate on the audio or the higher level of logic for your module.

Coding a sequencer or a synth could take you just 1h I think when you are familiar with the Motherboard class.

So you can check there for all the code, I always push new things:

And if you’d like to buy the boards, I sell the extra one that I don’t use:

I hope this answers your questions!

1 Like

@Ben I think I didn’t replied to you so I’m not sure you got any notification