Close
0%
0%

DrumKid: aleatoric drum machine

A lo-fi digital drum machine which uses randomness to create unpredictable beats. Runs on Arduino, with audio provided by the Mozzi library.

Public Chat
Similar projects worth following
DrumKid is an "aleatoric" drum machine, meaning it uses random numbers to determine the rhythm and sound of a drum beat. It comes in a handheld, battery-powered unit, designed for live performance. Check out the video here: https://www.youtube.com/watch?v=pyN_HQfCtoQ

PLEASE NOTE: The latest files for this project, including updated breadboard layout and BOM, can be found at https://github.com/mattybrad/drumkid - as of May 2020, production has started. I'll be selling DrumKid either assembled or as a kit as soon as possible :)

Drum machines are ubiquitous in modern music, but playing them live presents a challenge. When playing electronic rhythms live, whether using a drum machine or a laptop, it can often appear that a musician is simply pressing "play" on a backing track, removing much of the perceived spontaneity of a live performance.

My drum machine, DrumKid, aims to tackle this problem by using a variety of controls to alter a drumbeat live, using randomly generated drum hits which augment the original beat. Rather than being designed as a pre-programmed backing instrument, DrumKid aims to be a playable instrument in its own right, with continuously adjustable controls that work well in a live setting. My intention was to create an engaging, interactive device that, like any musical instrument, can be mastered over time with practice.

DrumKid has the following features:

  • 4 real-time control knobs
  • 20 controllable parameters
  • Save/load function
  • Tap tempo
  • 3.5mm line/headphone output
  • Lo-fi mono 8-bit sound
  • Powered by 3xAA batteries

DrumKid is an open-source, hackable product based around an ATmega328 chip, as found in an Arduino Uno. The final product features a minimalist design consisting of a single PCB with buttons, knobs, and LEDs mounted on one side, and all other components mounted on the other side. Two laser-cut sections are used to protect the electronics.

I have made several identical fully working prototypes of DrumKid, and I am happy with the audio quality, playability, aesthetics, durability, reliability, and battery life. These prototypes have been distributed to musicians in the UK who have been giving me feedback on the current design. I am currently using this feedback to tweak the firmware and PCB layout for what I hope will be the final design. DrumKid should be available to buy soon - you can sign up to my mailing list if you want to be kept up to date.

DrumKid can also be constructed as a breadboard/stripboard project using an Arduino Uno - see the build instructions for details.

All necessary files can be found on this page and/or the DrumKid GitHub repository.

Adobe Portable Document Format - 31.67 kB - 09/30/2019 at 11:02

Preview
Download

Adobe Portable Document Format - 38.19 kB - 09/30/2019 at 10:27

Preview
Download

DrumKid BOM (bill of materials).pdf

Bill of materials for a single DrumKid unit

Adobe Portable Document Format - 52.92 kB - 09/30/2019 at 08:29

Preview
Download

drumkid laser parts.dxf

DXF file for the two laser-cut parts of DrumKid. Designed to be cut from 3mm acrylic or plywood. Adjust the drawing for your laser cutter - text should be engraved, all other lines should be cut.

AutoCAD DXF - 28.72 kB - 08/22/2019 at 09:49

Download

drumkid breadboard.png

Illustration (in Fritzing) showing how the breadboard version of DrumKid is assembled - refer to breadboard schematic for capacitor values and clearer wiring

Portable Network Graphics (PNG) - 448.21 kB - 08/22/2019 at 09:45

Preview
Download

