This keyboard encoder is capable of encoding any number of momentary action, push to make, single pole single throw (SPST), switches from 1 up to 61 to produce the equivalent MIDI note-on/note-off data commands. So this design can be used with any keyboards up to 61 notes. Any unrequired notes can just be left unconnected.
The 61 note range is from C2 (MIDI Number 36) to C7 (MIDI Number 96). The MIDI Channel is preset to MIDI Channel 4 and the velocity byte is preset to 100. However other values for the MIDI Channel, velocity and the note range can be pre-programmed into the firmware on request.
This unit can be connected to new keyboards or it can be used with an older non-MIDI keyboard by using magnetic/reed switches, or Hall Effect devices, 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.Operation:
The switches are wired in a 61x1 matrix. One side of each of the encoded Keyboard switches are wired to a common Ground (GND) pin and the other side of the switches 1 to 61 are wired to the digital input pins 2 to 63, except pin 13 which is for the on-board LED. The MIDI start Note is set to C2 (MIDI Note 36), which is connected to switch SW1, then the switches follow continuously to the last switch SW61, which is C7 (MIDI Note 96). But any different start note can be pre-programmed if required.
This unit can work in standard MIDI mode and via the USB connection, at the same time. It defaults to standard MIDI Baud rate of 31250. By replacing the original firmware on Mega8u2/16U2, the Arduino will act as USB-MIDI device (Standard Midi Class), you do not need to install additional device drivers on Windows, MaxOSX, and Linux, as the firmware acts as a device of Standard Midi Class. It will automatically install on the system as an Audio USB Device.Power Supply:
The Arduino UNO and Mega 2560 boards can be powered from the USB socket or via the external power connector. External power can come either from an AC-to-DC adapter or battery. The adapter can be connected by plugging a centre-positive plug with an internal diameter of 2.1mm, an external diameter of 5.5mm and 12mm long, 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 voltage is 9 volts DC, capable of supplying about 1 Amp, which is 9 Watt (W), (Power = Voltage x Current). Note that the power input selection is automatically selected.