M-Audio Midisport 2x2/4x4
Aus Gentoo Linux Wiki
| Laptops • Motherboards • Servers • Eingabegeräte • RAID Controller • TV Karten • Wireless • Andere Hardware • Andere Architekturen • alphabetischer Hardware Index |
Dieses Howto beschreibt, wie die USB-Midi-Geräte Midisport 2x2 und Midisport 4x4 von M-Audio unter Gentoo verwendet werden können. Nach der Installation ist MIDI-IN und MIDI-OUT standardkonform über /dev/midi möglich, sodass sowohl ALSA als auch OSS darauf zugreifen können.
Inhaltsverzeichnis |
[Bearbeiten] Kernel 2.4
Hierfür gibt es ein Rundum-Sorglos-EBuild im Portage namens usbmidi. Das Paket ist eigentlich für die Geräte Midiman 1x1 und 2x2 konzipiert, die derzeit nicht mehr auf dem Markt sind. Es funktioniert aber auch mit den Nachfolgemodellen von M-Audio ohne zusätzliche Konfiguration.
emerge -av usbmidi
Danach sollte das Gerät mit OSS-Midi benutzbar sein.
[Bearbeiten] Kernel 2.6
Fertige EBuilds mit Treibern gibt hierfür (noch) nicht. Und eigentlich braucht man auch keines, denn die Midisport-Geräte funktionieren völlig standardkonform mit dem seit 2.4 deutlich verbesserten Kernelmodul snd-usb-audio. Dazu muss man das Modul in in der Kernel-Konfiguration aktivieren:
-> Device Drivers
-> Sound
-> Advanced Linux Sound Architecture
-> Advanced Linux Sound Architecture
-> USB devices
[M] USB Audio/MIDI driver
Nach dem Kompilieren des Module muss es noch mit modprobe snd-usb-audio geladen werden.
Die Midisport-Geräte haben leider eine flüchtige Firmware. Jedes Mal wenn das Gerät keinen Strom mehr bekommt, löscht es seine Firmware aus dem Speicher. Daher muss man die Firmware vor dem Benutzen wieder einspielen. Unter Windows und unter MacOS machen das die proprietären original Treiber. Unter Linux gibt es aber auch einen Weg, die Daten in das Gerät zu bekommen. Ein Tool, das sowas kann ist fxload. Das Programm wird mit emerge -av fxload installiert.
Jetzt benötigt man noch die Firmware. Das Projekt USB MIDI Firmware Loaders unter [1] bietet ein Tool, das die originale Firmware aus dem Windows-Treiber extrahiert. Die dafür nötigen Schritte sind in der Readme gut dokumentiert.
Besser ist aber, die GPL-Firmware des usbmidi-Projektes zu verwenden. Usbmidi läuft wie oben beschrieben zwar nur mit Kernel 2.4, trotzdem sind die Firmware-Dateien aber brauchbar. Folgende Schritte sind notwendig:
su mkdir /usr/share/midisport cd /usr/share/midisport/ wget http://homepage3.nifty.com/StudioBreeze/software/bin/usbmidi-20040829.tar.gz tar -xzf usbmidi-20040829.tar.gz mv usbmidi-20040829/testing/MidiSport/*.ihx ./ rm -R usbmidi-20040829
Jetzt sollte man noch wissen, wo das Gerät angeschlossen ist:
lsusb | grep Midiman
Die Ausgabe sollte etwa diese Zeile enthalten:
Bus XXX Device YYY: ID 0763:1002 Midiman
XXX ist eine dreistellige Zahl für den Bus, YYY eine Zahl für den Device.
Die Firmware wird jetzt auf das Gerät geladen mit: fxload -D /proc/bus/usb/XXX/YYY -I MidiSport2x2.ihx (bzw. Midisport4x4.ihx).
XXX und YYY muss mit den ermittelten Adressen für Bus und Device ersetzte werden. (Vorangestellte Nullen nicht vergessen!)
Die LED am Gerät sollte jetzt pulsieren. Das Device /dev/midi sollte jetzt funktionieren und ist mit Rosegarden und Co. ansteuerbar.
Die Firmware wird allerdings nach jedem neuen Anschließen bzw. nach jeder Unterbrechung der Stromzufuhr per USB wieder aus dem ROM des Gerätes gelöscht. Es bietet sich also an, hotplug oder udev passend zu konfigurieren.
[Bearbeiten] Firmware-Loader mit udev
[Bearbeiten] Beispiel für MIDISport2x2
Folgende Datei habe ich für meinen MIDISport2x2 erstellt:
cat /etc/udev/rules.d/13-Midisport2x2.rules
SUBSYSTEM=="usb", ACTION=="add",SYSFS{idProduct}=="1001", SYSFS{idVendor}=="0763" ,RUN+="/sbin/fxload -I /usr/share/midisport/MidiSport2x2.ihx"
Leider verhält sich das Archive usbmidi-20040829.tar.gz bei mir nicht wie im obrigen Beispiel. Aus diesem Grund ist noch ein
mv ezusbmidi2x2.ihx MidiSport2x2.ihx
nötig um der Firmware auch den gewünschten Namen zu geben.
MFG Slalomsk8er
[Bearbeiten] Achtung: Ganz neu für OpenSuSe 10.2 User :
Das zugrunde liegende Treiberpaket stammt von Clemens Ladisch, die Projektseite ist <http://usb-midi-fw.sourceforge.net/>. Die dabei erzeugt udev-Rule-Datei ist leider für OpenSuSe 10.2 untauglich. Die in /etc/udev/rules.d erzeugte Datei "42-midisport-firmware.rules" bitte wie folgt für das MidiSport2x2 ändern:
# MidiSport 2x2
ACTION=="add",SUBSYSTEM=="usb",DRIVERS=="",
ATTRS{idProduct}=="1001",ATTRS{idVendor}=="0763", NAME="MIDIMAN2X2",RUN+="/sbin/fxload \
-D /dev/MIDIMAN2X2 /usr/local/share/usb/maudio/MidiSportLoader.ihx -I /usr/local/share/usb/maudio/MidiSport2x2.ihx"
Voraussetzung ist natürlich, das die Hex-Files "MidiSportLoader.ihx" und "MidiSport2x2.ihx" in den angegebenen Verzeichnissen liegen, was aber durch das Sourceforge-Paket von Clemens erledigt wird.
Gruß
Dieter Buch
[Bearbeiten] Automatisches Laden der Kernel-Module
[Bearbeiten] Weiterer Support
-- --D135-1r43 13:50, 21. Jan 2006 (GMT)
Diesem Artikel ist eine Todo-Liste in der Diskussionsseite beigefügt. - Du kannst uns helfen, diesen Artikel zu erweitern, indem du die Punkte auf der Liste abarbeitest.
Wiki > Artikel nach Themen > Hardware > Soundhardware
Wiki > Artikel nach Themen > System > Sound
Wiki > Wartung > Todo