View all 8 files

  • Getting ready for production

    Matt Bradshaw04/23/2020 at 12:50 4 comments

    Lockdown has freed up enough time for me to make some serious progress with DrumKid! Version 6 is now working beautifully. Using an Arduino Nano was a good decision, as it simplifies the assembly process, and the total parts cost for a single DrumKid is still only £21 (when buying a decent number of each component), which is great.

    I've now ordered enough components to build about 30 DrumKids. The design is still broadly similar to the one in the videos, but I've added more printed info to the front panel (e.g. what each button does) and made the whole unit 5mm thicker (to allow the Arduino Nano to fit inside, and with the added benefit that it's now slightly comfier to hold).

    The final version (for now) will actually be V7, because I made a couple of tiny tweaks to the PCB design before ordering a larger quantity, but to all intents and purposes, this is what DrumKid will look like when it goes on sale:

    Hoping to start selling via Tindie in May or June.

  • Simplification

    Matt Bradshaw03/30/2020 at 09:17 4 comments

    After a little hiatus, this month I put a lot of time into getting DrumKid closer to the finish line. I had a moment of clarity, where I realised a few things simultaneously:

    1. DrumKid couldn't really call itself "hackable" without an easy way of reprogramming the chip
    2. DrumKid had too many features and was running slowly/unreliably as a result
    3. The circuit had too many components and was going to be a pain to assemble each time

    Suddenly I knew what I had to do:

    • I replaced the ATmega328 chip (and its accompanying components) with an Arduino Nano, allowing users (and me!) to easily reprogram DrumKid
    • I rewrote the code from scratch, brutally eliminating several of the features until the Arduino was no longer struggling to run the sketch
    • By making the sketch simpler, I was able to increase the audio rate, which meant I no longer needed to filter out the PWM carrier signal, which simplified the circuit
    • By not having a filter in the circuit, I no longer needed to amplify the audio signal, meaning I could simplify the circuit even further!

    The upshot of this is that I now have a design that works better, sounds better, and will be easier to hack. This new design is version 6, and if I'm lucky will be the first version that I can actually sell. I've ordered some prototype PCB's, and have uploaded a new breadboard design to GitHub (see below).

    I'm currently fine-tuning the code and updating the manual. Very excited to be nearly done!

    In other news, I'm learning how to design and order ready-assembled PCB's with surface mount components, so that I can build more ambitious projects in future and minimise the amount of soldering I have to do. My hope is that the next version of DrumKid (if there is enough demand to warrant another new design) will make use of surface-mount LED's, resistors, capacitors, diodes, and optoisolators, thereby making assembly much easier for me, and freeing up space on the board so I can perhaps reduce it back to its original, smaller size (V6's MIDI ports mean it is a couple of cm longer than V4, and I don't think it's quite as aesthetically pleasing!).

  • Nearly nearly nearly

    Matt Bradshaw01/09/2020 at 11:20 4 comments

    This is a quick post to let people know that this project is still alive. I had to put development to one side for a few weeks so that I could a) earn some money, and b) build a big shed in my garden so I've got somewhere better to work in the future.

    However, I can report that the audio code is working better than before, with a couple of exciting new features, and MIDI in/out seems to be working nicely too.

    I may have missed my wildly optimistic deadline of a November 2019 release, but at least now I've missed it by so much that I'm free of its (silly, self-imposed) pressure ;)

    Excited to show off the "final" version here when it's done...

  • V5 problems solved

    Matt Bradshaw11/21/2019 at 16:44 1 comment

    After some forensic investigation, I have identified (and, I think, solved) my two remaining issues with the V5 PCB, but I would be grateful for any feedback about my MIDI solution.


    Problem 1:

    The sound is too bright (too much carrier frequency remaining in audio output)

    Reason:

    This one was pretty dumb. I'm using the twin-T notch filter design from the Mozzi website but I made a mistake transcribing this circuit into my schematic, meaning that two of the capacitors have switched places.

    Solution:

    I (clumsily) desoldered C3 and C7 and swapped them over. The audio output now sounds fine.


    Problem 2:

    Connecting a MIDI input results in audible tones and clicks through the audio output.

    Reason:

    Something to do with grounding or decoupling? It feels as though the MIDI input's optoisolator (a 6N138) is perhaps being a bit heavy-handed with its use of the available electricity (please don't disqualify me from the site for this appalling lack of understanding).

    Solution:

    After lots of googling, I stumbled onto this seemingly similar problem and decided to whack a big (1000uF) capacitor across the 6N138's power and ground. I tried smaller values but to no avail. I suspect that adding a smaller (but still big-ish) capacitor to the LM386 and also maybe the ATmega328 might be a better solution, but I've already made a mess of the PCB! For now, the noise is virtually gone, so I'm calling that a win.

  • V5 PCB almost working

    Matt Bradshaw11/15/2019 at 13:10 9 comments

    The fifth iteration of the DrumKid PCB arrived from China this week, and I'm pleased to report that it pretty much works! I had changed and added quite a lot since V4, so there were always likely to be a few problems, but overall I'm pretty happy.

    Assembly was made much easier by including the resistor and capacitor values on the silkscreen layer, which I didn't do in V4. However, I forgot to identify a few other components and polarities on the silkscreen layer. This isn't a big deal when I've got the KiCad files to refer to, but worth fixing on the next version, especially if I'm going to make DrumKid available as a kit.

    The two main problems I ran into were related to two of the biggest changes I made. I significantly altered the low-pass filter on the audio output to try and remove more of the PWM carrier signal, but I'm not sure I've done it correctly - the audio sounds much brighter than I was expecting, and has some issues at full volume (possibly related to running off batteries rather than a 5V USB supply).

    Another problem is that when a MIDI input is connected, each MIDI signal causes an audible click, or a loud tone, in the case of MIDI clock messages, which are sent very frequently. I had come across this issue on my breadboard prototype but assumed it was just due to the inadequate ground of the breadboard. I was wrong! I'm currently experimenting with a decoupling capacitor on the optoisolator to solve this problem.

    Oh, and one final, stupid mistake I made: I added a power LED so that it was obvious when DrumKid was on, but somehow managed to connect both legs of the LED to ground in the layout. Clearly KiCad's "electrical rules check" doesn't check for that...

    So, overall, a bit of a mixture of good and bad, but that was probably to be expected for a fairly major revision of the design. It's certainly going to delay the release (I've tried to remove mentions of a November release date from the web where possible!). I'll see what I can do to fix the issues by hacking this PCB, then design and order a minor revision ASAP.

    I always knew that this project would be a learning process. I was attempting to jump from having minimal PCB design skills to releasing a reasonably complex product with a mixture of analogue and digital circuitry, so although I did initially get a bit cross at V5 for not being perfect, I'm philosophical about it - we're getting there!

  • New PCB (V5) Design

    Matt Bradshaw11/05/2019 at 13:47 0 comments

    Have finished designing a new PCB, the fifth iteration since I started the project. I'm waiting for it to arrive from China, but here's roughly what it will look like:

    The overall footprint is a little longer to make room for the MIDI ports, there's more info included on the silkscreen layer, there's an extra LED to show when the power is on, the volume and power controls are now aligned with the audio output, and there are a bunch of boring changes to the component layout on the other side. Oh, and everything is red now.

    I've also ordered some black nylon knurled thumbscrews to allow the batteries to be changed without needing a screwdriver.

    Meanwhile, coding continues, and I've sent a V4 prototype to Pasadena for Supercon. I won't be there, but hopefully DrumKid will!

  • MIDI and Sync

    Matt Bradshaw10/14/2019 at 15:10 0 comments

    After getting lots of feedback, I'm attempting to add MIDI to DrumKid. Many people have expressed a hope that DrumKid would feature the ability to synchronise with other instruments, and I've decided that MIDI is the best way to do this, because this also gives the option of using DrumKid as a MIDI controller, thereby greatly expanding its capabilities.

    (For the uninitiated, MIDI stands for "musical instrument digital interface", and is a type of serial connection which allows musical instruments to send data to each other, such as notes, timing, and other controls.)

    Outputting MIDI note data from DrumKid was very easy, and instantly convinced me that MIDI was a vital feature which had been missing all along - I was suddenly able to produce a much wider variety of sounds by triggering other drum machines' samples. However, generating synchronisation data has proven much harder. The MIDI "clock" standard requires a byte of serial data to be sent 24 times per quarter note. Had I thought about this from the outset, I probably wouldn't have designed my code around an arbitrary division of 16 pulses per quarter note, because these two divisions are basically incompatible! I was able to get my Korg synth to sync up with DrumKid, but only at lower tempos, and not with any great reliability.

    After several hours of trying to fudge the code, I decided it's time for a major rewrite. The code had become bloated and messy, and I was pushing right up against the RAM limit anyway. Now that I'm 90% sure that DrumKid will feature MIDI, I'm going to incorporate it properly, rather than as an afterthought.

    The next GitHub update might be a pretty major one!

  • The "Final" Stretch

    Matt Bradshaw09/30/2019 at 15:49 0 comments

    Well, the Hackaday Prize final deadline is tomorrow, and I think I've squeezed as much progress out of DrumKid as possible in that time! I thought it would be nice to reflect on how far the project has come since it began.

    • February
      • Started exploring the idea of converting my DrumKid web app into a physical project
      • Got some good sounds from early breadboard prototype
    • March
      • Experimented with voltage regulator chips
      • Designed V1 PCB
    • April
      • Assembled V1 PCB (which worked, but was too quiet and had noise issues)
      • Designed and 3D-printed a case
      • Decided to increase number of potentiometers
    • May
      • New stripboard prototype to diagnose problems more rapidly
      • Added filter circuit
      • Designed V2 PCB
      • Hackaday Prize mentoring session
    • June
      • Rethinking the enclosure design
      • Designed V3 PCB
    • July
      • Assembled V3 PCB, instantly found routing issue
      • Designed V4 PCB (minor revision)
      • Designed and 3D-printed front and rear panels, to be laser-cut in final version
      • Sourced test laser-cut pieces (success!)
      • Assembled V4 PCB (success!)
    • August
      • Concentrating on coding
      • Added lots of features
      • Made demo video
    • September
      • Found local laser cutter and obtained enough pieces for three new (identical) V4 prototypes
      • Did a "test run" of assembly, successfully built three new units
      • Distributed DrumKids to testers
      • Received feedback from testers
      • Started V5 PCB design

    And that takes us up to today! I'm really pleased with where I've got to, and am excited to complete the V5 PCB design over the coming days. Good luck to all the other Hackaday Prize finalists, and if anyone wants to be kept updated about DrumKid's launch later this year, please go to mattbradshawdesign.com and sign up my mailing list.

  • A Look Inside

    Matt Bradshaw09/30/2019 at 13:43 0 comments

    Here is a selection of photos showing the inside of the current version of DrumKid.

    This is what DrumKid looks like after soldering but before assembly
    This is view after removing DrumKid's rear panel - note the Arduino/ATmega328 breakout pins to allow users to modify the instrument. Also note the unpopulated spaces for capacitors - these were included in the PCB layout in case they were needed for decoupling, but only one smaller capacitor (C4) ended up being necessary - these spare footprints will be eliminated from the next PCB
    The front laser-cut panel covers the soldered leads of the components. You can also see evidence of the modification I had to make due on this prototype due to an error in the schematic (this will be fixed in the next version)
    The battery box is mounted using two countersunk machine screws, which are secured on the other side with dome nut
    And here's how it's all assembled

  • How Open Source?

    Matt Bradshaw09/30/2019 at 11:54 0 comments

    This is a brief post where I will discuss exactly how open source DrumKid is (spoiler: as open source as I was able to make it).

    My aim from the start of the DrumKid project has been to create a fully open source instrument, in terms of both hardware and software. I based the design on the Arduino platform, which is itself open source, and have shared all my schematics, CAD files, parts lists, etc under the MIT licence, so it's fair to say that the hardware side of my project is fully open source, which is great.

    The software side is a little more complex. My code (which is also shared under the MIT licence) relies on two external libraries. One library which I make some use of is the ArduinoTapTempo library, which also uses the MIT licence. However, my code is based heavily on the Mozzi audio library, which is shared under a Creative Commons Non-Commercial licence.

    Mozzi is a clever, extensive library that somehow squeezes complex audio out of an Arduino. The creator of Mozzi has (entirely fairly) released his code under this licence so that, while other people can use it to make cool projects, he reserves the right to negotiate a share of the profits if a commercial product makes use of his work.

    I have added a caveat to my GitHub license.txt file to account for Mozzi's licence

    I reached out to Mozzi's creator while I was developing DrumKid, and we quickly came to an amicable agreement about future profits, which means that DrumKid is "good to go" from a legal standpoint. However, it does leave this project in a sort of open source limbo. All the code that I have written is fully open source, and I personally have permission to use all the code that DrumKid relies on, but if anybody other than me started making and selling DrumKids, they would be in breach of Mozzi's licence (unless, of course, they also reached an agreement with its creator).

    If somebody did want to sell DrumKid clones legally, one way would be to eliminate the need for the Mozzi library by "rolling their own" - while I do make extensive use of Mozzi, I only use a small subset of its features, so it wouldn't be that difficult to write some code that performed a similar function.

    Personally, I'm happy to keep using Mozzi and pay a small fee to the developer who made DrumKid possible, but I thought this was an interesting aspect of open source culture: when money starts to get involved, things do get more complex!

