Build MIDI Bass Pedals For About 150

Download as pdf or txt
Download as pdf or txt
You are on page 1of 11

technology

workshop

craft

home

food

play

outside

costumes

Build MIDI Bass Pedals for About $150


by vanceg on August 30, 2015

Table of Contents
Build MIDI Bass Pedals for About $150 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Intro: Build MIDI Bass Pedals for About $150 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Step 1: Get the bass pedals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Step 2: Take off the cover and clean the contacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Step 3: Remove electronics and attach wires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Step 4: Add the controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

File Downloads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Step 5: Connect up the pedal switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Step 6: Prepare to program the controller with a test program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

File Downloads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Step 7: Program the controller with a test program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Step 8: Test your hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Step 9: Finish it! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

File Downloads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Step 10: Customize it! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
File Downloads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Related Instructables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Advertisements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

http://www.instructables.com/id/Build-MIDI-Bass-Pedals-for-About-150/

Intro: Build MIDI Bass Pedals for About $150


MIDI bass pedals, similar to pedals organists use to play bass notes, but instead used to play a MIDI synthesizer or sound module, have been popular for the last few
decades. In addition to keyboard players, many electric bass players, such as Geddy Lee of Rush, have used them to expand the palette of bass sounds they use. But
they can be quite expensive.
These were my main costs for building a set of bass pedals:
$35 Bass pedals from a Conn organ bought on eBay
$35 Shipping for the bass pedals
$44 Arduino Mega 2650 R3 controller board
$20 Sparkfun MIDI Shield
$7 9V 1000 mA AC adapter for Arduino boards
_______________________________________________
$141 TOTAL
In addition to these I used some miscellaneous stuff like wire, solder, contact cleaner, tie wraps and cables I already had. A good place to to get the Arduino components
and the MIDI Shield is the Robot Shop.

Step 1: Get the bass pedals


I went on eBay, and literally the cheapest set of bass pedals available looked good to me, partly because it had a strong metal frame. It had been removed from a Conn
home organ, and was $35, with an additional $35 required for shipping it. This is what it looked like when it arrived.
There were lots of sets of bass pedals available which had been removed from Hammond M3 organs that would likely have worked just as well, but they were a bit more
expensive and didn't have the metal frame.

http://www.instructables.com/id/Build-MIDI-Bass-Pedals-for-About-150/

Step 2: Take off the cover and clean the contacts


Upon removing the cover, I could see the mechanism. There was a complex set of springs, all badly corroded. In the closeup, you can see the mechanism furthest to the
left has had the contact cleaned, while the other two have not. You can see how heavily corroded they were.
This set of bass pedals had multiple switches on each pedal, but for MIDI, we will only be using one switch. We will use the top back and top front contact, so that when
the pedal goes down, the spring comes up and touches the front contact.
I used DeoxIT D5 contact cleaner, but I'm sure other contact cleaners would also work. In addition to the contact cleaner, I gently rubbed with the flat part of a slot
screwdriver that was coated with contact cleaner. The part that needs to be cleaned consists of the front contact and the part of the spring that touches it.

http://www.instructables.com/id/Build-MIDI-Bass-Pedals-for-About-150/

Step 3: Remove electronics and attach wires


Clip the wires that go to the pedal switches and remove all the other electronics. The switches are the only part of the original pedals we will be using.
Set up the pedal switches so that one side of each switch is connected to a common bus. This will be connected to ground. The other side of each switch should have a
separate wire that will go to the controller board. I had multiple colors of wire, so I based the colors of wire I used on the resistor color code as shown above, which
helped me keep track of which note was going where.

http://www.instructables.com/id/Build-MIDI-Bass-Pedals-for-About-150/

Step 4: Add the controller


Next I mounted the controller. It is important that the connections on the bottom of the Arduino Mega controller board not touch metal, so I 3D-printed a "coaster" for it.
The STL file for the coaster is attached, but you don't need to 3D print something. Anything that will act as an insulator between the controller board and the metal frame
will work well, such as corrugated cardboard.
The Arduino board has several holes in it. I selected two, drilled 1/8" diameter holes in the coaster and the metal frame, and used standard 4-40 machine screws to
attach it. I had positioned it carefully so the power jack is flush with the end of the pedals, and the USB connector protrudes slightly.
Then I plugged the Sparkfun MIDI shield onto the Arduino, Make sure to line up the RX and Analog 5 pins on the MIDI Shield so they plug into the RX and Analog 5 pins
on the Arduino Mega 2650.

File Downloads

ArduinoMegaHolder.stl (88 KB)


[NOTE: When saving, if you see .tmp as the file ext, rename it to 'ArduinoMegaHolder.stl']

http://www.instructables.com/id/Build-MIDI-Bass-Pedals-for-About-150/

Step 5: Connect up the pedal switches


I plugged a couple of 0.1" header strips into the inner row of sockets on the connector at the end of the Arduino Mega board. I already had them, but if you need to get
some, you can order them from Adafruit.
I then soldered the wires from the pedal switches to the header pins. Above is a list of the wires and the digital pin numbers they connect to. The digital pin numbers are
silk screened onto the Arduino board next to the connector. Do not solder to the very top pin, as it has +5 volts, and is not a digital pin, and bad things will happen if you
short it to ground.
Also, connect the bottom pin, which is ground, to the common bus where one side of each of the pedal switches is connected together. I used a black wire for this one.
That's it! You are all wired up!

