Build your own MIDI projects
Frequently Asked Questions.
MIDI & Music
MIDI and Music Information
MIDI Violin using softpot controllers


MIDI Violin


This MIDI project, utilizing the MIDI Arduino design, uses four 10mm wide, 300mm long thinpot/softpot controllers to produce a scale similar to a violin and also an Ultrasonic Transducer, which controls MIDI Volume. 


The thinpots are long enough to cover the length of a violin fingerboard. Also the width (10mm) of these thinpots makes the total width of the fingerboard acceptable to play it as a violin.






*Click to Enlarge*



MIDI Violin Controller


PRICE:  €50.00


*Click to Enlarge*



MIDI Violin Controller &

Ultrasonic Transducer


PRICE:  €60.00













The MIDI Violin Controller unit utilizes:

  • An assembled, built and tested Arduino board including a suitable pre-programmed ATmega microcontroller,
  • A 2.1mm power socket, and associated LED, 
  • A MIDI detection LED,
  • A 4-way DIP switch, which selects the MIDI channel at power-on, shown in table 1
  • A 150mm wired MIDI 5-pin DIN input socket,
  • A 150mm wired MIDI 5-pin DIN output socket, 
  •  0.1" pin-terminal inputs/outputs,
  • The circuit schematic is available,
  • MIDI available/transmit LED



The MIDI Violin Controller also requires:

  • A 9v battery or equivalent DC power source,
  • Four 100k ohm 0.25W resistors,
  • Four thinpot ribbon/softpot 10mm wide, 300mm long, linear potentiometers (RS-Electronics)
  • (A HC-SR04 Ultrasonic Transducer)



When any of the 4 thinpot softpot variable potentiometers are pressed they produce a resistance relative to the position where they are pressed. This resistance is converted to the equivalent MIDI Note On command. Then when the thinpot is released it produces the equivalent MIDI Note Off command. If the thinpot is pressed and a finger slides to a new note then a glissando effect is produced.



Note: The ribbon/softpot potentiometers are not included in the price.


The MIDI command is channel (1-16) dependent. The MIDI channel, that the volume controller affects, is set by the 4-way DIP switch selection, shown in Table 1 below.


The 4 thinpots are designed to be polyphonic, so up to 4 'strings' can be played at the same time.



The HC-SR04 Ultrasonic Transducer is used to convert right hand movement into MIDI Volume control data. As a note is sounded, moving the hand towards the sensor increases the Volume and moving it away decreases the Volume.







     *Click to Enlarge*

The MIDI IN and OUT connectors use  5-Pin 180 degree DIN sockets. Note that the MIDI IN/OUT wiring is polarised and the correct pins should be used.






Power Supply:

The  MIDI  Arduino  can be powered via the USB connection or with an external power supply. The power source is selected automatically.


External (non-USB) power can come either from an AC-to-DC adapter (wall-wart) or battery. The adapter can be connected by plugging a 2.1mm center-positive plug into the board's power jack. Leads from a battery can be inserted in the Gnd and Vin pin headers of the POWER connector. A low dropout regulator provides improved energy efficiency.


The board can operate on an external supply of 7 to 20 volts. If supplied with less than 7V, however, the 5V pin may supply less than five volts and the board may be unstable. If using more than 12V, the voltage regulator may overheat and damage the board. The recommended range is 7 to 12 volts.




DIP Switch Selections



4 3 2 1
on on on on 1
on on on off 2
on  on  off on 3
on on off off 4
on off on on 5
on off on off 6
on off off on 7
on off off off 8
off on on on 9
off on on off 10
off on  off on 11
off on off off 12
off off on on 13
off off on off 14
off off off on 15
off off off off 16

Table 1 MIDI Channel



Scale Information:


This diagram shows the position of the violin notes


Also this diagram shows the MIDI Note Numbers associated with the pitch of the violin notes.


The fundamental pitch of a vibrating string goes up an octave if the length of the string is halved. There are twelve tones in the equally tempered scale. The fret position offset will be a function of the twelfth root of two. The twelfth root of two is approximately 1.0594630943593.


The scale and position of the notes is calculated from the equation:


d = s – (s / (2 ^ (n / 12)))




d = distance from nut;


s = scale length;


n = fret number;


The scale length for a full size violin is about 23.5" (about 597 mm).


The scale has to include the open string notes, on the 300mm long thinpot. Also, in practice, to overcome false note triggers a threshold 'note'  is included in the scale. So the equation has to be adjusted to allow for both of these additions.