Introduction: MIDI-Controlled 88 Key Reed Organ With MIDI-Over-Bluetooth

About: B.S.E.E. undergrad. Tinkerer & musician.

UPDATE 7/29/2019: I've had numerous requests from people to buy my circuit boards. Due to this overwhelming demand, and my increased circuit board design ability over the past two years since this Instructable was published, I've designed and will be selling updated open-source, all-in-one, plug-and-play, Arduino-compatible circuit boards for this project. Once they are ready for purchase, I will put a Tindie and/or eBay link here to them so that more people can build similar projects, with much less effort and minimal or no soldering! In the mean time, you can see the design progress on GitHub: https://github.com/willemcvu/midi-solenoid-drive

--------------------------

First off, here's a playlist of videos of it in action. Have a song or MIDI file you want to see in that playlist? Suggest a song or upload your own MIDI file here: http://bit.ly/2wR3QUE

---------------------------

For my high-school senior project, I was going to convert an upright piano to be a MIDI-controlled player piano. However, I by chance ran across a reed organ, and knowing nothing about them became very interested in their sound and history. So I instead converted an Estey Reed organ to be MIDI operated.

First I will explain what a reed organ is and how it works as well as how we will mechanically actuate the keys. Then I will explain the electronics that drive it, and finally I will cover the software that decodes MIDI and triggers the keys accordingly.

Step 1: What's a Reed Organ?

A reed organ, also known as a pump organ, melodeon, or harmonium, is an instrument that uses vibrating brass reeds to produce a sound. It works the exact same way that accordions and harmonicas work, and therefore sounds very much like them.

Like a large pipe organ in a church, most reed organs have a number of stops that change the tone of the sound. Just like a pipe organ has sets of pipes, known as ranks, most reed organs has ranks of reeds that can be turned on and off by changing which stops are turned out. Each rank has a distinctive tone, and so the overall tone and volume of the instrument can be mixed by choosing which ranks are activated.

If you try to convert your own reed organ like I have done here you will probably want to figure out a way for the computer to pull and push each stop. Otherwise you will either have to manually do this during the song, or be stuck with the same tone throughout.

However, the reed organ I have acquired is very distinctive: it has 88 keys, like a modern piano. It is also in an upright piano case, and unless you play it you can't tell it apart visually from an upright piano.

My reed organ has a knob slider on either cheekblock that engages a secondary set of reeds internally. These are the only "stops" of any kind that my organ has. The left slider turns on and off the secondary set of reeds for the lower half of the keyboard's range, and the right slider does the same for the upper half of the keyboard's range. By changing these stops, you can change the way it sounds because the second set of reeds is different from the first: in the bass, they are an octave higher, and in the treble, they are purposely tuned slightly out. Engaging the second sets of reeds makes my reed organ sound very much like an accordion!

Additionally, there are swell flaps (not pictured). These are basically large flaps that can cover or uncover the reeds a varying amount. When the reeds are uncovered, the instrument has a much brighter and louder tone as compared to when the swells are closed. By controlling the air pressure the instrument is running on and the position of the swell flaps, you can change the sound and volume of the instrument quite substantially. My organ has something called an automatic swell, which means that the swell opens automatically as the air pressure being fed to the instrument increases.

Step 2: Overview

This is a huge, complex project. Before I get into specifics, I think I should give a general overview of the components that will go into it and what they will do. Each piece will have a dedicated step or steps later on for greater detail.

Look at the above block diagram showing all the components in the control system.