Step 6: Prepare to program the controller with a test program


You will need a computer to do this. The software you need is free, and is available for Macs, Windows and Linux machines. You can download it at this page: Arduino
Software
Once you have the Arduino software installed and launched, extract the Bass Pedal Test program from the attached BassPedalsTest.zip file. In the Arduino software,
click the menu File->Open and select the directory named BassPedalsTest, which is what you extracted from the zip file. Click the Open button in the file dialog. At this
point, it will look similar to what is shown in the top picture above.
You will also need to get a USB cable, one with an A-type connector (to connect to your computer) and a B-type connector (to connect to the controller), as show in the
bottom picture above.

http://www.instructables.com/id/Build-MIDI-Bass-Pedals-for-About-150/

File Downloads

BassPedalsTest.zip (893 bytes)


[NOTE: When saving, if you see .tmp as the file ext, rename it to 'BassPedalsTest.zip']

http://www.instructables.com/id/Build-MIDI-Bass-Pedals-for-About-150/

Step 7: Program the controller with a test program


Before proceeding, flip the switch circled in the top photo on the Sparkfun MidiShield to the "PROG" position. It must be in this position for the controller to be
programmed.
Use the USB cable indicated in the previous step to connect your computer to the controller. The USB cable will supply power, so you do not need to plug a power supply
into the controller at this point.
If you are on a Windows machine, your computer will automatically install a necessary driver for the controller board. If installation fails (as it sometimes does), just unplug
the USB cable, wait a few seconds, and plug it in again. The installer will launch again. Macs and Linux machines don't need a driver installation.
With the controller connected (and the driver installed if on Windows), next we will configure the Arduino software. With BassPedalsTest loaded from the previous step,
select Tools->Board->"Arduino Mega or Mega 2650". Then select Tools->Port, and pick "Arduino Mega orMega 2650" from the list of ports. The software is now
configured to program the controller.
Press the right arrow icon in the top left of the window. The program will compile and then be uploaded to the controller.

Step 8: Test your hardware


With the controller still connected and the Arduino software still running, select Tools->Serial Monitor. A new window will appear. If it is not set for 9600 baud at the
bottom, change it to 9600 baud. Press the small reset button on the Sparkfun MIDI Shield. A line saying "Setup Complete" should appear on the Serial Monitor.
Press a bass pedal. A message saying "Note On:" followed by the corresponding MIDI note number will appear on the monitor. When you release the bass pedal a
message saying "Note Off:" followed by the corresponding MIDI note number will appear on the monitor.
Press each bass pedal in turn, and ensure that the correct note number appears. If the wrong number appears or one of the bass pedals does not produce an output,
check your wiring. A list of MIDI note numbers for each pedal is included above.

http://www.instructables.com/id/Build-MIDI-Bass-Pedals-for-About-150/

Step 9: Finish it!


Extract the Bass Pedal Run program from the attached BassPedalsRun.zip file on your computer. Make sure the controller is attached via the USB cable to your
computer. Run the Arduino software (if it is not already running). Make sure the RUN/PROG switch on the Sparkfun MIDI Shield is set to the PROG position. Press the
small reset button on the MIDI Shield.
In the Arduino software, select File->Open. In the file dialog that appears select the BassPedals1 directory you extracted from the zip file, and click the Open button. A
new Arduino software window will appear.
Press the right arrow icon in the upper left of the new window. The real program to run the bass pedals will compile and download onto the controller.
After it completes successfully, unplug the controller from the USB cable. Flip the RUN/PROG switch on the Sparkfun MIDI Shield to the RUN position, and plug the
Arduino power supply into the controller. Plug a MIDI cable from the MIDI Out jack on the Sparkfun MIDI Shield to the synthesizer or sound module you want to control.
You can now play your bass pedals!

http://www.instructables.com/id/Build-MIDI-Bass-Pedals-for-About-150/

File Downloads

BassPedalsRun.zip (1 KB)
[NOTE: When saving, if you see .tmp as the file ext, rename it to 'BassPedalsRun.zip']

Step 10: Customize it!


Attached is a document describing ways to customize the controller software. You do not need to be a computer geek to do most of them; you just need to make simple
edits to the program and re-load the program into the controller.

File Downloads

CustomizingBassPedalSoftware.pdf (302 KB)


[NOTE: When saving, if you see .tmp as the file ext, rename it to 'CustomizingBassPedalSoftware.pdf']

Related Instructables

Arduino Midi
Foot Pedal by
robtoole

Convert
Rockband
Controller to
MIDI Drums by
EvanKale

Arduino MIDI
Foot Pedal
Keyboard by
roycetaft

Easy MIDI Bass


pedals by
AllstonMa

Arduino Air
Drums by
PoCoBro

http://www.instructables.com/id/Build-MIDI-Bass-Pedals-for-About-150/

Arduino MIDI
Bass Pedals by
rczarnik

Advertisements

Comments

http://www.instructables.com/id/Build-MIDI-Bass-Pedals-for-About-150/

You might also like