Step-sequencer monosynth build

GroupDIY Audio Forum

Help Support GroupDIY Audio Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.

efinque

Well-known member
Joined
Jan 3, 2018
Messages
381
Sup GDIY,

here's a step-sequencer monosynth build I designed on breadboard five years ago. Now I got it in a neat chassis (well, it's an old, repurposed Hammond enclosure from a DJ mixer project)

This thing has 4 steps the sequencer sub-program runs through. The pitch of the steps is dialed using the bottom row of potentiometers. The code reads a pot value from 0-1023 and divides it by 4. This integer is passed to one of the corresponding tone functions.

It also has adjustable tempo which works in a similar manner but uses a delay function instead.

I'm looking to add an on/off-switch and a low-pass filter as well as an audio output. It's also missing knobs.

I added a short 30s video to demonstrate it's abilities.

Here's also a pic I took when I got the front panel labeled.

IMG-20240617-000919.jpg


Any thoughts or improvement ideas?

Have a nice summer,

-ef
 

Attachments

  • VID_20240616_201814.mp4
    72.8 MB
Last edited:
Added unbalanced 6,3mm output jack and a start/stop-switch.

IMG-20240618-133923.jpg


Here's what the front panel looks like.
 
Respect! Would not mind hearing more, or reviewing your code.

I've recently caught the eurorack bug. Opted for an open source sequencer.
Here's the schematic :

arpeg-schematic.jpg


And here's the code :

Code:
void setup() {
  Serial.begin(9600) ;
  pinMode (A0, INPUT) ;
  pinMode (A1, INPUT) ;
  pinMode (A2, INPUT) ;
  pinMode (A3, INPUT) ;
  pinMode (A4, INPUT) ;
  pinMode (12, INPUT) ;
  pinMode (13, OUTPUT) ;
}

void loop() {
  int tempo = 1023 - analogRead (A4) / 4 ;
  int noteLength = 100 ;
  int step1 = analogRead (A0) / 8 ;
  int step2 = analogRead (A1) / 8 ;
  int step3 = analogRead (A2) / 8 ;
  int step4 = analogRead (A3) / 8 ;
  Serial.println (digitalRead(12)) ;
  
    if (digitalRead (12) == 0) {

   tone(13, step1, noteLength);
    delay(tempo);
   tone (13, step2, noteLength);
    delay(tempo);
  tone(13, step3, noteLength);
    delay(tempo);
   tone(13, step4, noteLength);
    delay(tempo);
}
else {
  noTone(13) ;
  }
}

Notice the subtraction of the tempo pot value.. this is because I accidentally wired it the wrong way. Also to make the tuning more accurate I divided the inputs by 8.

I could add stuff like CV out (analogWrite of the corresponding step on every sequencer step on an empty pin) as well as gate (digitalWrite) and add 3,5mm outputs for them but I have no spare parts or space in the front panel as for that matter.
 
Last edited:
Aren't the pots on the above schematic wired backwards, they seem to be shorting the +5V supply to the ground? ⚡
Yeah the output should be the wiper but as long as it works I can't be bothered to rewire it.

And I already hot glued the knobs so it's a tedious fix.
 

Latest posts

Back
Top