Cette page n'a pas encore d'étiquettes.
Apportez votre aide…

Ceci est une ancienne révision du document !


Souris : Logitech VX et MX Revolution

Ce guide permet de configurer les souris Logitech VX et MX Revolution identifiées respectivement par 046d:c518 et 046d:c51a Logitech, Inc (également 046d:c525 Logitech, Inc. MX Revolution Cordless Mouse ) lorsque l'on lance lsusb. Cette méthode repose sur http://ubuntuforums.org/showthread.php?t=399099 et utilise evdev et xbindkeys et xvkbd qui sont dans le dépot universe.

Avant Intrepid Ibex, ces 2 souris peuvent également être configurées en utilisant le logiciel BTNX qui offre une interface graphique permettant de détecter les différents boutons de la souris et de leur attribuer l'action voulue sans avoir à éditer le fichier xorg.conf.

Depuis la version Jaunty d'Ubuntu, ces deux modèles de souris sont pris en charge par HAL, il n'y a donc plus rien à modifier dans le fichier xorg.conf. Il suffit d'installer btnx pour configurer la souris.

Il y a quelques petites modifications avec Hardy Heron : - L'adressage avec -name et -phys devient obsolète, et est remplacée par une seule ligne, plus simple.

Tout d'abord, il s'agit de repérer ce nouvel adressage, en tapant dans un terminal (menu applications→accessoires):

find /dev/input/by-id/ -name "*event-mouse"

Qui vous donne un certain nombre de résultats, (palette graphique, etc, …). Voici les miens :

/dev/input/by-id/usb-WACOM_CTE-430-UV3.1-4-event-mouse
/dev/input/by-id/usb-Logitech_USB_Receiver-event-mouse

Vous repérez donc l'adresse correspondant à votre souris (votreidsouris), et on peut passer à la suite : Installation des pilotes spécifiques :

sudo apt-get install xserver-xorg-input-evdev xbindkeys xvkbd

Vous faites une copie de votre fichier de configuration de xorg :

sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.old-gutsy

Vous l'éditez :

gksudo gedit /etc/X11/xorg.conf

Et vous effectuez les modifications dans les deux sections suivantes :

Ici vous commentez l'ancienne section si vous faites une installation neuve (ajout du caractère suivant: # devant chaque début de ligne de la section), et mettez cette section à la place :

Section "InputDevice"
    Identifier     "Le nom de la souris"    
    Driver         "evdev"
    Option         "CorePointer"
#    Option         "Name" "Logitech USB Receiver"      # obsolète, à commenter ou supprimer quand vous faites la migration
    Option        "Device" "/dev/input/by-id/votreidsouris" # Permet de repérer la souris
#    Option         "Phys" "usb-*/input0"      # obsolète, à commenter ou supprimer quand vous faites la migration
EndSection

Vous pouvez ajouter (pour VX ou MX revolution) d'autres options, voir plus bas le tuto Gutsy.

Dans la section suivante, vous ajoutez, ou bien modifiez la ligne déjà existante pour qu'elle ressemble à cela :

Section "ServerLayout"
	InputDevice	"Nom de la souris" "SendCoreEvents"

Vous vous assurez que les noms que vous choisissez pour nommer votre souris dans ce fichier sont bien les mêmes dans ServerLayout et dans InputDevice…

Puis vous vous déconnectez et reconnectez.

Source, en allemand : Wiki allemand

… Et si xorg devait ne pas se lancer : CRTL+ALT+F1 ; connectez-vous ; tapez "sudo vim /etc/X11/xorg.conf" ; tapez A pour mode écrire ; décommentez l'ancienne version, commentez la nouvelle ; tapez ECHAP pour mode commande, tapez :wq ; tapez : sudo killall gdm ; tapez : sudo gdm start et c'est reparti ;)

Installez les paquet

  • xserver-xorg-input-evdev c'est le pilote à proprement parlé
  • xbindkeys xbindkeys et xvkbd servent à associer des actions aux boutons de la souris
  • xvkbd
sudo apt-get install xserver-xorg-input-evdev xbindkeys xvkbd

Modification du fichier xorg.conf

Sauvegarder la version actuelle de xorg.conf

sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf-old

puis Éditer le fichier xorg.conf

Modification de l'ancienne souris

Puis éditez la section correspondant à votre souris qui commence vraisemblablement par :

Section "InputDevice"
    Identifier "Configured Mouse"
    [...]
EndSection

