This project details the steps to build your own Open Source (musical) keyboard which connects to a computer via USB and sends MIDI signals.
I bought this AN2131 board on eBay. It’s just a AN2131 chip with the required support circuitry – crystal oscillator, power regulators etc.
First I took the inputs and outputs of the key matrix and wired them to the GPIO ports of the AN2131. This was just a matter of plugging the whole lot into some protoboard. This didn’t work too well, as the keys would get “stuck” often. This is because an unconnected chip leg can “float” between on and off due to the residual charge held in the wire. The solution is to add pull-down resistors which allow this residual charge to flow to ground when the key is released. I added one to each input of the circuit. I used a variety of spare resistors from the junk box 320 ohms to 1000 ohms.
MIDI is a serial protocol and this USB MIDI adapter works in a very similar way to a USB to Serial convertor. I took this firmware and removed the MIDI input parts, replacing them with a key matrix scanner. The keys are scanned, and any changes in the key state are converted to the appropriate MIDI signals before being sent over USB to the PC. To the PC it behaves no differently than the original hardware so no new drivers are needed.
Visit Here for more.