View all 32 project logs

  • 1
    Source components

    Please note, these instructions are for version 4 of the DrumKid code/circuit. Version 5 will be available fairly soon.

    The simplest way to get a version of DrumKid working (apart from buying one when it's released!) is to build the breadboard circuit using an Arduino. The components are mainly pretty standard: you'll need a breadboard, jumper wires, an Arduino Uno, tactile buttons, LEDs, 10k potentiometers (linear), an LM386 amplifier chip, and a selection of capacitors and resistors. You'll also need some sort of breadboard-compatible headphone socket - I used a 3.5mm socket with screw terminals which is designed for prototyping like this.

    3.5mm stereo socket (wired as mono) with screw terminals to connect to the breadboard

    I've squeezed everything onto a single breadboard with small buttons and tightly spaced potentiometers, but you might want to consider sprawling over two breadboards, which would allow you to use bigger buttons, making for a more ergonomic playing experience. Using a second breadboard might also give you space to use a breadboard-friendly Arduino variant, keeping the whole project a bit neater, although I haven't tested this.

  • 2
    Build breadboard circuit

    Build the breadboard circuit shown below. Refer to the schematic for capacitor values. There are six push buttons which use the Arduino's internal pull-up resistors, five LEDs with current-limiting resistors, and four potentiometers connected to the Arduino's analog inputs. All these parts of the circuit are fairly standard, and found in lots of basic Arduino examples.

    The more complex part of the circuit is found on the right of the breadboard - this takes the audio output from pin 9 of the Arduino and filters it, before amplifying it. The raw audio output is a PWM output which has quite a lot of unwanted noise (the carrier signal), so I've added a 2nd-order RC filter to clean it up. In doing so, I've removed quite a lot of the higher frequencies, which I'm happy with because of the lo-fi sound I'm aiming for, but if you want to keep more of the high frequencies (at the expense of a noisier signal), you can try different resistor and capacitor values. The LM386 part of the circuit then amplifies the signal. There are many ways to wire an LM386, so feel free to use a different circuit for this if you'd prefer.

    If you just want to play around with DrumKid and aren't too worried about audio quality, you can just connect your headphone socket straight to pin 9 and ground, and omit the the LM386 circuit, filter circuit, and volume control.

  • 3
    Upload Arduino code

    Download the DrumKid repository from https://github.com/mattybrad/drumkid and use the Arduino IDE (software) to open the Arduino sketch found at drumkid/v4/arduino/drumkid/drumkid.ino

    The code relies on several external libraries, so you will either need to install them using the Arduino library manager or from a zip file. Any libraries not available through the library manager will be noted in the code.

    Make sure that the DEBUGGING constant is set to "false", and BREADBOARD is set to "true", then upload the sketch to the Arduino. If all goes well, you should see all five LEDs flash rapidly, after which you can play your breadboard drum machine.

View all 5 instructions

Enjoy this project?

Share

Discussions

piecho3 wrote 05/01/2020 at 19:36 point

Hello, when do you plan to update schemes for the v6/v7?
Awesome project, will use with my eurorack build.

  Are you sure? yes | no

Nicotep wrote 03/19/2020 at 10:27 point

Thanks Matt. Such a brilliant project that only a Nano can host! 

I had strange behaviour while trying to upload : first, only the v6 new would work, but then I saw it didn't have all the functions the previous ones had. Then I went back to v4, which was too big. So I had to change from Tom.h to click.h, saving a few dozen octets.... 

  Are you sure? yes | no

sunny wrote 11/26/2019 at 11:57 point

I ran into trouble. I successfully burned and assembled V5. I didn't install MIDI input and output. I used 4.5V DC power supply. He couldn't make sound, and only the 3rd, 4th and 5th LEDs gave out weak light.Current only 25mA。I tested the voltage of the chip pins. 9.10.11.12 almost no output, 4, 5, 6 have 1.7V output, so the LED can light up, and the 5V input of pin 7 is normal. So I think I used the wrong version of the software?

  Are you sure? yes | no

Matt Bradshaw wrote 11/26/2019 at 14:07 point

That is strange, although I should point out that the firmware is still in development. You should be able to use the V6 software, which I'm working on at the moment (I've abandoned V5 because of the errors with the board, but V6 is basically compatible). Make sure that the the code is set for the PCB, not breadboard (#define BREADBOARD false). It might be a good idea to write a test sketch from scratch so you can see what is working and what isn't. The LED pins should be 6, 5, 4, 3 and 2. The button pins should be 13, 12, 11, 10, 8 and 7. A test sketch should tell you whether the circuit is working, separate from the DrumKid code. If the circuit is not working, you'll have to check your connections. If it is working, you should be able to use the latest V6 code, but it's not finished yet, so be careful! I'll try and make sure to only upload finished, working code to GitHub but I hadn't realised people were going to start making DrumKids before I'd finished the project!

  Are you sure? yes | no

sunny wrote 11/26/2019 at 14:51 point

V6 worked!it's sound good.I think I need some tutorials

  Are you sure? yes | no

Matt Bradshaw wrote 11/27/2019 at 11:30 point

Great! Glad it's working. I would love to see a picture :) I'll add some video tutorials about how to play DrumKid once I've finished the V6 firmware. You could also try uploading the V4 firmware (but changing the pins to match V6), and then use this manual: https://github.com/mattybrad/drumkid/blob/master/v4/manual.pdf

  Are you sure? yes | no

Nicholas wrote 11/21/2019 at 09:45 point

Regarding your MIDI issues.. make sure MIDI IN does NOT have a ground connection (as per MIDI spec.). Would there be a chance of you creating a shield version so it would be possible to use different duino boards? Teensy 4.0 would really open up the range of things this could do.. i2s audio, user samples, more patterns etc. :)

  Are you sure? yes | no

