Desk Mat to MIDI Drums

by Cybercraftics in Circuits > Arduino

1186 Views, 16 Favorites, 0 Comments

Desk Mat to MIDI Drums

Screenshot 2024-11-15 at 2.54.31 AM.png
Screenshot 2024-11-14 at 4.57.37 PM-EDIT.jpg
I Made MIDI Desk Drums

I've always dreamed of having a drum set at home, but space, noise, and cost were always challenges. So, I decided to build my own compact, desktop MIDI drum set that’s USB-powered and responsive to every hit!


I'll take you through my entire journey of creating these DIY MIDI drums—from using piezo sensors to designing the layout with 3D printing and coding it all with Arduino Leonardo.


This setup works seamlessly with programs like GarageBand, Ableton, and more. Join me and discover how you, too, can have a drum set that fits right on your desk!

Supplies

Electronics

  1. Arduino Leonardo (or other Arduino models with the ATmega32U4 chip)
  2. 7 x Piezo Sensors (35mm in diameter for stronger signal capture)
  3. 3D-Printed Plates and Drumsticks (STL files included)
  4. 7 x 1MOhm resistors
  5. Prototype soldering board


Mechanical Parts

  1. 2 x Desk Mats (two: one for placement, one for impact absorption) Software
  2. Multicolor Ribbon cable
  3. 14 x Screws (2.3 × 9.5 mm)
  4. KW12-3 Micro Roller Lever Arm Switch
  5. Sandpaper (for the Bass pedal grip)


Tools

  1. 3D Printer
  2. Utility knife 
  3. Ruler and pen for precise measurements
  4. Universal Glue (flexible, for attaching components)
  5. Hot Glue for attaching cables and plates to the mat


Software

  1. MIDI Software (Apple’s GarageBand, Ableton, Logic Pro, etc.)
  2. USB-to-MIDI Bridge (optional) Hairless if working with an Arduino model featuring a chip other than the ATmega32U4
  3. Arduino IDE for uploading code

Print the 3D Models

  1. There are no special requirements. I used the standard 15% infill for all parts.


Cutting and Shaping the Main Mat

Screenshot 2024-11-15 115825.png
Timeline 1_01_02_40_20.jpg
Timeline 1_01_02_45_03.jpg
Timeline 1_01_02_53_03.jpg
  1. Mark the Mat: Use a ruler and pen to outline the areas you need to cut. Each one should match the diameter of one of the three patterns (DrumPatternBig.stl, DrumPatternMiddle.stl, DrumPatternSmall.stl). You could use my layout shown on the picture or do your own arrangement.
  2. Cut the Pieces: Carefully cut along the markings using a utility knife or scissors. Ensure the edges are smooth to fit perfectly.

Cut the Underside Pieces From the Second Mat

C1040_22_30_33_03.jpg
Timeline 1_01_03_36_02.jpg
  1. Mark the Mat: Use a ruler and pen to outline the areas you need to cut. Each piece should match the diameter of one of the plates.
  2. Cut the Pieces: Again, carefully cut along the markings using a utility knife or scissors.

Build the Drum Pads

C1034_21_58_32_01.jpg
C1032_21_54_01_00.jpg
Timeline 1_01_03_29_00.jpg
Timeline 1_01_04_06_14.jpg
Timeline 1_01_04_13_08.jpg
Timeline 1_01_04_19_00.jpg
Timeline 1_01_04_21_18.jpg
  1. Glue the Cut-Out Pieces to the Top Side: Attach the cut-out pieces from the first mat to the drum pad using universal glue. Opt for a glue with some open time to allow proper positioning of the mat. Instant glue, for example, is not suitable. In my video, I followed the instructions and pressed the two sides together after the universal glue had partially dried, but the process wasn’t smooth. If I were to do it again, I would position the cut-out pieces immediately after applying the glue.
  2. Attach Piezo Sensors to Plates: Use hot glue to attach each piezo sensor directly underneath the plate in the slot.
  3. Attach the "Pressure-Making" Piece: Use hot glue to secure the "pressure-making" piece to the piezo speaker.
  4. Glue the Cut-Out Pieces to the Bottom Side: Attach the cut-out pieces from the second mat to the underside of the plates using hot glue.

Place the Drum Pads

Timeline 1_01_06_36_21.jpg
Timeline 1_01_06_42_01.jpg
Timeline 1_01_06_47_15.jpg
  1. Place the Drum Pads: Position the drum pads inside the cut-out sections.
  2. Secure the Mat: Use hot glue to fasten the mat securely into the slot.

Wire the Drum Pads

Timeline 1_01_07_51_11.jpg
Timeline 1_01_07_57_19.jpg
Timeline 1_01_08_10_14.jpg
  1. Secure the Cable: Use hot glue to attach the ribbon cable to the mat.
  2. Solder the Drum Pads: Connect the drum pads to a multi-band ribbon cable by soldering them.

Make the Arduino Shield

MIDI_drums_wiring.png
C1049_23_08_50_07.jpg
C1051_23_11_44_19.jpg
C1048_23_04_42_04.jpg
C1098_01_13_25_17.jpg
Timeline 1_01_07_10_22.jpg
C1102_01_18_56_20.jpg
C1114_01_56_37_08.jpg
C1122_02_18_47_14.jpg
  1. Create Arduino Shield: Follow the schematic to create the Arduino shield on a prototype board.
  2. Place the Arduino: Insert the Arduino with the shield into the enclosure.
  3. Secure the Arduino: Before inserting the pins of the shield into the Arduino, secure the Arduino board using screws.
  4. Connect the Shield to the Pads: Solder the shield's output cables to the pads' cables.

Assemble and Solder the Bass Drum Pedal

Timeline 1_01_08_27_04.jpg
C1127_02_24_13_20.jpg
C1129_02_28_15_12.jpg
Timeline 1_01_08_33_11.jpg
C1130_02_30_53_06.jpg
C1137_02_39_03_17.jpg
  1. Prepare the Cable: Cut a two-wire cable long enough to reach from your drum pedal to your desk height.
  2. Solder the Switch: Solder the switch to the ends of the cable.
  3. Secure the Switch: Attach the switch to the pedal with screws.
  4. Add Sandpaper for Grip: Cut sandpaper to fit the slots on both sides of the pedal and glue it in place for better stability while using the pedal.
  5. Connect the Pedal: Solder the other end of the cable to the Arduino shield.

Fasten the Arduino Enclosure to the Mat

C1138_02_39_17_22.jpg
C1140_02_44_08_19.jpg
  1. Secure the Arduino: Use four screws to attach the Arduino to the mat, aligning it with the top part as shown in the picture.

Install the Arduino Code

  1. Upload the Code: Upload the code from the GitHub repository to the Arduino.