Organ Project


In high school, I built a set of bookshelf speakers as my end of year engineering project.

I bought an old Casio keyboard with missing keys from my local music store to use as the base for the project. In the process of working with it, I managed to get the keyboard electronics working again. The keyboard had a wide sound palette, so I decided to play it for a while instead of stripping it out. Working with the acoustic and orchestral emulations on the keyboard made me prefer them over the synthesized sounds; especially the organ. I became more partial to building something for samples, rather than a synthesizer, bringing to life the idea to build a virtual organ.


Most virtual organ consoles I have seen use two keyboards, a stop control system and a pedalboard. Only one of my keyboards had a USB connector so I needed to install one in the one bought from the music store. I also needed a way to control the organ stops and pistons, as well as a pedalboard.

A pipe organ console
Fig. 1 - Anatomy of an organ console

For the keyboard, I decided to use an Arduino microcontroller to scan the keyboard keys and then send the signal over its USB. I discovered through looking at other peoples’ organ projects, that Novation Launchpads could be used to control stops so I decided to use them.

I couldn’t buy a pedalboard as they were too expensive, and I didn’t know of anyone getting rid of their organ console, so I was going to have to build it from scratch.

I found a rough design from this link, after reviewing their dimensions it became apparent that my desk was not wide enough for the pedals to fit under it. I didn’t have room for another desk, so I needed to modify it to allow enough clearance.

Many of the notes on organ pedals are not played often, so in the spirit of decreasing the width of the board, I omitted all notes from D# to F# in the high octave. With 10cm off the width I 3D modelled a rough concept (notice that the highest note is D now);

A 3D model of an organ pedalboard
Fig. 2 - The initial 3D concept for the pedalboard
A flowchart
Fig. 3 - Hardware flowchart for the organ console



Starting with the MIDI interfaces, I based the design on one done by Evan Kale found here. Most of it was software based, only requiring some resistors and diodes for stabilising the inputs as hardware. All the main hardware was already done on the keyboards’ circuit board.


The software selection was difficult as I didn’t want to spend money on licenses (although I was willing to buy samples). I created this criteria matrix for software selection;

Criteria Hauptwerk Ableton Live jOrgan
Can my computer run an organ with this software? Maybe No Yes
Is it free? No Yes Yes
Is it compatible with my console? No Maybe Yes
Does it have preset sounds? Yes Yes No
Fig. 4 - Criteria analysis for software packages

After trying out the different solutions it was clear jOrgan was the only viable option. Although it meant I had to find my own sample packs and set up the virtual console myself.

Luckily, the jOrgan website had peoples’ project files available to download, I used the ACO-104 project file (Aeolian Skinner Cinema Organ – 104 Stops) as a starting point. I found harpsichord, orchestral and synthesized sound-fonts (sample packs) and added those in too. I ended up with about 120 stops.


Full pedalboard schematics are rare as only professionals really build them. I used my concept model for the basic dimensions, but the rest was up to me. Seeing as I was going to need a lot of timber, I based my dimensions around standard timber sizes. Most of the dressed pine at my hardware store was 19mm thick, with widths of 42mm, 64mm, 89mm, 140mm etc.

Component Timber Size
'Black' pedal base 18x18mm Dressed All Round Pine
'Black' pedal top 19x64mm Pine
'White' pedal 19x42mm Dressed Pine
Wood spring supports 4mm MDF sheet
Sides 19x140mm Dressed Pine
Rear top 19x140mm Dressed Pine
Rear base 19x89mm Dressed Pine
Front top 19x89mm Dressed Pine
Front base 19x140mm Dressed Pine
Fig. 5 - Initial timber sizes for the components fo the pedalboard

For the mechanics, I used ‘wood springs’ for the back support and steel springs as the front support. The wood springs would be thin MDF strips. Other pedalboard projects use music wire and are bent to be springs, I bought 3mm music wire from eBay to become a 360° torsion spring;

A 360° torsion spring
Fig. 6 - An example of a 360° torsion spring


Desk Extension

To get the timber size for extending the desk legs, I measured the diameter of the leg brackets and the screw depth and bought a piece of Tasmanian Oak of that size. When cut to size, the offcuts placed under the back legs so the table would remain level.


The MIDI interface was a simple build. I used Serial communication to send MIDI signals and some resistors to keep the signal stable. I used a method of debouncing to stop misfires, unless a note is held for at least 20 milliseconds, the signal is not sent.

An electronic circuit board
Fig. 7 - The MIDI interface setup on the pedalboard


I got much more from jOrgan than what I bargained for. jOrgan has virtually no video tutorials and a small amount of documentation so I had to figure it out for myself. After a few weeks of scratching my head; I was able to get all my sound-fonts installed and working. I made a custom console to sort them into their stops and started assigning them to my launchpads.

A novation launchpad
Fig. 8 - The stops were labelled and lighting up, different stop types were given different light colours