Matt Bradshaw wrote 11/21/2019 at 10:25 point

Thanks Nicholas. I don't think my MIDI input has a ground connection - I'm basing my circuit on this one with a 6N138 optoisolator: https://www.pjrc.com/teensy/td_libs_MIDI.html Presumably the optoisolator does need a ground connection?

The shield idea is interesting. I currently use an ATmega328 because I liked the idea of using the simplest, cheapest possible chip that would do the job, and there's also something perversely satisfying about working within a tiny memory limit, but the complications are starting to mount up. Using an Arduino means that the carrier frequency has to be filtered out, which means I have to boost the signal with an amplifier to get it loud enough for headphones, and just makes the whole circuit quite complex. So, my current vague plan is:

1) Attempt to fix my issues with the current board, including MIDI in

2) If that's difficult, build a Teensy version on a breadboard

3) Create a new circuit board, either using a corrected circuit with an ATmega328 or, possibly, a whole new circuit with a Teensy

  Are you sure? yes | no

ian wrote 11/21/2019 at 02:00 point

Would it be possible to convert the case files into gerbers or .brd format somehow? The laser cutting services seem to cost much more compared to pcb.

  Are you sure? yes | no

Matt Bradshaw wrote 11/21/2019 at 08:45 point

Certainly possible in theory, good idea - I'll try and do it in the next few days if I get the chance

  Are you sure? yes | no

