Digital Synth VRA8-P for Arduino Uno




Introduction: Digital Synth VRA8-P for Arduino Uno

Made by ISGK Instruments


  • 3 Voice Pseudo Polyphonic Synthesizer for Arduino Uno


  • 3 Voice Pseudo Polyphonic Synthesizer (Paraphonic Synthesizer), MIDI Sound Module
  • Serial MIDI In (38400 bps), PWM Audio Out (Pin 6), PWM Rate: 62500 Hz
  • Sampling Rate: 15625 Hz, Bit Depth: 8 bits

Demo Audio

VRA8 Series


  • Exhibited in Maker Faire Tokyo 2016

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Wiring

Required Hardware

  • A1: Arduino Uno
  • U1: 3.5 mm Audio Jack
  • R1: 150 ohm Resistor (or 140 ~ 160 ohm Resistor, e.g. 100 + 47 ohm Resistor)
  • R2: 100 ohm Resistor
  • C1: 100 nF Capacitor
  • Wires


  • See the image

Step 2: Software Installation

  1. Download Source code and extract it.
  2. Download Hairless MIDI<->Serial Bridge and extract it.
  3. Download loopMIDI and install it.

Step 3: Start Synthesizer

Explanation for Windows

  1. Write DigitalSynthVRA8P.ino to Arduino Uno and quit Arduino IDE.
    • CAUTION: Use Arduino IDE 1.6.8 or later.
  2. Start loopMIDI.
  3. Start hairless-midiserial.exe (Hairless MIDI<->Serial Bridge).
    • Set [File] > [Preferences] > [Baud rate] to 38400 bps.
    • Select Arduino Uno (COM*) on Serial Port.
    • Select loopMIDI Port on MIDI In.
  4. Open vra8-p-ctrl.html (VRA8-P CTRL) with Google Chrome.
    • Select loopMIDI Port on MIDI OUT.
    • Select a MIDI controller on MIDI IN (if you have it).
  5. Click (or touch) the Software Keyboard, and you can hear the sound.


  • Click sounds may occur when you connect the audio out to an amp/a speaker or reset the board
  • Click sounds may occur when you change the controllers (especially AMP EG and FILTER CUTOFF)
  • Low FILTER CUTOFF with high FILTER RESO can damage the speakers
  • The Arduino PWM audio output is a unipolar LINE OUT
    • Please connect this to a power amp/a headphone amp (not to a speaker/a headphone directly)

Be the First to Share


    • LED Strip Speed Challenge

      LED Strip Speed Challenge
    • Sculpting Challenge

      Sculpting Challenge
    • Clocks Contest

      Clocks Contest

    7 Discussions


    3 years ago


    I've built a couple of your synths and they are great. I found your instructables while looking for an external synth to use in Ableton Live and a midi controller instead of using all internal sounds. I am very new to Arduino, and just have a couple of questions about your application. how do I go about controlling the voice/osc/filter etc? Should it be controlled by my midi controller or can I set up external potentiometers. I am routing the synth into ableton from a line in as an 'external instrument'. Any advice would be really appreciated. I really like the sounds of all three of the synths I've seen here.


    Reply 3 years ago

    I'm sorry to reply late. Thank you for using my synths! VRA8 series consume almost 100% of Arduino CPU power. So it is difficult to set up external potentiometers without program modifications. VRA8 series are controlled by MIDI Control Changes. So they are controlled by MIDI controllers. See [MIDI Implementation Charts]. VRA8 series are usually controlled by USB-Serial MIDI. See [Step 2] and [Step 3]. But [VRA8-* Control] is not required. A DAW app MIDI OUT should select [loopMIDI Port]. VRA8 series are possible to become USB MIDI Devices by mocoLUFA firmware, too: . I am not good at DAW and English. I'm sorry if the answer is not the one you expected.


    4 years ago

    The first thing I'll do when I get home is to try it.

    Your synths are amazing. Thank you.


    Reply 4 years ago

    Your welcome! Thank you, too


    4 years ago

    The first thing I'll do when I get home is to try it.

    Your synths are amazing. Thank you.