USB MIDI keyboards
USB Midi Keyboards
This how-to assumes that you are using a 2.6 kernel and ALSA. Known to work using this how-to is the Evolution MK-631 USB midi keyboard with SB Live! Value card.
First let us make sure that USB is working properly. When you type
lsmod you should see some modules such as
ehci, uhci or such. Also, when you type
lsusb you should see something like:
Bus 004 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 002 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000
This list might contain some USB devices if you have them plugged in or more or less items, depending on how many USB ports you have.
You should have ALSA set-up properly (
alsa-utils packages). When you type
lsmod | grep snd you should see a bunch of various
aseqdump. If you get an error stating that "aseqdump cannot find /dev/snd/seq" or similar, you might not have the
snd-seq module loaded. To rectify that, type
modprobe snd-seq. You might also want to add
snd-seq to your
/etc/rc.conf file in the
modules list. If the module is succesfully loaded, typing
aseqdump should show something like:
Waiting for data at port 128:0. Press Ctrl+C to end. Source_ Event_________________ Ch _Data__
Not much will show up there, so press Ctrl+C to quit the program.
Plugging the keyboard
Now plug the keyboard in and turn it on. The keyboard should power up. Output of
lsusb should contain:
Bus 002 Device 002: ID 0a4d:00a0 Evolution Electronics, Ltd
lsmod | grep usb should contain the following modules:
usb_midi 25348 0 snd_usb_audio 70592 0 snd_usb_lib 16640 1 snd_usb_audio
aconnect -i. The output should contain:
client 72: 'MK-361 USB MIDI keyboard' [type=kernel] 0 'MK-361 USB MIDI keyboard MIDI 1'
The client number is probably going to be different though. Take note of it.
aseqdump -p ## where you should replace
## with the client number of your keyboard. You should see:
72:0 Active Sensing
popping out all the time. Pressing a key should produce:
72:0 Note on 0 65 94 72:0 Note on 0 65 0
Various other events (turning control knobs, changing channels, etc.) should register in the list. This is a handy way of ensuring that your keyboard is running properly.