et remplacez l'option CorePointer par SendCoreEvents afin que votre ancienne souris puissent toujours fonctionner (au cas où):

Section "InputDevice"
    Identifier "Configured Mouse"
    [...]
    # Option "CorePointer" remplacer par SendCoreEvents permettra à votre ancienne souris de fonctionner au cas où ...
    Option "SendCoreEvents"
    [...]
EndSection

Puis ajoutez la configuration de votre nouvelle souris.

Ajout de la section VX Revolution

Pour la VX Revolution ajoutez la section suivante :

Section "InputDevice"
  Identifier "VX Revolution"
  Driver "evdev"
  Option "CorePointer"
  Option "Device" "/dev/input/event2"
  Option "Protocol" "ExplorerPS/2"
  Option "Emulate3Buttons" "false"
  Option "Buttons" "11"
  Option "ButtonMapping" "1 2 3 9 8 6 7 13 14"
  Option "ZAxisMapping" "4 5"
EndSection

Ajout de la section MX Revolution

Tout d'abord récupérer le numéro de l'event correspondant à votre souris en tapant la commande

cat /proc/bus/input/devices

ce qui devrait vous donner quelque chose comme ça:

I: Bus=0003 Vendor=046d Product=c51a Version=0111
N: Name="Logitech USB Receiver"
P: Phys=usb-0000:00:0b.1-1.4/input0
S: Sysfs=/class/input/input11
H: Handlers=mouse1 event2 ts1 
B: EV=7
B: KEY=ffff0000 0 0 0 0 0 0 0 0
B: REL=143

I: Bus=0003 Vendor=046d Product=c51a Version=0111
N: Name="Logitech USB Receiver"
P: Phys=usb-0000:00:0b.1-1.4/input1
S: Sysfs=/class/input/input12
H: Handlers=kbd event3 
B: EV=f
B: KEY=7fff 2c3027 bf004440 0 0 1 f80 8807c000 667bfa d9415fed 8e0000 0 0 0
B: REL=40
B: ABS=1 0

repérez y la partie event correspondant à votre configuration dans la ligne

H: Handlers=mouse1 event2 ts1

ici c'est event2

Puis ajoutez la section suivante dans votre xorg.conf:

Section "InputDevice"
    Identifier     "MX Revolution"
    Driver         "evdev"
    Option         "CorePointer"
    Option         "Name" "Logitech USB Receiver"  #permet à evdev de reconnaitre la souris
    Option         "Device" "/dev/input/event2"   # numéro d'event récupéré avec cat /proc/bus/input/devices
    # HWHEELRelativeAxisButtons permet d'inverser les deplacements horizontaux de la molette centrale (pour moi ils fonctionnaient a l'
    Option         "HWHEELRelativeAxisButtons" "7 6" 
EndSection

Ajouter votre souris à la section ServerLayout

toujours dans le fichier /etc/X11/xorg.conf repérez la section ServerLayout et ajoutez y votre nouvelle souris comme suit:

Section "ServerLayout"
    # les lignes suivantes sont les lignes que vous devriez avoir si les votres sont différentes ne les changez pas
    Identifier     "Default Layout"
    Screen         "Default Screen" 0 0
    InputDevice    "Generic Keyboard"
    InputDevice    "Configured Mouse"
    InputDevice    "stylus" "SendCoreEvents"
    InputDevice    "cursor" "SendCoreEvents"
    InputDevice    "eraser" "SendCoreEvents"
    # ajoutez votre souris en mettant VX ou MX en fonction de votre modèle
    InputDevice    "MX Revolution"
EndSection

Sauvez le fichier, fermez vos applications, deloggez vous puis redémarrer le serveur X une fois sur l'écran de login pour prendre en compte la nouvelles configuration :

Ctrl+Alt+BackSpace
Au cas ou votre serveur X ne redémarre pas allez en mode console
Ctrl+Alt+F1

loggez vous et remettez le fichier xorg.conf sauvegardé plus tôt.

sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf-buggy
sudo cp /etc/X11/xorg.conf-old /etc/X11/xorg.conf

puis redémarrez X

  • sous Ubuntu:
    sudo /etc/init.d/gdm restart
  • sous kUbuntu:
    sudo /etc/init.d/kdm restart

Configurer les boutons

Voilà normalement vos boutons sont maintenant tous reconnus, pour vous en assurer vous pouvez tester les codes renvoyés avec l'application xev ce qui vous permettra notamment de récupérer les codes de chaques boutons. (pour la MX Revolution voir la section suivante revoco pour la configuration de la molette qui devrait déjà gérer les déplacements horizontaux)

