The Arduino OctoSynth





Introduction: The Arduino OctoSynth

What is the OctoSynth you may ask? The octosynth is a polyphonic synthesizer that is able to produce eight Pulse Width Modulated tones that form together a musical scale. In English terms, it is a 8 key electronic organ that can play more than one tone at once but only one scale.

Special thanks to Joe Marshall who wrote the very useful code.

As suggested in the title, it runs on Arduino.

So before we get started, let's see what is sounds like. Shall, we?

And and explanation would be nice.

Step 1: Parts of the OctoSynth.

You will need:
An Arduino
12 Male headers (2 together and another six together. Also, another 4 together(Optional))
8 Unifomly LONG Wires ( By long I don't mean 3 meters but it means a decent 10 inches or maybe, 20 crentimeters.)
A Certain Amount of Copper Tape (Get a roll to be safe)
Enclosure (I used styrofoam as a base but if you want an enclosure, which is totally fine, you can use one. The length will depend on the wideness of you choose.)
Power Jack and Battery

Step 2: Program.

Upload the code below to the Arduino.

Open with the viewer of your choice.

Step 3: Build.

  1. Measure out how much material you have with the copper tape. Make sure you leave enough enclosure/foam to accommodate for the spaces in between to prevent shorting.
  2. Cut that much tape and maybe a millimeter more.
  3. Divide the tape into eight sections by folding.
  4. Solder ONE wire to each piece of tape.
  5. Solder male headers to the tape. Six pieces to six headers for six in puts and then a pair of two for the other two inputs; Digital 6 and 7.
  6. Order will now begin to matter. The first one (Analog 0) will go on the far left of the enclosure/foam. Analog 5 will go to the input 6 so it is la on the musical scale. 
  7. Digital input 6 is ti and input 7 is high do.

Step 4: Wiring.

Plug in the wires to the Arduino. Connect the speaker to Digital Output 11. You may need to use headers.

Step 5: Enjoy.

You can now add power to your Arduino. You speaker should play an opening tone.

The thing is the opening tone is when the machine calibrates itself. If you press any key then it will think that that key is 0. Count to ten before playing.

This is polyphonic and so it can play more than one note at once. Hope you enjoy.

3 People Made This Project!


  • Pocket-Sized Contest

    Pocket-Sized Contest
  • Pro Tips Challenge

    Pro Tips Challenge
  • Science of Cooking

    Science of Cooking

We have a be nice policy.
Please be positive and constructive.





Hi, I made it but when i power it and not touch anything, after 3 seconds it stars making a loud sound. It is like every note is played.

I disconnected 7 of the (buttons?) it still sounds the same


Please help this is urgent

Hi ! This is great !


I would like to use quite a few sensing 'pads' to make a sort of lamp. But I need some longer cables / wires.

It works when I use a 1,5m cat5 cable, using only 1 of the wires, but if I connect 1+ wires, then I can't get a reading from. Do you have an idea of why? And do you know how to use longer wires?

I'm not sure I understand it right, but it would it help to amplify the voltage?

When working with wireless, I often wish I could just use a very long wire and be done with it. Unfortunately, that is not always the case. In this case, this circuit depends on capacitance, so the lengthier the wire, the more noise the wire will pick up, meaning it will be less able to detect the change when you touch it. When you add another wire, you increase the amount of noise pick up. In this case, one viable solution I can think of is to use wireless, which can lead to a whole array of other problems.

Cool! Thanks for sharing! Modifying it to output midi would be really sweet! A small and simple polyphonic midi keyboard/ controller would surely be appreciated!

can someone give me the code the file is not compatible with my computer

Hi, just made this in about 20 minutes – it's ace!

if you used a on-off-on switch could you program it to do two or maybe three different scales or change it using a potentiometer???

Could you use tin foil instead of the copper tape???

sketch_apr23e.ino:807:5: error: expected unqualified-id before string constant

Error compiling.

how to get rid of this? plz