Tuesday, 15 November 2016

Korg Mini-Pops DIY Drum Machine

Korg Mini-Pops DIY Drum Machine 




This is a really cool build;  It a recreation of the Korg Mini-Pops drum machine, an instrument which has been on a ton of records the most famous of which might be Jean Michelle Jarre’s ‘Oxegen’ album, hence this clone being called the ’O2’.  



The brilliant Jan Ostman built this using only an Arduino nano and a few barebone parts.  Jan is giving away the full details on his website and is only asking for a $3 donation in return.  Bargain!





I started by building my first version using a cheap Maplin plastic enclosure, but I thought it was worth spending a little more time on it so I got the table saw out. 














Because the table saw has a maximum cutting width of 7cm, I based the case around this limitation.











The switches mute the individual drum hits. The pots select the pattern and its tempo.




































***UPDATE Arduino Drum Machine****
Simplified Schematic

Ok, so this 'simplified' schematic might not actually make things any simpler!  But some people have asked for it, so maybe it'll help clear somethings up a little bit - especially how to wire up the audio output and pots/switches.  This was drawn from memory so I hope it's correct - give me a shout if not and I'll update (the pots might work in reverse, but they'll still work).  I'd also urge you to look at the schematic on Jan Ostman's website for more help;

https://janostman.wordpress.com/the-o2-source-code/

Thanks!