Si comme moi vous utilisez compiz_fusion j'ai directement configuré tous mes boutons dans le settings manager (pour les boutons supérieurs à 9 il suffit de les entrer au clavier) par exemple le Button17 (clic du milieu de la molette latérale de la MX) initialise le plugin Shift Switcher chez moi.

xbindkeys et xvkbd

Afin de tirer pleinement partie de tous ces magnifiques boutons nous pouvons utiliser xbindkeys, qui permet d'associer une commande à chaque bouton de la souris. Et xvkbd pour simuler des combinaisons de touches au clavier.

Exemple de configuration pour la VX Revolution:

# molette vers la droite -> page suivante dans firefox 
"/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Right]""
m:0x0 + b:6
# molette vers la gauche -> page précédente dans firefox
"/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Left]""
m:0x0 + b:7
# zoom + -> zoom + dans firefox
"/usr/bin/xvkbd -xsendevent -text "\C+""
m:0x0 + b:13
# zoom - -> zoom - dans firefox
"/usr/bin/xvkbd -xsendevent -text "\C-""
m:0x0 + b:15
# Bouton latéral bas -> change d'onglet dans firefox
"xvkbd -xsendevent -text "\C\[Tab]""
m:0x0 + b:8
# Bouton latéral haut -> Afficher tous les onglets (extension showcase de firefox)
"xvkbd -xsendevent -text "\C\Ay""
m:0x0 + b:9
# bouton loupe -> Ouvrir firefox
"firefox"
m:0xO + c:122

Il suffit de recopier ce fichier dans .xbindkeysrc. Ouvrir .xbindkeysrc :

gedit .xbindkeysrc

(le fichier est éventuellement vide) et copier le code ci-dessus. Puis lancer la commande :

xbindkeys

Si tous les boutons marchent et que vous êtes satisfait vous pouvez mettre la commande xbindkeys dans les programme à lancer au démarrage (Système→Préférences→Sessions).

Revoco, pour la molette de la Revolution

Cette partie ne concerne à priori que les possesseurs du modèle MX, ceux de la VX peuvent toujours essayer et reporter ici leur succès ou échecs.

A présent que tout vos boutons fonctionnent, passons au comportement de la molette de la MX Revolution. Celui-ci peut être géré via un petit utilitaire nommé revoco qui permet de récupérer le clic du milieu et de paramétrer les différents modes de défilement de la molette.

Installer revoco

Vous pouvez télécharger la dernière version de revoco ici: http://goron.de/~froese/revoco/

Ensuite, décompressez l'archive, lancez la console, allez dans le dossier décompressé et lancez

make

Vous obtenez alors un exécutable nommé revoco, que vous pouvez alors déplacer dans vos autres programmes :

sudo cp revoco /usr/local/bin/

Utiliser revoco

A présent, si vous tapez revoco dans un terminal, vous obtenez son aide. Pour effectuer une des actions possibles, il faudra utiliser sudo.

Exemple de configuration :

  • sudo revoco click : met votre molette en mode cranté
  • sudo revoco free : met votre molette en mode libre
  • sudo revoco auto=x,y : la molette est en mode cranté pour les petits défilements, mais si vous en lancez un grand, elle passe en mode libre, puis revient en mode cranté. La sensibilité du changement de mode dépend du chiffre que vous indiquerez à la place de x et y. Par exemple 4 ou 5 est un compromis efficace, à vous de choisir la valeur qui vous convient.
  • sudo revoco manual=n : détermine un bouton qui permettra de passer du mode libre au mode cranté. n est le numéro du bouton de la souris donné dans l'aide de revoco.

Enfin, tout ce que vous configurez sera définitif (c'est-à-dire que la souris mémorisera la configuration, même si vous l'éteignez et la rallumez), sauf si vous ajoutez le préfixe temp- devant la commande, auquel cas la configuration sera perdue lors d'une extinction/rallumage de la souris :

revoco temp-auto=4

Contributeurs : contributeur original anonyme, malk0

FIXME Lorsque l'on associe une action au bouton "loupe" il peut y avoir conflit. Notamment lorsque l'on utilise xvkbd.

FIXME Lorsque l'on démarre l'ordinateur sans la souris et qu'on la branche après tous les boutons ne sont pas gérés correctement.

  • souris_logitech_vx_revolution.1323958656.txt.gz
  • Dernière modification: Le 19/09/2014, 18:13
  • (modification externe)