Evdev/MX3100

Aus Ubuntu-Forum Wiki

Wechseln zu: Navigation, Suche

804.png 710.png

Inhaltsverzeichnis


1 Allgemeines

Dieser Artikel erklärt, wie man den evdev-Treiber mit dem Logitech Cordless Desktop MX3100 benutzt. Bei dieser Maus-Tastatur-Kombi sind sowohl Maus als auch Tastatur schnurlos über einen gemeinsamen Empfänger mit einem USB-Port an den PC angeschlossen. Dieser Artikel ist als Ergänzung zu Artikel zu Evdev gedacht, und sollte erst befolgt werden wenn dieser gelesen und verstanden wurde.

Der Evdev-Artikel zeigt, wie man relativ einfach eine Maus per evdev anschließen kann. Leider ist es mit der Kombination aus Maus und Tastatur etwas (aber nicht viel!) schwieriger, zumal wenn sie schnurlos angeschlossen sind.

Eventuell ist diese Anleitung auch für die anderen schnurlosen Maus-Tastatur-Kombinationen von Logitech anwendbar. Falls jemand erfolgreich mit dieser Anleitung einen anderen Cordless Desktop angeschlossen hat, wäre eine kleine Notiz an mich oder gar ein Eintrag in diesem Artikel sehr hilfreich.

2 Konfiguration

Der Artikel zu Evdev sollte gelesen werden, bevor hier weiter gemacht wird. Insbesondere wird dort erklärt wie evdev installiert wird.

Die Konfiguration von evdev wird in /etc/X11/xorg.conf vorgenommen. Bevor irgendwelche Änderungen vorgenommen werden, sollte ein Backup der Datei angelegt werden:

sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf_pre_evdev

So kann die bisherige Konfiguration wieder hergestellt werden, sollte irgendetwas schiefgehen.

2.1 Gerätename

Wie im Evdev-Artikel vorgestellt, muss zunächst der Gerätename festgestellt werden. Etwas komplizierter wird es dadurch, das Maus und Tastatur über einen gemeinsamen USB Receiver (Funkempfänger) angeschlossen sind, und daher den selben Gerätenamen haben.

cat /proc/bus/input/devices

egibt

I: Bus=0003 Vendor=046d Product=c512 Version=0110
N: Name="Logitech USB Receiver"
P: Phys=usb-0000:00:02.1-1/input0
S: Sysfs=/devices/pci0000:00/0000:00:02.1/usb2/2-1/2-1:1.0/input/input1
U: Uniq=
H: Handlers=kbd event1 
B: EV=120013
B: KEY=10000 7 ff800000 7ff febeffdf ffefffff ffffffff fffffffe
B: MSC=10
B: LED=ff1f

I: Bus=0003 Vendor=046d Product=c512 Version=0110
N: Name="Logitech USB Receiver"
P: Phys=usb-0000:00:02.1-1/input1
S: Sysfs=/devices/pci0000:00/0000:00:02.1/usb2/2-1/2-1:1.1/input/input2
U: Uniq=
H: Handlers=kbd mouse1 event2 
B: EV=20017
B: KEY=1f ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff 0 3300007 ff80d8fa fd01d000 1f0000 0 0 0
B: REL=143
B: MSC=10
B: LED=ff00

Um trotzdem Maus und Tastatur auseinanderhalten zu können, muss dem evdev-Treiber noch mehr Informationen gegeben werden. Eine Möglichkeit ist, die Informationen der "Phys=..." Zeile zu benutzen. Das sähe in der fertigen xorg.conf etwa so aus:

Option  "Phys"  "usb-0000:00:02.1-1/input0"

Der Nachteil dieser Methode ist, das die Informationen der Phys-Zeile vom USB-Port abhängig sind, in dem der Empfänger eingesteckt ist. Wird ein anderer Port verwendet, gilt auch ein anderer "Phys"-String. Dann kann es dazu kommen, dass Maus und Tastatur ihren Dienst einstellen, da evdev die Geräte an einem anderen Port erwartet.