Matt Bradshaw wrote 11/22/2019 at 01:13 point

Had some spare time so I remade the front and back panels as gerbers. The KiCAD files are also online in case you want to tweak the design. I wasn't sure how to do panelisation/v-scoring so the front and back panels are separate files https://github.com/mattybrad/drumkid/tree/master/v4/case/non-laser%20case I found the same as you - laser-cutting small quantities is oddly more expensive than (much more complex) PCB designs. I ended up finding a local maker with a laser cutter who lets me use it for a pretty good price, so if you have a local hackspace/makerspace with a laser cutter that might be another option :)

  Are you sure? yes | no

ian wrote 11/22/2019 at 04:27 point

Thanks a lot!! For the moment PCB cases will be perfect :)  But I will likely house at least one or two in something more creative and artsy. Will share pics and provide the project info for people in posts whenever I am done building.

  Are you sure? yes | no

ian wrote 11/20/2019 at 19:48 point

Very cool, ordered some pcb's and going to build some to gift to friends this holiday. Thanks for sharing your design!!

  Are you sure? yes | no

Matt Bradshaw wrote 11/20/2019 at 19:55 point

Awesome! Would love to see pictures of the finished builds of you get the chance. I'm assuming you've ordered the V4 PCBs (the Gerbers found on this Hackaday page) - if so, remember there's one tiny hack you need to do, involving the amplifier chip - details in one of the build logs! Let me know if you run into any problems :)

  Are you sure? yes | no