('ll say this many times throughout this instructable: look at the photos/diagrams. They describe things better than words, like below.)

Let's work backwards. The reed organ keys need to physically move. I used solenoids mounted on rails on the front of the organ's action to pull on the keys from below. We're going to use Arduinos to turn on and off all these solenoids, and in order to control solenoids with Arduinos you need a simple MOSFET circuit that turns on and off the high-current/voltage solenoid from the Arduino's low-current/voltage I/O pins. I designed custom PCBs to do this. Each one can control 16 solenoids. The Arduinos will all be running software that decodes the MIDI data (being sent to them via bluetooth) and they will turn on and off the solenoids, and therefore the keys, accordingly.

So to follow the flow of MIDI data, it will go via Bluetooth to the Bluetooth COM port, and then on to the three key-controlling Arduinos, that will turn on and off the correct solenoids which pull on the keys.

Step 3: Bill-of-materials and Cost of This Project

Overall this project turned out costing about as much as I thought it would. Here's a list of everything you will need for this project:

  • Reed organ! I got mine free on Craigslist, as mentioned earlier.
  • Solenoids (ZYE1-0530Z): 95x @ $2.33 = $220
  • 1N4001 Diode: 100x = $15.84
  • IRLZ44N MOSFET 100x = $49.75
  • Arduino Mega 2560 Clone: 3x @ $9.99 = $29.97
  • HC-06 Bluetooth COM port
  • 12V 40A PSU: 2x @ $22.35 = $44.70
  • Custom Solenoid Driver PCB x15 = $50.20@FirstPCB.com
  • 220 Ohm Resistor 100x = $4.79
  • 10K Ohm SIP Resistor 15x = $6.56
  • Aluminium Rail 8' (Home Depot) = $13.50
  • Terminal Block 2-pole 3.5mm 100x = $30.10
  • Dupont wires and connectors (don't feel like listing out every little piece): $18.90

TOTAL COST: $494.30

There are a couple additional costs. First of all, this assumes you already have basic things for prototyping like breadboards, etc. I am also going to add servo control of the stops as well as adding a vacuum motor with an Arduino-controlled speed controller as well as Arduino control of the swell flaps. I'm predicting that this is going to add around $100 in cost to the project. You might also want a hardware MIDI input: I'm using a Bluetooth serial reciever and software called Hairless MIDI which sends MIDI data to a standard serial port. If you opt to add a hardware MIDI port then its probably going to cost either around $15 for a MIDI Arduino shield or similar to build your own.

Step 4: Introduction to the Reed Organ Action

When you press a key on a reed organ, it lets air move through a specific brass reed that produces the correct note corresponding to that key.

Look at the above image. When the key is pressed, it pushes the dowel in the center down which in turn pushes the pallet (a fancy name for a valve) on the bottom open (the bottom block in the above illustration). Below the action is a partial vacuum produced by the foot bellows, and when this valve is opened air enters from the atmosphere, passes by the reeds that sits flush on the base of the action (the flat piece of wood in the illustration) and exits into the bellows.

Step 5: Remove the Action

The "action" of the reed organ is the keys, reeds, and everything in between, as well as the base that it sits on (which is really a soundboard of sorts). In order to do any work involving the action, we have to remove it.

Typically I wouldn't give you detailed instructions on how to do something like this, because, frankly, if you're attempting this project you should figure out yourself how to simply take the action out. But there are some clever ways that everything goes together to hide screws as much as possible, so I'll give you general directions.

First, take off the back paneling. This lets us access where the front panel is attached to the case. Remove the front panel and the fall board. Now remove the felt-covered key return bumper bar that goes across the front of the keys. Next, remove the two cheek blocks. They are held on by a single screw combined with a peg and hole. This is a tricky setup, and after removing the single screw you can simply pull the cheek blocks straight up.

Now you can detach the various pedals connected to the action, unscrew all the screws mounting it to its base, and remove it. Take care to set it on a flat, empty surface.

Step 6: Mechanical Modifications Part I: Intro to Solenoids!

We are going to use electromagnetic devices called solenoids to pull on the keys. While solenoids can be a topic in of their own, they are at their core very simple devices. A solenoid consists of a metal bar inside of a coil. When the coil is connected to an electrical source, the metal bar, called the plunger, moves linearly.

Looking at the illustration above will probably illustrate how the solenoids pull on the keys it better than I can in words. One thing to point out is that this illustration is only for the white keys. The black keys are more complicated as they don't extend all the way to the front of the keyboard; we'll get to them later.

I used ZYE1-530Z solenoids, which are 1A@12VDC solenoids. These are very good solenoids in general for this application, and they are very cheap (~$2.15-$2.60 each depending on where you look and the quantity you buy) and readily available online. I ordered a quantity of 95 for $220 and free shipping from an Chinese eBay vendor. This comes out to $2.31 each - not the cheapest, but pretty cheap.

If you don't end up using the ZYE1-530Z solenoids then I've outlined below the process of choosing one.

When choosing a solenoid to use, there are a few things to consider:

  • Type: There are push, pull, and push/pull type solenoid. This simply refers to which end(s) of the solenoid other parts can be attached to. A push type solenoid will have a threaded shaft on the pushing end, a pull type solenoid will have a clevis on the pulling end, and a push/pull type solenoid will have both. For this application, you will want a pull type or push/pull type solenoid as we will be pulling on the keys from below.
  • AC or DC: For this application, we want to use small DC solenoids. AC solenoids are generally used in much larger scale industrial applications.
  • Voltage: For this application, you will probably want to use a solenoid rated at 12V or possibly 24V. Lower voltage solenoids will draw more current and/or not be powerful enough to pull on the keys.
  • Current Draw: You will want to check the datasheet on the solenoid to check for its current rating. The higher current, the more powerful the solenoid will probably be, but the more power it will draw, requiring bigger power supplies. Due to Ohm's law, if you feed the solenoid with a high voltage, it will draw more current; if you feed it with a lower voltage it will draw less current. Without getting too technical, the resistance of the solenoid will stay the same, and when this is the case voltage and current are directly proportional.
  • Actuation Force: This is one of the most important considerations. Generally a solenoid's datasheet will give its force, expressed in Newtons (N) at various strokes, which is the distance to the solenoid's neutral position, often at different power levels. A solenoid datasheet (and often title) will also give you a holding force, also expressed in Newtons. This number is essential to choosing the right solenoid for the application. Below I will show how you can calculate whether a specific solenoid will be able to press the keys on your organ.

Calculating how much force you need to press your organ's keys:

  1. First you will need to measure how much mass is needed to press the keys reasonably quickly on your organ. I used coins to do this - it's an easy, fast, and fairly accurate way of measuring smaller amounts of weight.
  2. Once you have this mass measured, convert it to kilograms (kg).
  3. The solenoids have a force expressed in Newtons, and from the previous step we have a mass in kg that presses the key at a satisfactory level in earth's gravity. Therefore, we can multiply our mass in kg times earth's gravitational constant to get the amount of force that mass is exerting in earth's gravity onto the key: (force in N) = (mass in kilograms needed to press key)(9.8m/s)

Now you know how much force is needed to hold the keys! Go find solenoids that have a holding force greater than the force you calculated. Ideally get them several times the force needed for quick, precise key actuations.

Step 7: Mechanical Modifications Part II: Solenoid Modifications

Solenoids are very loud clicky devices. Of course this isn't going to work for our application. So we're going to modify them so they aren't so loud.

There are two main places in the solenoid that cause the clickiness. You can see these two spots circled in red in the above illustration.

The nut (left red circle in the illustration) clicks against the base of the solenoid upon disengaging. We can easily fix this by removing the nut from the pushing end of the solenoid. It isn't needed as the solenoid plunger is attached to the key which has the fallboard resting across it. This means that the plunger can't go up further anyway.

The solenoid plunger clicks against the base of the solenoid internally upon engaging (right red circle in illustration). We need to put something in between these two parts so that there isn't metal-to-metal contact upon engaging. I used very small pieces of heat shrink tubing on the solenoid shaft. Its tricky to see, but look at the above photo.

With the nuts removed and heat shrink tubing put on, the solenoids just have a gentle thud sound when engaging and no sound when disengaging. Before they had a harsh metallic click that was made worse by the aluminium they were mounted to.

Step 8: Mechanical Modifications Part III: Black Keys!

Unlike the white keys where we can pull on the keys directly from the front, the front of the black keys is (obviously if you've ever seen a piano keyboard) set back from the front of the white keys. Because of this we can't pull on the black keys in the same way we can with the white keys.

My solution was to effectively extend the black keys to the front underneath the white keys. This involves heavy modifications to the organ's keyboard, but once fully assembled again you can't tell that its any different because the extensions are completely hidden underneath the white keys.

I extended the black keys by:

  1. Routing a channel out of the side of each black key. I made a jig to do this quickly and efficiently; it only took around an hour to do all the black keys.
  2. Placing popsicle sticks in the channel I routed out. This popsicle stick has to be positioned so it extends over the front of the key support frame, but not long enough to
  3. Carving material out of each black key's neighboring white keys such that the popsicle stick extensions can fit and move freely between white keys

You can see in the above photo showing a portion of the action that the solenoids are connected to the black keys in much the same way they are to the white keys, just with longer wires. This is because the solenoids are too wide to be placed in a single row. Instead, the black keys have their own row of solenoids underneath the white row key.

Step 9: Mounting the Solenoids

Once you've got the action going with the black key extension modifications, and the solenoids modified so they're not as clicky, you can actually mount them to the action. The keyboard in my case was exactly 48" wide so I used an 8' aluminium L-bracket from Home Depot, cut exactly in half to get two 48" pieces.

One of them was used for the white keys, and one for the black keys. The white key solenoid bar was attached to the underside of the key frame, and the other was attached to the bottom of the base of the action (again, look at the photos - they illustrate these things better than I possibly could using words).

The solenoid have M3 mounting holes, so I bought 200x M3 3mm bolts off eBay for $8. Compared to the $47c each that Aubuchon's wanted, it's a pretty good deal!

I used a jig of sorts on the drill press so that all the holes were the same distance from the edge of the L bracket. I used a drill bit that was a little too big so that I could move around my solenoids a spec after the fact, and to make the tolerances larger.

Step 10: Attaching Solenoids to Keys

Now that the solenoids are mounted to the action, it's time to actually attach them to the keys.

Sounds simple? Well it really isn't... we have to attach the solenoids to the keys so there isn't any play between the keys and the solenoid. Any play will result in noise from metal clinking on metal, as well as inconsistency between keys in terms of how them feel when manually played. Remember, we want to reduce our impact on the action as much as possible.

I devised a good way of attaching the keys. Look at the pictures; they will describe how I did this better than I can with words.


White Keys:

First, you drill two holes in each key: one up around halfway into the key, and another from the left side of the key around halfway into the key. These two holes result in an internal L shape inside the key. See above image.

Now you can bend pieces of wire into an L to attach to the keys. Just bend an L and stick it in! Note that you may have to widen the holes to get the wire in place.

Next you cut a short piece of wire (around 1/2") for each solenoid and insert it through the clevis as a pin. Then wrap it around to make an L, and you now have a pin in that solenoid's clevis.

Now put the key back on the key frame, and line it up so the wire is where it should be (going straight down to the solenoid with the pin through it). Mark where the wire coming down from the solenoid passes by the pin. Bend the wire just slightly below that point so it points out from the front of the keyboard.

Now place it so the wire is in the solenoid's clevis and its bend is directly under the "pin" we made with the piece of wire. Pull the key off again. While holding the solenoid plunger so it points around 30º back from straight down, bend the solenoid wire down over the front of the loop of wire we made that goes through the solenoid's clevis.

Pull the solenoid forward so it faces straight down. If you pull it too far, though, you will create play in this mechanism. This is something we want to avoid. If you don't pull it far enough, the solenoid plunger will have too much friction inside the solenoid and that key will get stuck. We also want to avoid this. So you need to bend the solenoid plunger such that it is in this sweet spot.

Black Keys

The process is essentially the same for the black keys, except the piece of wire is longer and attaches to the popsicle stick different than to the white keys. Look at the photos above to see how it is attached to the popsicle sticks. They are very self-explanatory.

One thing to point out for the black keys is that you can adjust how tight the solenoid plunger fits by bending the key pulling wire forward or back. This is nice because you can do this without taking the plunger out, unlike the white keys.

Step 11: Control Electronics Part I: Intro to MOSFETs

So now we have solenoids that can pull on the keys. Yay!

But there's still no way to control those solenoids with an Arduino to make meaningful music. This is where MOSFETS come in. To overly simplify, MOSFETS are a special type of transistor that can turn on and off large voltages and currents. As it pertains to our application, they are effectively switches that can be controlled by another piece of electronic equipment, in this case an Arduino.

A MOSFET has three pins: Source, Drain, and Gate (abbreviated S, D, G). When you give the gate a voltage above a certain threshold, it "turns on" and conducts electricity from the Source (-) to Drain (+).

The attached image shows the simple circuit we will be using on each solenoid. As you can see, it also incorporates several other components. Here's what each of those do:

To over simplify (again), the diode is to protect the MOSFET from the voltage spikes produced by an inductive load such as a solenoid. R2 is a pull-down resistor to ensure that the solenoid is off if it gets disconnected from the Arduino for any reason. R1, while not really necessary, is a current-limiting resistor to ensure that the MOSFETs don't draw too much power off the Arduino and fry its pins.

So now we just have to make 88 of these circuits!

Step 12: Control Electronics Part II: MOSFET Driver Boards

Update 7/29/2019 (2 years since original publication): With much more experience designing PCBs over the past two years, I really can't recommend using the original circuit boards, even though they do work mostly fine. I've since designed significantly-improved driver boards - see the introduction of this Instructable for more details.

Breadboarding or even perf boarding 88 of the circuits in the last step would be impractical, not professional, and would not be a good long-term solution. Because of this, I designed a PCB that can switch on and off 16 solenoids.

Additionally, this PCB has two extra MOSFETs - each one controls the overall power to half of the 16 channels. This was going to be for a PWM power control mechanism that never got implemented because it wasn't needed. So the gates on these MOSFETs are now just pulled up. Or, you could save a few MOSFETs and wires by soldering a jumper between the source and drain holes (the bottom two) where these two MOSFETS go. If you were to do this then you would not need

The first image above is the schematic for half of the PCB. Both halves are the same. The second image shows the PCB design itself, and the third is test-fitting components on a print out of the design to ensure that everything is spaced properly.

If you want to make these yourself, the Fritzing design file is attached. Please note that I didn't actually solder in the MOSFETs: they are push-fit; the holes in the file are slightly too small to allow the leads to go through. You can change this easily if you want to solder the MOSFETs.

I had mine manufactured by FirstPCB.com. They did an excellent job, and the price was very good: $50 shipped to my door with 2-day airmail (which turned into a week because of customs...)

If you get these manufactured yourself you need to order them with thicker-than-default copper. I chose 2oz copper, and this should be the least you should use. If all the keys were to be turned on on a driver board then the traces really could get burnt up fairly fast as each solenoid draws 1.3A. I've mitigated this as much as I could by dividing the driver board into two sections and making the traces as wide as I could, but the problem is still there. Read: don't try playing a MIDI file that puts down all the keys at once. You may burn out your driver boards.

See the attached image for the rest of the manufacturing settings that I used (screenshotted directly from my order onFirstPCB.com).

Step 13: Control Electronics Part III: Soldering MOSFET Driver Boards

I developed quite an efficient process for soldering up the driver boards: I got it to the point where I was doing around 2 solder joints a second or so. Even so it took me a few hours to solder up 6 of these.

The trick to soldering them quickly is to first solder the shortest components, and solder the tallest components last. I also soldered them assembly-line style: I soldered all the resistors across all 6 driver boards first, etc, as opposed to completely assembling one before moving on to the next.

The order I soldered components was this:

  1. 220-ohm resistors and single 10K resistors
  2. Diodes
  3. SIP resistors
  4. Screw terminals
  5. Headers

Then you can put in the MOSFETs. I didn't solder them as the holes weren't big enough; I just jammed them in. This way I can replace MOSFETs with ease, as they are the most likely component to randomly die.

A note: Instead of the two vertically-oriented MOSFETs, you can solder a jumper between the two bottom pins, as I discussed in the previous step. If you do this then when you're wiring you don't have to run the dupont wires connected to the "5V" pins (as labelled on the driver board), and you don't have to put MOSFETs where you put the jumpers.

Step 14: Wiring Part I: Mounting

Now that we have all the components, its time to assemble them and wire everything!

I mounted all the control electronics (Arduinos and driver boards) to a ~4" wide board that runs the length of the action. For now, it gives us easy access to the control electronics (while the action is out of the case).

This will eventually get mounted up under the bottom of the organ case (where the player's knees would go). This results in relatively easy access to service the control electronics, as well as a (sort of) easy way of still taking the action out.

There are still two massive power supplies that need to go somewhere. I just had them on either side of the action when it was out of the case. Once the action was back inside the case, they got mounted underneath as well (see photos, especially in next step)

All the Arduinos and control boards can be mounted with wood screws and nylon standoffs.

Step 15: Wiring Part II: Solenoid Wires, Power Wires, and Power Supplies

First, you're going to have to connect all 88 pairs of wires from the solenoids to their respective screw terminals. Solenoids don't have polarity, so it doesn't matter which solenoid wire you connect to the positive side and negative side. Also, make sure that you skip the power input connections when hooking up the solenoids (look at the driver board pinout above to see what I'm talking about).

Next you should run the power wires from the power supplies to the driver boards. I placed these power supplies on either end of the control electronics. The left three driver boards get power from the left power supply, and the right three driver boards get power from the right power supply. The driver boards get power separately to each half, in an attempt to increase their current capability. Make sure that the power wires are decently organized, as well as a decent gauge. Each wire is driving up to 8 solenoids, and 8 x 1.3A = 10.4A. This a lot of power, so don't skimp here. I used 14-gauge automotive wire, which is probably overkill but it was laying around.

As the power supplies are AC hardwired, you will need to wire up the AC. I ran both of them through a light switch that I mounted underneath the keyboard at one side (see photo; ignore the USB port - that's from before I added Bluetooth), and from this switch box I ran a standard 3-prong appliance cord. This results in a nice professional-seeming cord to it, and the switch allows you to turn the instrument on/off easily.

Step 16: Wiring Part III: Dupont Connectors!

Now you have to connect up the control boards to the Arduinos. We will use something called Dupont cables to do this. These are small crimp connectors that can fit inside housings of various numbers of pins. Each Arduino uses pins 22-53 as outputs (except for the last one; it only uses 22-37). These pins are on the bottom header of the Arduino, which is a 2x18 header. Unfortunately, 2x18 headers are a little bit hard to find, so you can instead use 2x20 dupont connector housings as I have done. On the driver boards, you will need 2x10 Dupont connector housings. Look at the driver board pinout to see which outputs correspond to which inputs, and start plugging in the cables. The cables simply click into the housings.

In addition to the driver board cables, we need to run our midi lines as well as power to all the Arduinos. I used some old telephone cabling (4 wires) for this. The red wire inside the telephone cable was connected to +12V on the power supply, and this was fed into each Arduino's VIN pin. The blue wire was connected to the PSU's ground and the Arduino's ground pins. The yellow wire was used for MIDI data transfer, and was attached to the TX pin on the Bluetooth receiver and the RX1 pins on the Arduinos.

Once you have everything hooked up you're ready to start on the software!

Step 17: Arduino Code

The code that runs the reed organ is quite simple. It decodes the MIDI data using code found here: http://forum.arduino.cc/index.php?topic=22447.0 (thanks to Arduino Forums user leKuk) and turns on and off digital pins accordingly.

The only thing that is different between the code the three Arduino are running is the "offset" between their pin numbers and the MIDI note numbers they respond to.

Look at the second half of the function playNote function on Arduino 1:

if (note > 20 && note < 55) {
digitalWrite((note + 1), value);

}

Here, the "offset" is one: the solenoid that is attached to the key that is MIDI note 21 is connected to pin 22 on the Arduino. Therefore, given the MIDI note, we have to add one to get the correct Arduino output pin.

By changing these offsets we change what MIDI range the Arduino is programmed to respond to. The three Arduinos therefore have different offsets since they control different sections of the organ.

Step 18: Programming the Bluetooth Module

Now the three Arduinos are running the software, but they have no way of receiving the MIDI data as the Bluetooth module has not been set up.

By default the HC-06 runs at 9600 baud. This is too slow for MIDI. I've been using 38400 as my baud rate, and this is the speed that's closest to actual MIDI baud (31250).

To change the speed that the HC-06 runs at we have to put it in AT-mode. Its a somewhat finicky process, especially if you don't have a USB to TTL converter/cable (if you don't then you can use an Arduino). Instead of explaining how to do it, I'll point you here to follow the instructions for the HC-06: https://www.instructables.com/id/AT-command-mode-o...

Remember, we want to set the baud to 38400, and (optionally) the name to what you want.

Step 19: Software and How to Send MIDI to It

In order to actually play anything to it, you need to install a piece of software called "Hairless MIDI Bridge". This software pulls MIDI off of a system bus or the output from a program and sends it over a serial port that you select.

I'm using a Mac, and as soon as you pair with the Bluetooth module (key is 1234), it shows up as a standard hardware serial port (I don't know if this works on Windows or Linux; I haven't tested it). Then we open Hairless MIDI bridge, select that serial port (it generally shows up as "/dev/name-DevB" where name is the name you've assigned the Bluetooth module in the previous step), select a system bus for input ("IAC System Bus" on Mac), and enable the bridge. Be sure to set the baud to 38400 in Hairless-MIDI's preferences menu.

Now you can use any piece of MIDI-playing software, and for the output choose the system bus that Hairless-MIDI is bridged to. I use either Aria Maestoso or Rondo to play MIDI files. Rondo is officially discontinued, but if you email you the developer and explain your project he may still give you a license key. I'd like to give a shout out to the developer; he's a really nice guy and gave me a license for free.

Step 20: PID-based Pressure Regulator

Currently I'm working on a pressure regulator/controller that will allow me to use a vacuum cleaner to run it. ~~The instrument will be presented at a Maker Faire in September 23-24, and I really want it done before then so I don't have to foot pump it 5 hours a day for two days.~~ EDIT: It has been presented already at the maker faire I speak of. The below text may still read like it hasn't.

A vacuum cleaner typically will pull about 60 inches of water (a pressure measurement). The reed organ needs around 2-5 inches of water pressure to run, depending on the desired volume. So clearly we need to reduce the vacuum cleaner's pressure significantly. During testing, I took off one of the leather straps on the front of the bellows and stuck the vacuum's hose in the top hole. I then used duct tape to cover and uncover the remaining holes to achieve the correct pressure. This "controlled" leak system worked so well that it is what I am going to use to control the pressure going to the organ.

I've built a box with vacuum-tube sized holes at either end, a slot at the top, and a cover that can slide open and close via a servo (see images above). One hole is hooked to the vacuum, and the other to the reed organ. When the slider on the top opens, more air comes in through the slit in the top instead of through the reed organ, reducing the pressure going to the reed organ. If the slider closes, then the opposite happens, and the pressure to the organ increases. Basically, I can control the loudness of the entire instrument via MIDI as well. I have yet to actually hook this system up, but I will in the next week in anticipation of the Maker Faire.

The other thing I plan to do at some point is implement a stop changing mechanism so that the two stops can be controlled via MIDI. They change the sound significantly, and once I have control of them, the entire instrument is MIDI-fied.

I actually got one stop servo-actuated a long time ago, but didn't end up actually installing them permanently as I was in a rush to get just the keys working.

Have a great day, and thanks for the (long) read! If you have any questions or build something using this Instructable please message me.

Step 21: Going Further

At some point I plan on implementing a stop changing mechanism so that the two stops can be controlled via MIDI. They change the sound significantly, and once I have control of them, the entire instrument is MIDI-fied.

I actually got one stop servo-actuated a long time ago, but didn't end up actually installing them permanently as I was in a rush to get just the keys working.

You can see an extended photo gallery of the whole project here: https://photos.app.goo.gl/0T7G6j06BgIUvHqB3

Have a great day, and thanks for the (long) read! If you have any questions or build something using this Instructable please message me. Also, I'm currently building an automated Alto sax. Check it out at my blog here: https://willemhillier.wordpress.com/

First Time Author Contest

Second Prize in the
First Time Author Contest

Automation Contest 2017

Second Prize in the
Automation Contest 2017

Bluetooth Challenge

Runner Up in the
Bluetooth Challenge

Halloween Contest 2017

Participated in the
Halloween Contest 2017