jOrgan allowed you to choose what colour a stop button had, this made it much easier for laying out the stops on the grid. Each division (Pedals, Keyboard 1, Keyboard 2) and instrument type had a different colour, hence, I didn’t have to worry about which buttons were for which controls, etc.


I started with making a test jig to see if my MDF spring idea would work. A single layer would either deform or snap so I layered two together and I got a working system;

Two planks connected via a thin piece of wood
Fig. 9 - The jig for testing the MDF spring theory

With working supports; I assembled the 'black' pedals and connected springs to all the pedals. They then could be screwed into the base.

Planks of wood
Fig. 10 - The 'black' keys assembled, I made the pedals that were further away from me longer so they would be easier to reach when playing
MDF strips
Fig. 11 - The MDF springs drilled ready for attachment
Planks of wood
Fig. 12 - The pedals with attached MDF supports
Planks of wood
Fig. 13 - Defining the spacing between pedals/keys
Planks of wood
Fig. 14 - All pedals attached to the base, the white pedals have been rounded.
Planks of wood
Fig. 15 - The sides and back attached, I added another plank to the base so no screws would collide
Planks of wood
Fig. 16 - The front base plank screwed in
Planks of wood
Fig. 17 - A small wedge was required in the corner for the top as I wanted to use an offcut instead of a new length of timber
Planks of wood
Fig. 18 - The completed pedalboard without the mechanical or electronic components

Pedalboard Mechanics / Electronics

I didn’t have a vise, strong pliers or a metal jig to bend the wire so I just had to keep breaking screws and shredding pine blocks until all of them were shaped. I used an aluminium sliding bevel handle to work the steel with. I removed the slider out of the sliding bevel and the gap was just right for the steel rod to fit into.

A spring mounted in pine planks
Fig. 19 - Initially the springs worked fine, but when I tested stepping on them, the pine base began to creak. A few more springs drilled into the base, and the springs went right through the base, requiring a hardwood replacement
Screws in a pine plank with wire
Fig. 20 - The carnage of the first set of screws can be seen on the left
Steel torsion springs
Fig. 21 - 28 springs bent up, I only needed 27 but I wanted some spare as these were a literal pain to bend up
Springs mounted in an oak plank
Fig. 22 - All springs mounted in the new Tasmanian Oak plank after the pine one snapped
Several switches on circuit boards wired together
Fig. 23 - Switchboard which you can see mounted in figure 7

The circuit boards were mounted with little M3 screws which held up quite well. There was no room left for the actual controller board, so I mounted it upside down on the top panel.

Stool and Music Stand

Wood offcuts
Fig. 24 - The offcuts left over from the pedalboard
Wood screwed together
Fig. 25 - The leg panels weren't wide enough to support the stool so I added some planks at the bottom
A wood stool frame
Fig. 26 - The cross beams needed to be bought but everything else was offcuts
A wood stool frame
Fig. 27 - The foot rest added to the frame
A large wood plank
Fig. 28 - The offcuts were oriented and then screwed onto a central hardwood plank to be the top of the stool, I upholstered the stool so laminating and sanding was unnecessary
A wooden stool for an organ
Fig. 29 - The completed stool, yet to be upholstered

The music stand I use was screwed together from some bits of wood found in a box in the backyard, it’s about as stable as an actual music stand.


In the end I was happy with the outcome despite the blood and sweat put into it. Everything worked as I wanted it to, and the hardware and software were more than capable.

A homemade organ console
Fig. 30 - The completed organ console

In hindsight, I wouldn’t use the Oak as a desk extender, pine would have been more than enough for the job.

The Arduino MIDI interfaces worked perfectly, I had to use the Hairless Serial-MIDI Interface to use them with software but it worked great.

The microswitches slipped off the pedals at first but they were reoriented and now they work just fine. One of the microswitches wasn’t working at all so that had to be replaced, thankfully the screw mounts were easy to remove.

The stool legs had planks screwed in at the bottom, these were much weaker than I thought. I had to fix them later as the screws were damaging the planks.

The software took some time as in jOrgan, a keyboard must be manually linked to the sample it plays, the stops that apply to it, as well as the couplers and pistons affecting those stops. It was an involved process, many times I thought I was finished but find that one stop hadn’t been referenced.

A software window
Fig. 31 - The completed jOrgan console

Overall, the project was much easier but more expensive than I originally anticipated. If I had a good supply of timber the cost would have been quite low. I made the mistake of buying timber from Bunnings and it cost me about $200 in timber to make the pedalboard. Although my pedalboard was a fifth of the price of an actual one, it could be made even cheaper, don’t make the mistake I did and buy hardware store timber for the project.

Component Cost
Hardwood Desk Extension $66.20
Replacement Hardwood Base for Springs $26.12
Dresssed Pine Timber $124
Expression Pedals $100
Swell Keyboard $50
Great Keyboard $100
Launchpads $201.35
Arduino Microcontrollers $14.32
Microswitches $26.58
USB Hub $11.5
USB Extenders $29.85
Music Wire 8 metres $35.98
Total $785.9
Fig. 32 - The final cost analysis for the project