ian wrote 11/21/2019 at 01:50 point

Hah yep totally didn't look at the github till too late :P

Thanks for the heads up! Will share some photo's eventually for sure. Keep creating!

  Are you sure? yes | no

Matt Bradshaw wrote 11/21/2019 at 08:42 point

It's good you've got the V4 PCB, V5 still has some teething problems!

  Are you sure? yes | no

sunny wrote 11/11/2019 at 13:05 point

Does V5 use a new circuit design? I ordered PCB, the text above shows that a large number of 200 Ω resistors are used, and diodes are added, which is totally different from the previous BOM. Is that it? We look forward to your release of the latest BOM. By the way. If the original can be designed on the same side as the button, I don't think it needs to be covered by the upper revision. It will show a old school style. After all, your design uses the through-hole original, don't you think?

  Are you sure? yes | no

Matt Bradshaw wrote 11/11/2019 at 13:10 point

Hi, yes V5 is a new design which features the addition of MIDI ports, hence the diode and other changes. Will try and clarify the difference between versions in a post this week and hopefully upload a new BOM soon, although I haven't even received my V5 boards from China yet so I probably won't upload any more V5 stuff until I've tested them!

  Are you sure? yes | no

Matt Bradshaw wrote 11/11/2019 at 15:53 point

I've just updated the GitHub repo to split everything more clearly into V4 and V5, so you can see which parts of V5 are ready. https://github.com/mattybrad/drumkid

  Are you sure? yes | no

