On Sat, Dec 31, 2011 at 04:44:19PM +0100, Jan Stary wrote: > The manual of the MIDI keyboard says: > > When using USB cable to connect UF keyboard to computer > music system, you must install the UF driver to the computer; > otherwise the system will not accept the device. > > So, does > > > Dec 31 15:11:04 box /bsd: ugen0 at uhub1 port 1 "vendor 0x7104 product > > 0x2202" rev 1.00/1.00 addr 2 > > meanly that my device (CME UF6) is not USB class compliant, > and therefore not supported by the umidi driver? >
IIRC, certain devices use standard midi/usb messages, but they hide the fact that they use the same message format as class compliant ones to avoid triggering a bug in (very) old windows versions. you can try to guess how your device works and if possible add a quirk to the umidi(4) driver, as follows: - figure out which usb endpoints appear to work, run: cat -u /dev/ugen0.N | hexdump -e '1/1 "%02x\n"' and play something on the keyboard until it prints 4-byte messages, try it for N = 1..15 - add the device to /usr/src/sys/dev/usb/usbdevs, run "make" in the same directory to update .h files (keep strings short as they are for other devices). - add the corresponding "fixed endpoint" quirk in umidi_quirks.c probably one similar to the "UM-1" one. Drop me a e-mail if it works and/or you have any questions. Good luck -- Alexandre