Korg Mini Pops DIY DRUM MACHINE (& DSP-D8)

i’ve tested the DSP-D8 on breadboard that’s work but i don’t undersatnd something very strange.
i can only to trigger a sound with a ground connection , not a voltage like a standard signal trigger. i connect the pin (D5 for exemple) a bref moment to the gnd and it make the sound.
someone have an idea ?
@Aswayze have you the same thing, you trigger yours with what sort of signal plz ?

1 Like

This is “usual” with arduino, because the ATMEGA chip has only internal pull-ups, the active state is low.
On the schematics, there is the little graph in the top-left.
The sound is “stopped” while the input is high, and is “running” when to input is low.
From that graph and a peek at the code, I think (I have no means to check it right now) the sample will stop playing as soon as the input goes high again, so it is more like a gate than a trigger.

So you’ll need to add an inverter on the triggers to use it with a modular (a transistor does the job very well).
You’ll wan’t to do it anyway for input protection.
OR
You can change the code and add external pull-downs.

3 Likes

I’ve only tested it with my beatstep pro, and no issues there.

From memory the 02 operates from pulling the channels to ground to turn off sounds. So maybe it operates in a similar fashion (I have no idea how code works).

EDIT: I think i read on a forum that it wants triggers. But it worked with my beatstep gates, so i didn’t give it a second thought.

2 Likes

ok thx,
to change the code i do not know about it, maybe somewhere here, but …
Sans titre

i will try with transistor tomorrow

EDIT :

something like that ? i really don’t know for the value

2 Likes

what schem are you talking about

1 Like

I have been day dreaming at work thinking about ways to improve this design. The drum sounds are great, but do not have much punch to them. When I put it in a track I needed to layer another kick and snare underneath it. At the moment i’d say its more a ‘texture’ module.

I am going to play round and add some things to vary the tone. A filter, diode clipping, maybe even a simple delay/reverb, but if anyone can think of anything else, yell out!

1 Like

Here is the schematics :


WARNING: this is a bare '328, and the pin numbers are physical pins, not the arduino numbers.
(Arduino) pins 2 to 9 are the trigger/gate in, pin 10 is the Accent pin.
You can look here to see the association :

That piece of code activates the internal pull-ups. The ATMega328 has only internal pull-ups, no pull-downs, that’s why most designs use a low pin as active, you save the external pulldowns.
To disable the pullups you’ll have to replace INPUT_PULLUP with INPUT, and add an external pulldown resistor.

The part of the code which handle the triggers/gate is this :
Untitled

There you can see that as long as the pin is high, the sound is kept at sample 0.
Once the pin go low, the sound starts playing, but as soon as the pin gets high again, it will again be kept at sample 0 and stops playing.
It is really a gate, not a trigger.
This could be changed to make them triggers.

The effective resolution of the sounds are in fact only 6 bits because of the internal mixing of the 8 sounds. (Yes it’s just divided by 4, not 8, which means if you play more that 4 sounds you may get clipping, or with more than 2 with Accent)

I think the XR10 is a much better design to start with, because it has individual outs which allow 8 bits resolution for each sound.
It can only handle 6 sounds, if you need more, just add another $4 nano…

3 Likes

many thanks @eric for all this !

i must change
327 pinMode(2,INPUT_PULLUP);

by
327 pinMode(2,INPUT);

and the same for others (3/4 …/10) ?

add a resistor to gnd at input trigger

and i don’t know what i must change here plz
Untitled

1 Like

Replace
if (PIND&4) {
by
if( !(PIND&4) ) {
for all of them.
That is, just add the (! and ) around what is already there.

They will still be gates rather than triggers.
To convert then into “real” triggers shouldn’t be too complicated but I prefer not to post untested code.

1 Like

without a trigger it will be less less fun, maybe I’ll go back to analog build for the moment :slight_smile:
maybe this afternoon i go test the XR10, hoping that there is not the same problem with the trigger in
thx

1 Like

The XR10 seems to use gates too…

Maybe after XMas I’ll find some time to breadboard it and clean the code like I did with the O2.
And use proper triggers.
I’ll probably do it starting with the XR10 code base, but with the option to choose any 6 samples from the O2, the D8, the L8 and the XR10…
Or even your own samples…

2 Likes

thanks for letting me know, so I won’t waste time with it this afternoon for the same result .
btw I just looked for the XR10, effectively it’seems more cool, but the individual outputs are not on the schematic, nor the diodes listed in the Boom , I think the whole world is against me today, i put it aside and wait if you make something more usable later :slight_smile:

i

Is this code functionally equivalent to Ostman’s, just reorganized?

It might be useful to add to the README some indication of how to install it — looks like Ostman’s version was just one .ino file but here there are .h and .cpp files some may not know what to do with.

2 Likes

It should be equivalent. Just a refactor of the original code…
At least I wasn’t able to see any difference on the breadboarded circuit at the time.

For what I remember, the Arduino IDE will automatically compile all .cpp files which are in the same folder as the .ino file. I didn’t use that IDE since two years ago, so maybe there was something to configure ?
I’ll check after XMas how to install it and will document it.

4 Likes
2 Likes

Hi All! This is my first Post in the forum, happy to be here.

Also I tryed to built the XR10, but as the design is for the bare 328 chip the Trig A and the trig B are ocupied by the crystal in the arduino nano.
Also it happens that the pinout seems not to work properly.

Has anybody manage to built the XR10 with an Arduino nano, not the chip alone?

Thanks in advance

3 Likes

No, I stopped looking at it when I discovered there isn’t any “clock” (timer/interrupt/whatever) to get a consistent sample rate…
It just plays the samples as they are computed, and the speed (pitch) can vary !

Either something obvious escapes me, or it’s junk…

Anyway, I now have a few Raspi Pico’s, but not much time.

Stuck on a sofa today so had my carer grab me a tray and some bits. Mucked about with some filters and then, just for fun, mocked up the Nano Pops.

I’d forgotten how naff the nano can sound with just the plain output. Leaving it set up on the breadboard to see if I can make it sound better. I do know that running it through a huge PA sounds incredible.

4 Likes

Anyone got pitch control added to minipops? I want to be able to twist the sounds A bit

1 Like

Hey guys, I’d like to build @ [Aswayze]'s version with the triggers but idk where to get the code D:
pls help. thanks a lot!

1 Like