sunny wrote 11/13/2019 at 08:57 point

Looking forward to your update,  another question, how to flash the chip?

  Are you sure? yes | no

Matt Bradshaw wrote 11/13/2019 at 10:23 point

I buy ATmega328 chips with the bootloader already installed, then put each chip into an Arduino Uno, upload the DrumKid sketch using the Arduino software, then carefully remove the chip and put it into the DrumKid PCB.

  Are you sure? yes | no

Emmanuel oluga wrote 11/08/2019 at 07:47 point

Hey thank you for this tutorial, Im a beginner and was wondering if a teensy could replace the arduino on this

  Are you sure? yes | no

Matt Bradshaw wrote 11/11/2019 at 13:13 point

Hi,

Yes, you could use a Teensy for this project (it's more powerful than an Arduino) but you would probably have to make some adjustments to the code, so I would recommend starting with an Arduino if you're a beginner, or at least getting familiar with the Mozzi example sketches using a Teensy.

  Are you sure? yes | no

see24ya wrote 10/24/2019 at 16:18 point

Hey, thank you so much! I'm happy! I didn't change the breadboard thing to false. Thanks for your time!

  Are you sure? yes | no

Matt Bradshaw wrote 10/25/2019 at 10:26 point

No problem :) Would love to see pics/video of your build once it's working - I love the fact that other people are building my designs!

  Are you sure? yes | no

