Verified Stripboard Layouts!

I realised when I looked back at this that the codes for the components (R1, R2 etc) on the BOM and schematic did not match the stripboard layout. I have corrected them now. Following the advice of @K.ostas and @analogoutput I have also increased the resistors on the clock input and output to 10K. I’ve tested that modification and it works.

4 Likes

I built the Prioritron 3 designed by @Micraster and gave it a front panel that allows me to mount it in my eurorack.

To get rid of the DC offset of the PWM based DA conversion circuit I added an 22uF capacitor to the output.

I glued a 3D-printed raster to the neopixel matrix to compartmentalise the leds so that they will not bleed any light and glued a piece of the diffuser sheet taken from a broken LCD-tv cut to size on top of that, thus resulting in a nice evenly lit display. The picture does not do it justice (the camera is too sensitive and thus maxes out).

10 Likes

Hi, I’m trying to look for some advice on the MFOS 2 pole, 12db State Variable Filter with VC resonance. I works like a charm but my resonance knob isn’t fully closing which means that when this knob is fully CCW, there is still a small spike of the resonance visible on my oscilloscope. Which resistors do I need to change to get zero resonance? thanks in advance for your help. I will post the correct schematic later today.

I wanted to add the possibility of a hardware reset so that I can start the Prioritron 3 (described by @Micraster in a known state. So I looked at the pins used and found that I could use pin D4 and the PCINT mechanism for this.

For this to work I added this library to my platformio.ini (VSC project) file

	neu-rah/PCINT r-site.net@^4.0.8

And these few lines to the original code:

// define a pin for the external reset signal
#define RESET_PIN 4 // D4 = PCINT20

// include the library header file
#include <pcint.h>

// Define a software interrupt service routine.
// This will reset the sequencers to their 1st step
// and initiate the 1st step.
void reset_interrupt_service_routine(void) {
  step = startStep;
  noteDelay.start(tempo);
  if (drumBool) {
    playDrums();
  } else {
    playNote();
  }
  pulseCheck = 1;
  digitalWrite(CLOCK_OUT, HIGH);
  timeSinceLastClock = millis();
}

Near the end of the setup()-function these 2 lines need to be added:

pinMode(RESET_PIN, INPUT);
PCattachInterrupt<RESET_PIN>(reset_interrupt_service_routine, RISING);

The original code almost completely uses the available storage on the nano, so adding this code and the library made it an even more tight fit. At a rising signal on D4 the device will now reset either its note sequencer or drum sequencer and initiate the 1st step.

As the Prioritron does not have a spare input jack, I connected D4 via a resistor to pin 8 and 16 of a 16-pin flatcable connector (the 2nd resistor is a pull down resistor). In my rack I’ve designated pin 8 and 16 to be used as a ‘bus’ for a general purpose reset signal (see Reset-O-Matic), so this works nicely for me.

4 Likes