Besser ist die Verwendung der "Device" Option, welche einen Device-Node übergeben bekommt. Leider fehlen mir weitere Informationen zu dieser Methode, ich kann nur sagen, dass es funktioniert. Wer mehr Informationen hat, ist herzlich dazu eingeladen hier einen Beitrag zu leisten. :)

2.2 Alte Einstellungen auskommentieren

Maus und Tastatur haben jeweils einen Eintrag in der xorg.conf. Beide beginnen mit Section "Input Device". Der Eintrag für die Tastatur geht weiter mit Identifier "Generic Keyboard", während der der Maus mit Identifier "Configured Mouse" fortgesetzt wird. Beide Einträge müssen von Section ... bis EndSection auskommentiert werden (ein # am Anfang jeder Zeile). Sie werden gleich von den neuen Einträgen ersetzt.

2.3 Fertige Einträge

Die beiden fertigen Einträge sehen dann so aus:

Section "InputDevice"
        Identifier      "Generic Keyboard"
        Driver          "evdev"
        Option          "Name"          "Logitech USB Receiver"
        Option          "Device"        "/dev/input/event1"
        Option          "CoreKeyBoard"
#        Option          "XkbRules"      "xorg"
#        Option          "XkbModel"      "evdev"
#        Option          "XkbLayout"     "de"
#        Option          "XkbVariant"    "deadacute"
EndSection
Section "InputDevice"
        Identifier      "Configured Mouse"
        Driver          "evdev"
        Option          "Name"          "Logitech USB Receiver"
        Option          "Device"        "/dev/input/event2"
        Option          "SendCoreEvents" "true" 
        Option          "CorePointer"
EndSection

Die auskommentierten Zeilen definieren ein paar weitere Tastatureinstellungen, und können nach Bedarf angepasst oder auch weggelassen werden.

Die obigen Zeilen müssen in die xorg.conf eingetragen werden. Danach muss einmal der X-Server neugestartet werden, und dann sollten die neuen Einstellungen gültig sein.

2.3.1 Änderungen rückgängig machen

Bei Problemen kann die alte Konfiguration wieder hergestellt werden durch:

sudo cp /etc/X11/xorg.conf_pre_evdev /etc/X11/xorg.conf

3 Ergebnis

Mit den beschriebenen Änderungen liefert jede Taste der Maus (12 Stück, wenn ich richtig gezählt habe) und jede Sondertaste der Tastatur (eine Menge :)) einen eigenen Keycode, der mit xbindkeys oder gnome-keybinding-properties weiterverwenden kann.

4 Hardy vs. Gutsy

Diese Anleitung sollte sowohl für Gutsy Gibbon (7.10) als auch für Hardy Heron (8.04) funktionieren, da die Konfiguration beinahe 1:1 von Gutsy nach Hardy portiert wurde.

Allerdings gab es einige Änderungen an evdev, die mit Hardy eingeführt wurden. So lieferte zum Beispiel unter Gutsy einige Tasten wie zum Beispiel Play/Pause und die "Taschenrechner"-Taste XF86-Keycodes (wie XF86AudioPlay oder XF86Calculator), während andere numerische Keycodes lieferten. Mit Hardy scheinen alle Tasten einen numerischen Keycode zu senden, die allerdings komplett anders sind als die numerischen Codes unter Gutsy.

Abgesehen davon gab es auch einige Änderungen in der xorg.conf. So müssen zum Beispiel "Configured Mouse" und "Generic Keyboard" nicht mehr in der "ServerLayout" Section eingetragen werden, sondern sind auch ohne das aktiv (falls dies bereits unter Gutsy möglich gewesen sein sollte lasse ich mich gerne korrigieren, mir ist es aber zumindest nicht aufgefallen).

Falls noch weitere Unterschiede zwischen Gutsy und Hardy bestehen sollten die dieses Howto betreffen, bin ich sehr daran intressiert sie zu hören, wie auch an allgemeinen Erfahrungsberichten mit Cordless Desktops und evdev.

5 Links

Meine Werkzeuge
Namensräume
Varianten
Aktionen
Forum
Navigation
Internes
Bearbeitungshilfen
Werkzeuge