sunny wrote 10/23/2019 at 05:20 point

We are looking forward to your PCB update. If you plan to reduce the PCB size to 10 * 10cm, its price will be more friendly.

  Are you sure? yes | no

see24ya wrote 10/01/2019 at 17:06 point

Thanks for updating BOM! It's much clearer now. And thanks for the new photos of the assembled pcb! I will give it a try the next days. Good Luck for the competition!

  Are you sure? yes | no

Matt Bradshaw wrote 10/15/2019 at 11:33 point

Hey, sorry for slow reply, I don't seem to be getting notifications for comments! Let me know if there's anything you're still stuck on. In answer to your other comment (which may or may not have been addressed by the new BOM!), the crystal has to be 16MHz and the pots are meant to be 10k (other values will probably work for the control pots but the volume pot should probably be 10k). CP is a polarised capacitor and C is an unpolarised capacitor - they don't have values because I originally wasn't sure what value of decoupling capacitor to use, I was using the PCB to do some live prototyping! But if you get everything on the current BOM then everything should be fine. I'm actually due to release version 5 of the PCB in the next couple of weeks - it will (probably) have MIDI/sync and a slightly better layout, just in case you wanted to wait :) Oh, and if you've ordered/made the V4 PCB already and are having trouble, please note that there is a little hack required, shown on the schematic (pin 4 of the LM386 needs to be soldered to ground).

  Are you sure? yes | no

see24ya wrote 10/23/2019 at 13:20 point

Hi, I made two PCBs but both of them will not function as expected. When turning on I expect every single led to light up several times for a short time. But only the two leds on the left side do so, the other leds light up permanently. All knobs and switches seem to be without function. No sound. Maybe it will be easier to understand with a photo but I don't know how to post them here... I power it up with a nine volt block. Maybe you can give me hint?

  Are you sure? yes | no

Matt Bradshaw wrote 10/24/2019 at 14:05 point

Hi - it's hard know your exact problem, but I'll suggest a few things! Firstly, the power supply should be 5V, not 9V, so that could be a problem. Another possible solution is to check that you have set #define BREADBOARD false on the second line of the sketch (the breadboard pins are different from the PCB pins). Let me know if you're still stuck.

  Are you sure? yes | no

see24ya wrote 09/29/2019 at 13:52 point

Hey, nice project! I've built the breadboard version with success finally. Now I'm trying to get along with the pcb version 4. First try wasn't successful. There was no sound and weird behaviour of the led's (only the first two seemed to function, the rest were only glowing weakly). I'm wondering if you could be more precise in your bom? For example: the crystal has to be 16 MHz one? What do you mean with postion 12 (the pots have to be 10 k ones?)? What do you mean with CP or C in positon 16 or 19?  I hope that you can help me out....Thanks for your efforts!

  Are you sure? yes | no

Dan Maloney wrote 09/18/2019 at 15:19 point

Glad to see you're making progress on this. And great documentation, BTW!

  Are you sure? yes | no

Matt Bradshaw wrote 09/18/2019 at 15:30 point

Thanks, Dan! Yeah, I'm really happy with how the first batch turned out. Can't wait to see how musicians use them.

  Are you sure? yes | no

Ken Yap wrote 08/01/2019 at 08:35 point

Nice going, looks like the break did you good. 👍

  Are you sure? yes | no

Matt Bradshaw wrote 08/01/2019 at 08:42 point

Thanks :) Yeah, it's going much better now!

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates