Build your own MIDI projects
Frequently Asked Questions.
MIDI & Music
MIDI and Music Information
MIDI 3- Keyboard in one Encoder


MIDI 3-Keyboard Encoder 


This 3-keyboard encoder is capable of encoding a number of momentary action, push to make, single pole single throw (SPST), switches from 0 to 100 to produce the equivalent MIDI note-on/note-off data commands on MIDI Channels 1, 2 and 3. 


This design has Keyboard A assigned to switches SW0 to SW43 which produce MIDI Note range 53 to 96 on Channel 1. Keyboard B is assigned to switches SW44 to SW87 which produce MIDI Note range 29 to 72 on Channel 2 and Keyboard C which is assigned to switches SW88 to SW100 to produce MIDI Note range 36 to 48 on Channel 3. Mapping of the 3 keyboard ranges is available.


Other switch arrangements can be assigned if required. The encoded switches are wired via IN4148 diodes, see switches schematic. 


This unit can be connected to new keyboards or it can be used with an older non-MIDI keyboard by using magnetic/reed switches to isolate the old and new scanning circuits. This will allow the older keyboard synthesizer to continue to operate as normal while also providing a MIDI output.



MIDI 3-Keyboards


PRICE:  €75.00


*Click to Enlarge*




The 3- Keyboard Encoder to MIDI Unit consists of:


  • The MIDI channels 1, 2 and 3 are preset, 
  • The velocity byte is preset to the maximum value.
  • An assembled  Arduino MEGA,
  • A 2.1mm power socket, and associated LED, 
  • USB power or external power choice,
  • A MIDI 5-pin DIN output socket,
  • The circuit schematic is available,



The 3-Keyboard Encoder to MIDI unit requires:

  • a 9v battery or equivalent DC power source
  • Suitable key-switches or magnetic reed switches and associated IN4148 diodes


Circuit Schematic:

A circuit schematic of the 3-keyboard encoder shows the switch connections. The circuit schematic for the Arduino MEGA is also available.


MIDI Wiring:

The MIDI  OUT connection uses a 5-Pin 180 degree DIN sockets. Note that the MIDI OUT wiring is polarised and the correct pins should be used. 


MIDI 3-Keyboard Wiring:

The switches are organized in a 12 x 9 matrix (up to 108 switches) arrangement.  Note if less than 108 switches are required, then ONLY the switches required need to be wired. 

The lowest note  is switch SW0 wired via diode D0 between Pins 22 and 23 of the Arduino MEGA.

The next note  is switch SW1 wired via diode D1 between Pins 24 and 23 of the Arduino MEGA.

The next note  is switch SW2 wired via diode D2 between Pins 26 and 23 of the Arduino MEGA.

The next note  is switch SW3 wired via diode D3 between Pins 28 and 23 of the Arduino MEGA.

The next note  is switch SW4 wired via diode D4 between Pins 30 and 23 of the Arduino MEGA.

The next note  is switch SW5 wired via diode D5 between Pins 32 and 23 of the Arduino MEGA.

The next note  is switch SW6 wired via diode D6 between Pins 34 and 23 of the Arduino MEGA.

The next note  is switch SW7 wired via diode D7 between Pins 36 and 23 of the Arduino MEGA.

The next note  is switch SW8 wired via diode D8 between Pins 40 and 23 of the Arduino MEGA.



Pin 22 is also looped to the Anodes of Diodes D9, D18, D27, D36, D45, D54, D63, D72, D81, D90 and D99.


Pin 24 is also looped to the Anodes of Diodes D10, D19, D28, D37, D46, D55, D64, D73, D82, D91 and D100.


The other pins 26, 28, 30, 32, 34, 36, and 40 are wired in a similar manner to the other Diodes.


Pin 23 is connected to switches SW0 to SW8,

Pin 25 is connected to switches SW9 to SW17,

Pin 27 is connected to switches SW18 to SW26,

Pin 29 is connected to switches SW27 to SW8,

Pin 31 is connected to switches SW36 to SW44,

Pin 33 is connected to switches SW45 to SW53,

Pin 35 is connected to switches SW54 to SW62,

Pin 37 is connected to switches SW63 to SW71,

Pin 39 is connected to switches SW72 to SW80,

Pin 41 is connected to switches SW81 to SW89,

Pin 43 is connected to switches SW90 to SW98,

Pin 45 is connected to switches SW99 to SW100,


Each of the other side of these switches SW0 to SW8 is wired to a diode on the Cathode (K) side (end of diode with stripe).

The other side of each of these diodes is looped to  other diodes. 


Power Supply:

The  Arduino MEGA 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.