73 comments:

  1. Replies
    1. Thanks Jan! I've also built your string synth but haven't had chance to write it up yet, here's a video for the time being;

      https://www.youtube.com/watch?v=KQcI7oKE1pc

      Thanks for sharing all your hard work - I've learnt so much!

      Delete
  2. Hi, really nice build! I am planning on making this my next project and I have some questions. I see a MIDI jack in one of the pictures, is that somehow hooked up to a CD4067 to drive a sequencer? How did you implement that? I have used an Arduino Uno for several projects, but I've only read the datasheet for the CD4067 and have no experience with using one.

    ReplyDelete
    Replies
    1. MIDI output was added into the code so now the drum machine can set the tempo of other instruments - no CD4067 was needed. Notes and volts have a great series about Arduino and MIDI;
      http://www.notesandvolts.com/2015/07/midi-for-arduino-understanding-midi.html
      They originally built an Arduino synth, then came back to the project later and added the MIDI. Maybe you might be able to figure out how to add the code yourself after reading (it also has a MIDI out schematic);
      http://www.notesandvolts.com/2015/05/auduino-synth-midi.html
      If not, maybe this guy might share the code if you ask nicely ;-)
      https://www.youtube.com/watch?v=Ecw_Zp5uELk

      Delete
    2. Ah, so it's really MIDI out! Thank you for the info, hopefully I can get it figured out from here.

      Delete
  3. NIce project, really very cool :)
    I try to make it and didn't work :( I read we don't need the MUX as the original scheme. I try many combinations, tested the speaker, checked the cables.... nothing :(
    I'll keep trying :)
    Thank you for this project :)

    ReplyDelete
    Replies
    1. I got it :) It works so well, I post this cause some people could have the same problem. I used a wrong capacitor at the end (yes, stupid). I mess up the values in the store and in home, I couldnt even read the the numbers (very tiny numbers), so I couldnt check. And the drum machine it was not working directly connected to the speaker, he must have that end circuit. But, the synth works well without the filter. Thank you anyway.

      Delete
  4. This comment has been removed by the author.

    ReplyDelete
  5. I have a question it can interest others also. I really have no clue how to generate the patterns. I really would like to make my owns. Sorry my ignorance, I think it's the part with "B00100101", but no clue to this moment how to generate this part of the code. Thank you so much :) When I finish with a proper box, I will show if you are interested :)

    ReplyDelete
    Replies
    1. Hi Jo, I haven't really looked into the code yet (Jan Ostman wrote it not me!), but where it starts "B00100101" could well be where you could program a new pattern. If you look, there are 16 "B00100101"'s in one block of code, which is probably the 16 steps that make a drum loop. '0' is digital for off, and '1' is digital for 'on'. Elsewhere in the code you are shown the drum sounds;
      Patterns GU BG2 BD CL CW MA CY QU
      You can see there are 8 instruments that make a drum kit, and there are also 8 numbers in "B00100101"
      So it maybe possible to program the drum kit this way. Say if you just wanted the bass drum (shown as BD) to play and nothing else, you type "B00100000", or if you wanted no sounds to play: "B00000000". I'm only guessing this, so I could well be wrong! But it wouldn't be too hard to give it a try & if it doesn't work, just re-upload the original code and it'll work again. Let me know how it goes please! & yes, I'd love to see the version you've made. Thanks!

      Delete
    2. Right you are Mr. Hoskins. The eight numbers in the line of code after the letter B represent the eight intruments and each line of code represents a pattern step. I've swapped out more than half of the stock patterns with old breakbeat patterns just for fun. "Take me to the Mardi Gras" sounds great on the MiniPops!

      Delete
    3. Oh wow cool! I shall be adding my Gabba pattern to this ASAP! Thanks for letting me know ;-)

      Delete
    4. Hi guys! I've been working out how to get round the limitation of one bar patterns on the Arduino Drum Machine.Eureka! Programme each bar in a different rhythm slot and with careful planning rotate the pattern knob at the right moment.16 different bar patterns should be enough for most people.
      I hope to build the ADM and String Machine soon.Great projects,more please!

      Delete
  6. Your wooden box is amazing, how did you do the writings?

    ReplyDelete
    Replies
    1. The writing on the perspex? I used a banggood laser engraver, which you can read about here; http://bloghoskins.blogspot.de/2016/08/banggood-2500mw-laser-engraver-setup.html

      Delete
  7. Very nice project. I try to bild it also, but instate of numbering the pattern from 1 to 8, I would like to use the names. But it is not easy to find the right name of the tokens:
    BD = Bass Drum
    BG2 = ??? (Maybe Bongo?)
    CL = Claves
    CW = ???
    CY = Cymbal
    GU = Guiro
    MA = Maracas
    QU = Quijada
    Could you help me to find the corret names?
    Thank you very much.

    ReplyDelete
  8. God job it's nice project for musicians

    ReplyDelete
  9. God job it's nice project for musicians

    ReplyDelete
  10. God job it's nice project for musicians

    ReplyDelete
  11. There's a YouTube video called "greed minipops first look" that shows "hihat" instead of "maracas"? Hope that helps.

    ReplyDelete
  12. Now we know how to reprogram the 16 rhythms, how do we reprogram the samples? In particular there's no snare drum.I know where each sample is (they're labeled BD,CY etc) but how did Jan convert a sample into arduino code?Failing that, can we take a trigger out from perhaps the hihat channel to an external soundbox?

    ReplyDelete
    Replies
    1. I think a clock trigger is already present on pin 13;
      pinMode(13,OUTPUT); //Clock output

      There aren't actually any audio samples included in the code, the sounds are made up/represented as data (Is this what wavetables are?). So here's how the bass drum is represented;

      const unsigned char BD[1076] PROGMEM =
      {
      126,122,118,114... Lots more numbers here
      };

      You can see from the code, after 'BD' you have a number, in this case [1076]... that's how many numbers are below in the brackets that make up the sound that gives you a bass drum... like plotting a sound on a graph. The cymbal is a lot longer 'sample', so CY[9434] has almost ten times the amount of data... this is where most of the Arduino's limited memory is spent on this part of the code.

      The other parts of this line of code;

      const unsigned char BD[1076] PROGMEM =

      const - this means this part of the code won't change ("constant')
      unsigned - I think this is a way of declaring that this part of the code is made up of numbers without any decimal points after it (integers aka int - numbers with decimal points require a lot more processing power)
      char - ok I'm googling this now :-) To declare a variable of type character we use the keyword char. - A single character stored in one byte.

      Basically google is your friend when it comes to trying to figure it out! If you want to dig in deeper with the code, there's a good free online course called CS50 which you can study on the EdX website;
      https://www.edx.org/course/introduction-computer-science-harvardx-cs50x

      ...Saying that, I've not finished this course yet, so take anything I say about coding with a very large pinch of salt!

      To convert a sample I think something like Audacity is used... maybe google 'convert a wav into data with audacity'? I not done this yet, but I imagine something like that would be the answer you're looking for.

      Cheers,
      Gary

      Delete
    2. I found this with google -http://manual.audacityteam.org/man/sample_data_export.html
      Hope this is of help to people who want to load there own drum "samples" into minipops.

      Delete
    3. This may sound stupid but where does the 5v supply come from? Does the Arduino output 5v on pin 27 when it's plugged into the USB supply?I plan to use a 9v battery going to pin30(vin),so a divider will give me approximately 4.5v for the pots.

      Delete
    4. The nano gets the voltage from the USB and passes it through to output 5v on pin 27 & 3.3v on pin 17. To power a nano with a 9v battery the most common way is to use a 7805 which will regulate the 9v down to a constant 5v... Here's a nice article;
      http://jumptuck.com/2011/11/15/voltage-regulation-friend-7805/

      Delete
    5. ...oh and thanks for the link to the audacity article, it's got my little brain thinking what could be possible :-)

      Delete
    6. If you're building the entire circuit from scratch there's a really good article over on the arduino website showing how to breadboard an arduino... it also shows the 7805 power supply. Just watch out for the ATMEGA328p pinouts as they don't follow the order found on the pins on the Arduino (ie, you won't find 5v on pin 27 etc)...
      https://www.arduino.cc/en/Main/Standalone

      Delete
  13. Thanks once again! I'm learning all the time.I've noticed someone on Jan's blog asking how to put samples from his actual Minipops into the nano so I'm sending the audacity link to him.Can I send your blog link too?I won't without your permission of course.

    ReplyDelete
  14. Done some initial testing,getting there slowly.Pattern pot appears to be wired in reverse on schematic so I swapped connections (I wanted Oxygen to be fully clockwise).Tempo pot correct but overall seems too fast. Does anyone know how to slow the clock down?

    ReplyDelete
    Replies
    1. Oh sorry - I must've drawn the pot in reverse :-( As for the tempo, are you using a 10k pot? Linear is also needed, not logarithmic (it'll say A or B after the 10k). On line 754 there's also a line that reads: uint16_t tempo=3500; You could try changing this, although it might cause an error elsewhere in the code (I've no idea as I've not tried it). Best of luck!

      Delete
  15. Replies
    1. The price? Or the prize? Hopefully I'm going to have a few for sale in the next couple of months or so ;-)

      Delete
  16. Hi Hoskins,

    I´m having a lot of problems with the code. A lot of errors are appearing when i try to compile the code.



    Arduino:1.8.5 (Windows 7), Tarjeta:"Arduino/Genuino Uno"

    C:\Users\REBE\Documents\Arduino\minipops\minipops.ino: In function 'void setup()':

    minipops:2: error: 'ss' was not declared in this scope

    ss.com

    ^

    In file included from C:\Program Files\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:30:0,

    from sketch\minipops.ino.cpp:1:

    minipops:632: error: expected unqualified-id before string constant

    ISR(TIMER1_COMPA_vect) {

    ^

    minipops:632: error: a function-definition is not allowed here before '{' token

    ISR(TIMER1_COMPA_vect) {

    ^

    minipops:895: error: expected '}' at end of input

    }

    ^

    exit status 1
    'ss' was not declared in this scope





    I´m loosing the faith in the project...Thanks in advance

    ReplyDelete
    Replies
    1. Are you using an Arduino Uno or Nano? Make sure you're compiling to the correct board, hopefully that'll clear the error. If not, are you sure you've copied & pasted the code correctly? Download from github, rather than copy & pasting. Try something like code compare to see if your version introduced any discrepancies. Failing that, maybe install an older version of the Arduino IDE.

      Delete
    2. Thanks for your unvaluable help. Your blog is becaming my holly bible. You're lighting my way ;)

      I'm using mano (a chinese copy of it)

      I'll check your pieces of advise at night. Thanks again

      Delete
    3. Compilation and upload to nano succesful!!
      Thanks mate!!

      ....but now i´m having problems with the circuit,could you tell me something? The only polarity to mind about is the electrolitic capacitor,right? Just to verify,looking at your scheme the positive would be on the right?

      Thanks in advance

      Delete
    4. The cap's positive side (the side that has the longer leg) should be facing towards the audio jack, the shorter leg (negative -) should join to the 1k resistor and 100nF capacitor (the 100nF has no polarity). Make sure the audio jack is correctly wired up... google image search 'audio jack positive negative' and you should figure it out. Cheers!

      Delete
    5. hi again to everyone!!
      I´ve mounted it almost 20 ntimes in a breadboard,and nothing.
      I´ve tried many combinations and it doesn´t work,i don´t know what i´m doing wrong.
      I´ve tried with another board of nano,just to check it´s not faulty.I´m using the right electrolitic capacitor (10uF) at the end in the right position.I´m using a ceramic (100nF)capacitor with 104 written on it,the right resistor (checked with a multimeter)....i´m wiring up the jack mono out correctly....
      I don´t know what to do next.

      thanks again to everyone

      Delete
    6. Something i´m doing is wiring up pins D2-D10 directly to ground ,instead of doing it with switches...but in the same way it should work,right?

      Delete
    7. My electrolitic capacitor is 10uF 50v ,is that the right value?

      Delete
    8. Hey again, first of all don't worry; it might not be fun for it not to work, but hopefully you'll learn why and gain some useful knowledge in the process. I can say for certain the circuit works if it's wired up correctly, so now you just need to go through and find the fault.

      Your last question: My electrolitic capacitor is 10uF 50v ,is that the right value? Yes, this should work fine in the circuit.

      Second: wiring up the pins directly to ground: If you're not following the circuit exactly, then this might be the cause of the problem. I can't remember which way around it's set up, either the circuit is triggered when not connected, or when it's connected. It's possible you have a working circuit but it's set to 'off' (eg the play button is set to 'stop' and all the voices are muted or a mixture of this).
      I guess you have two options here, keep the circuit as it is and play around with grounding and un-grounding the connections (maybe keep half the instrument voices set differently from the other half, so you'll hear something it it starts playing), then concentrate on the different wiring of the play button.
      Or you could just get hold of the switches and set it up with those (if you can only get one switch, connect it up to the stop & start switch... I think it's D2??), and if it still doesn't work, then you'll know the fault is elsewhere. BTW You can get 100 switches from banggood for $3;
      https://www.banggood.com/100pcs-SS12D00G3-2-Position-SPDT-1P2T-3-Pin-PCB-Panel-Mini-Vertical-Slide-Switch-p-1186328.html?rmmds=search&cur_warehouse=CN

      So if it's still not working after that, I'd look to see if the circuit is grounded/powered ok. How have you set it up? On a breadboard? Make sure the ground/5v is connected back to the arduino to complete the circuit (eg, is the ground connected from the breadboard to the arduino).

      Hopefully you should be able to get it to work after this. You could upload a photo to imgur or somewhere & I could try and look for you, but it might be hard to tell from a photo.

      Delete
  17. Mr. Hoskins,i'm so so grateful.
    It works. It works.I tried with a mylar capacitor instead of the cerámic one,and it works perfectly,that was the stupid begginer mistake.
    Thank you for your time and patience. I owe you a beer,a Big Big one.

    ReplyDelete
    Replies
    1. Great stuff, I'm glad you got it working! Cheers!

      Delete
    2. Hi hoskins,i've got my minipops almost finished.
      Something curious happens.It is a little noisy,something like a soft electric whistle.I've soldered a Led on 3.3v pin to non connected pin on "run stop' switch and when i switch it on ,the whistle stops and a little murmur starts....

      Any idea,tip,advice...?

      Delete
    3. Have you included a resistor as part of the LED circuit? Maybe try that first. If not, maybe you're powering it through USB through a computer? Try a decent usb phone charger, that might help filter some of the noise (or a battery)

      Delete
    4. Spot on,once more Mr. Hoskins. I´ve included the resitor into the circuit (i thought powering the lrd with 3.3v it wasn´t needed),and found a better phone charger.No more noise. I don´t know how to express my gratefulness. Thanks again

      Delete
    5. No worries, hopefully I should have some more tutorials for DIY synths in the near future. Cheers!

      Delete
  18. Great ! I’m italian sorry for my bad english !
    I built a minipops with your tutorial and everythings work perfectly !!! Many many many thanks !!! But please update midi output clock code
    I try to Made myself but brrrrrrrrrr.
    Pleaseeeeeeeee !

    Thank you in any case

    ReplyDelete
    Replies
    1. Hey Fabrizio... send me an email; gary909 at gmail dot com

      Delete
  19. Hi Mr.Hoskins again,
    I've been playing with my minipops and i'm so proud of it. I wouldn't have got it without your help.
    Now i'm messing around the clock out. I connected a wire directly to pin d13 (+) and another one to ground (-),both to a minijack socket. It syncs with my tb03 ,but the signal,as i see it,is not so clean. It sounds perfectly with my bassline,it gives swing and personality to the sound,but i'd like to enhance it.
    Any ideas...maybe should i include any resistor to the circuit?

    Thanks in advance

    ReplyDelete
    Replies
    1. By the way...son i will try to implement midi,i have the code ;)

      Delete
    2. Hey David! I've never used the clock out so sadly I can't give you any advice... I guess it sends a repetitive pulse that other instruments then sync to from pin 13... which then must be connected to the tempo control? You could open the code and see whats happening on pin 13? Maybe you could then change the code somehow? Sorry, I've never looked into this, so it's all a guess! Good luck!

      Delete
  20. Hallo Mr Hoskins,
    thanks!
    I love the Minipops (I have a real Minipops 35)and your little Machine.
    But i have no Idea why my O2 stay on one Pattern?
    I checked the Connections , Voltage on Pins etc...but it is only possible to mute 5 Tones via Muteswitches.
    The Tempo and Pattern-Potentiometers not working.
    The Start/Stop-Switch doesen't work.
    I would so gratefull for any Idea!

    Best Regards
    Mike

    ReplyDelete
    Replies
    1. mhh...i can control the Arduino only with the Monitor-Funktion, but not with the Switches Pots etc.

      Delete
    2. Hey Mike, Can you confirm the arduino has worked with other projects? Could be a problem with that, or maybe the switches etc?

      If you can mute 5 parts, then those switches you can assume work ok, so maybe move a working one to a non-working part, if it works there then the problem was the switch, if it doesn't work, then the problem could be arduino port.

      Are you using Log or Linear pots? I'd double check that; Log pots will give 'jumpy' results.

      Maybe build small circuits with some of the parts to confirm they are working (eg a light dimmer with an on/off switch and swap out all the parts with that)

      Hmmm... Are you using an Arduino on a breadboard (eg you've built the arduino from seperate parts?)? If you've done it this way, the pin out numbers are different from those found on a purchased arduino. Google & compare 'arduino pin out' with 'atmega328p pinout'.

      ...If you're using a arduino Uno and not a Nano, double check with google to see if the pin outs on these are the same.

      How did you add the code to the arduino? Copy & pasting can give errors (it adds extra HTML info etc)... try to find the downloadable .ino(I think that's what it is anyway). Use an online code comparison site (google 'code compare') to see that your code matches exactly. Try using different browsers if it's different, or paste it into a notepad file first (I think notepad strips the extra HTML info, but I could be wrong).

      ...Apart from that you can only really check the connections again. Sometimes it helps to re-build it from scratch? I can confirm the circuit works though, so keep trying.

      Best of Luck!

      Delete
    3. Okay..the Mute-Problem is fixed...it was a Pattern with only 5 Voices..;o)
      All Pattern are present and i can mute all Tones if i like.
      I checked with an LED the analog-read-inputs and the Current goes korrekt to A4 and A5.
      Then i opened the Arduino ide and run the Monitor.
      It is possible to changed Pattern, Tempo...all my losing Funktion via the Monitor with "j,k, f,d, and Space", but i see no analog read on the Monitor if i turned the Potentiometers.
      In the Scetch is only a serial-in at "A0".
      Where's the analog 4 and 5?
      Is it possibble, that i get a wrong Scetch without the Potentiometer Options?




      Delete
    4. Yeahhh...everything is okay!!
      In the scetch was a little Mistake...it was missing a semikolon..,o)
      Thanxs, very mutch for your Support!

      Delete
    5. Hey Mike, glad you got it working!

      Delete
  21. Hello there, thank you for sharing this project and for answering literally all questions, youve got quite the endurance.

    Id like to ask you if theres a way to START and STOP the drum machine, because as it is, it just runs forever, you just mute it.

    Another question is if theres a way to make the patterns longer, like not 16 steps but 32 or more, or 10, 13, etc.

    Also, the part where you discussed the possibility to add our own samples is very interesting, did you get any further on that? Cheers

    ReplyDelete
    Replies
    1. Hey! Thanks for the kind words, I try and help because I remember what it was like to spend hours working on something and for it not to work... In fact it's still a fairly common occurrence! Just remember though, Jan Ostman created the project (and all the code) and I only posted some easy to follow instructions (so take everything I say with a grain of salt!).

      There's already a start/stop switch on Pin D10 (I think), and you could also easily add an on/off switch by putting a spdt switch on the red cable of the battery.

      I guess you could increase the steps, but that would involve re-writing the code... Have a look at line 72 to 351 on the code pasted on Jan's website.

      Possibly it's limited to 16 steps due to memory capacity though, I'm not really sure because I haven't tried. On line 72 increase 'patlen' to maybe [32], then double the pattern parts listed below that. You never know it might work! At least that's where I'd start of I was attempting it. Just keep an eye out when you compile it... I think the memory was already at 97% full.

      Most of that memory is used on the audio samples (found from lines 353 to 632 in the code... The longer numbers in the instruments list means its using more memory)... Which brings us to your last question...

      It should be fairly simple to replace the audio samples, once you've converted them in audacity (there's a link somewhere in the comments I believe linking to a tutorial), then copy and paste those numbers in place of the old ones... Be aware though, something like a 808 bass drum would be too large to fit in the memory, so you'll either have to use other very short samples, or use a different/more powerful Arduino (mega or the like), but then you'll have to ammend the code so it works with the new board (the pin outs etc aren't the same).

      ...could be a great project though! I'd start with adding new samples, then once that is working, start playing with the pattern length.

      Anyway, my programming skills are awful, so I might be completely wrong with the above advice, but by playing around with the code you might get it working, or at least learn something from it.

      Hope it goes well.

      Cheers!

      Delete
    2. Hello there! Thank you for your reply. I replied when i was fit for understanding what you wrote lol. I went back to this project and its a little cool machine. I found the samples really come alive with a bit of reverb and such stuff, as they are they are super dry and hard to the ears, so they need some makeup.

      I think ill upload bigger samples but less instruments, that will make for the extra space needed.

      And now a question ive got, is there a way to control with a toggle switch the sample rate at which the instruments are played back? I mean, what could be the way to tell the arduino to change the playback sample rate in real time with a potentiometer or toggle? Im thinking toggle its easier, because it involves just 2 options, but what do i know lmao cheers!

      Delete
    3. If memory wasn't so limited you could probably just use different samples of the same instruments, then use an 'If' statement to choose between them, eg If switch high; play this sample, else; play low quality sample. Saying that, I've never tried it so you should certainly give it a go, choosing the sample quality with a potentiometer would also be cool, I'm not sure where you'd start with that though. I'd google for similar projects and see what code other people have used and then incorporate it into the drum machine code. Good luck!

      Delete
  22. andrew.e.sloan@gmail.com22 June 2018 at 14:03

    Hi there I made it and am so happy with it.
    I would really like to know if what I am writing here is really true or if it is total rubbish... it works for me!!!!!
    I had a slight problem now maybe I am wrong and have copied things wrongly> I all ways seem to have the daftest things happen to me!!!
    SO when I upload the code fron Jan's site I have no trig signal.
    I traced this down to the trig off pulse beinn not at the right level in the if routine brakets.
    I found if I moved up a level the digitalwritefast(13,LOW) like this

    samplecntBG2=1136;
    }
    if (trig & 128) {
    samplepntGU=0;
    samplecntGU=2816;
    }
    digitalWriteFast(13,LOW); //Clock out Lo
    Serial.print("13off");
    }
    }

    }
    Then my trig output works.

    ReplyDelete
    Replies
    1. Hey Andrew, Thanks for stopping by. Programming is not something I'm very good at so I couldn't really give you a definitive answer! But looking at that section of code it looks like it's made up of 'if' statements (aka 'if this is true do this'), so it's possible the code is functioning ok with line moved up, as long as the statements still hold true. As to why it didn't work in the first place, perhaps you copied & pasted the code and the browser you were using added some extra formatting? But at least you got it working! Thanks!

      Delete
  23. How can i convert a WAV sample to Data?
    I tried with 'sample export' in the Audacity and no success
    Thanks a lot for this work!

    ReplyDelete
  24. Hi Dave, I've not tried it so sadly I don't know. Somebody had posted a link somewhere on this blog with a tutorial, hopefully that will help you. Just be aware the Arduino memory is tiny, so you'll have to use very short samples. Thanks

    ReplyDelete
  25. Hello, I am very interested in giving this a try but I have never messed with electronics and to be quite honest, I can barely understand the schematics due to my lack of knowledge in this field. Do you have any recommended material I should study before I try & build this so I wont make any silly mistakes?

    If I can successfully build this, I really want to give the synthesizer a try!

    Thanks!

    ReplyDelete
    Replies
    1. Hey! Luckily there`s millions of tutorials on the internet covering everything you could possibly need... just search `arduino tutorial` on youtube and you`ll be good to go. A good place to start is to do the arduino blink sketch (where you flash a light built into the arduino), then do the same sketch with with an external LED and resistor. From there its not a giant leap to build the drum machine. The drum machine itself is a really easy build and you`ll learn a lot by just trying and eventually getting it to work. Maybe build it on a breadboard before you solder it, but apart from that just dive in and try. If you prefer books `Make: Electronics` by Charles Platt is highly recommended. Good luck!

      Delete

Say something...