Cette page est en cours de rédaction.
Apportez votre aide…
Ceci est une ancienne révision du document !
Configuration d'une tablette Wacom Intuos
Cette page explique comment faire fonctionner une tablette graphique Wacom Intuos et son stylet sous Ubuntu :
- Les commandes pour configurer sa tablette
- Des exemples de scripts pour automatiser la configuration à votre guise
Dans les paramètres Ubuntu, l'interface graphique possède des fonctionnalités de configuration très limitées, mais elle permet malgré tout de changer l'orientation de la tablette (gaucher ou droitier), ainsi que le mode absolu ou souris. Le reste des fonctionnalités se configure en ligne de commande avec xsetwacom.
Principales commandes
Commencez par brancher votre tablette et vérifier qu'elle est détectée :
~$ xsetwacom --list devices Wacom Intuos BT S Pen stylus id: 22 type: STYLUS Wacom Intuos BT S Pad pad id: 23 type: PAD
Dans les commandes qui suivent, vous pouvez utiliser l'id du périphérique (ici 22 ou 23) ou bien son nom complet entre guillemets.
Pour lister tous les paramètres disponibles (supportés ou non, selon votre matériel) :
~$ xsetwacom --list parameters
Vous pouvez obtenir les valeurs de tous les paramètres :
~$ xsetwacom get 22 all # Pensez à remplacer 22 par votre id
Si vous utilisez un serveur X, vous pouvez lister les propriétés :
~$ xinput list-props 22 # Pensez à remplacer 22 par votre id
Configurer la zone de dessin sur un seul écran : Par défaut, la tablette est divisée en autant de zones que vous avez d'écrans, ce qui réduit fortement la surface de dessin et la précision si vous avez 2, 3 ou 4 écrans. Il est souvent utile de n'associer la tablette qu'à un seul écran :
Cherchez d'abord le nom de tous les écrans actuellement connectés :
~$ xrandr | grep " connected" | cut -d" " -f1 eDP-1-1 # Ecran intégré au laptop DP-1-1-1 # Moniteur externe DP-1-1-2 # Second moniteur externe
Associez ensuite les id de votre tablette et stylet à l'écran que vous souhaitez :
xsetwacom set 22 MapToOutput DP-1-1-1 xsetwacom set 23 MapToOutput DP-1-1-1
Dans le cas où le nom d'écran n'est pas reconnu : utilisez le nom d'écran next qui configurera la tablette sur l'écran suivant. Repétez la commande avec next jusqu'à ce que vous tombiez sur le bon écran à configurer en faisant des essais successifs avec votre stylet.
Configurer les boutons
Vous pouvez configurer les boutons de votre Intuos pour qu'ils déclenchent des touches clavier. Vous pouvez utiliser les raccourcis par défaut (Ctrl-Z, Ctrl-C, Ctrl-V, …) ou bien configurer les raccourcis-clavier de chaque logiciel cible (Gimp, Krita, Inkscape, Okular, Evince, …) pour associer ces combinaisons de touches à des actions précises.
Selon votre modèle d'Intuos, le nombre et le numéro des boutons peut varier.
Pour Intuos 5 :
- Button 1 = bouton central du touch ring
- En descendant sous le touch ring, dans l'ordre : Button 2, 3, 8, 9
- En remontant au dessus du touch ring, dans l'ordre : Button 10, 11, 12, 13
Note : En mode gaucher, les up et down sont inversés.
Pour Intuos S : Sur l'id du stylo :
- Le petit bouton du stylo : Button 2
- Le long bouton du stylo : Button 3
Sur l'id de la tablette :
- A gauche du bouton de mise en marche : Button 1 et Button 2
- A droite du bouton de mise en marche : Button 3 et Button 8
Quel que soit votre matériel, vous pouvez ensuite associer chaque bouton à des appuis de touches :
~$ xsetwacom set 22 AbsWheelDown "key i" ~$ xsetwacom set 22 AbsWheelUp "key d"
Exemple pour les boutons 2, 3, 8 et 9 de l'Intuos 5 que l'on associe à différents raccourcis :
~$ xsetwacom set "Wacom Intuos5 touch L Pen pad" Button 2 "key ctrl" ~$ xsetwacom set "Wacom Intuos5 touch L Pen pad" Button 3 "key ctrl z" ~$ xsetwacom set "Wacom Intuos5 touch L Pen pad" Button 8 "key m" ~$ xsetwacom set "Wacom Intuos5 touch L Pen pad" Button 9 "key p"
Consultez la commande suivante pour connaître tous les raccourcis auxquels vous pouvez associer les boutons de l'Intuos :
~$ xsetwacom --list modifiers
Modification des paramètres de décélération en mode souris (relatif / serveur X)
Le mode absolu est souvent plus prisé, mais le mode souris est pratique si vous avez une petite surface (A6) mappée sur un grand écran et que ça manque de précision.
~$ xinput set-float-prop 22 "Device Accel Constant Deceleration" 3.000000
Modifiez 3.000000 par la valeur de décélération souhaitée : Plus ce nombre est grand, plus cela ralentit le curseur, mais uniquement s'il est configuré en mode souris (relatif), pas en absolu !
Les scripts de configuration prêts à l'emploi
Personnalisez les scripts ci-dessous pour configurer la tablette sur votre écran et vos raccourcis claviers, puis rendez ce script exécutable et en démarrage automatique :
~$ chmod +x ~/configure_intuos_S_jammy.sh ~$ echo /home/$USER/configure_intuos_S_jammy.sh
Prenez note que la configuration doit être réexécutée via le script si vous débranchez puis rebranchez votre Intuos.
Script 1 : Intuos S sous Jammy pour le dessin dans le mode présentation d'Okular
Les 2 boutons du stylo sont configurés pour passer à la diapo suivante et précédente. Les 4 boutons de la tablette de part et d'autre du bouton d'allumage sont configurés pour effacer/dessiner en couleur sur les diapos, mais vous devez d'abord associer Ctrl-Alt-R à Outil de dessin : Rouge dans les raccourcis clavier d'Okular (Ctrl-Alt-virgule pour modifier les raccourics). Idem pour les autres touches W (white), G (green), E (erase screen).
- configure_intuos_S_jammy.sh
#!/bin/bash DEVSTYLUS=$(xsetwacom --list devices | grep stylus | awk -F'\t' '/id:/{print $2}' | cut -d' ' -f2) DEVTABLET=$(xsetwacom --list devices | grep pad | awk -F'\t' '/id:/{print $2}' | cut -d' ' -f2) if [ -z $DEVSTYLUS ]; then echo "Stylus not found, try xsetwacom --list devices" exit 1 fi if [ -z $DEVTABLET ]; then echo "Tablet not found, try xsetwacom --list devices" exit 1 fi xsetwacom --set $DEVSTYLUS MapToOutput "DP-1-1-1" ####### NOW MAPPING THE INTUOS S stylus to SOME KEYS #### The mapping below is best for Okular presentation mode #### To help modify the mapping, use: #### xsetwacom --list modifiers (get the available target keys) #### Note that stylus buttons work when the stylus is close to the tablet (2-3cm above the surface) # The small stylus button is mapped to right arrow (next slide in Okular) xsetwacom --set $DEVSTYLUS Button 2 "key right" # The long stylus button is mapped to left arrow (previous slide in Okular) xsetwacom --set $DEVSTYLUS Button 3 "key left" #### NOW MAPPING the 4 tablets buttons (2 on the left and 2 on the right of the POWER button) to colors for the Okular persentation mode # In the 5 tablet buttons, the buttons (1, 2, 3, 8) (yes the 4th button is 8, don't ask why) are mapped to some keyboard shortcuts # If you want these shortcuts to be enabled in Okular, make sure your first define them because Okular has no default to draw (Ctrl Alt , to edit shortcuts) xsetwacom --set $DEVTABLET Button 1 "key ctrl alt r" xsetwacom --set $DEVTABLET Button 2 "key ctrl alt g" xsetwacom --set $DEVTABLET Button 3 "key ctrl alt w" xsetwacom --set $DEVTABLET Button 8 "key ctrl alt e"
Script 2 : Intuos 5 sous Trusty pour le dessin avec Gimp
- configure_intuos_5_trusty.sh
#!/bin/bash ## Si la modification du fichier rc.local n'ouvre pas les droits en écriture du fichier status_led0_select, alors passer par sudo et décommenter la ligne suivante : #sudo /bin/chmod 666 /sys/bus/usb/devices/2-7:1.0/wacom_led/status_led0_select ## note : sudo demande de taper le mot de passe administrateur. De plus, allez dans votre système de fichier pour trouver le chemin exact vers le fichier "status_led0_select" et ## corriger la commande si nécessaire. ## Voir les commentaires au sujet de la technique rc.local versus sudo. ## lance xbindkeys si il n'est pas déjà lancé. Ceci concerne le touch ring. Voir les commentaires du script "Toggle ring.sh". ps -e | grep -q xbindkeys || xbindkeys & ## In order to bind key "Ctrl Alt r" to "Toggle ring.sh". xsetwacom set "Wacom Intuos5 touch L Pen pad" Button 1 "key Ctrl Alt r" ## Faites vos associations de bouttons ici. xsetwacom set "Wacom Intuos5 touch L Pen pad" Button 9 "key r" xsetwacom set "Wacom Intuos5 touch L Pen pad" Button 2 "key Ctrl z" xsetwacom set "Wacom Intuos5 touch L Pen pad" Button 3 "key PgDn" xsetwacom set "Wacom Intuos5 touch L Pen pad" Button 8 "key PgUp" xsetwacom set "Wacom Intuos5 touch L Pen pad" Button 10 "key h" ## Mappe le stylet et la gomme à un écran donné (ici DFP2) : xsetwacom set "Wacom Intuos5 touch L Pen stylus" MapToOutput DFP2 xsetwacom set "Wacom Intuos5 touch L Pen eraser" MapToOutput DFP2
Script 3 : Commutation pour le touch ring d'Intuos 5
Le script "intuos_5_toggle_ring.sh" change automatiquement les commandes associées à AbsWheelUp et AbsWheelDown lorsque l'on appuie sur le bouton central du touch ring. Cela permet de commuter entre les quatre modes. Pour cela, il faut associer un raccourcis clavier (par exemple Alt Ctrl r) au script suivant (un raccourcis qui si possible n'est pas déjà utilisé pour autre chose!). Il faut pour cela utiliser xbindkeys et installer la version graphique xbindkeys-config.
Pour lancer xbindkey en version graphique, tapez dans un terminal :
xbindkeys-config
Enregistrer le fichier script suivant sous le nom "Toggle ring.sh" et le rendre exécutable, puis associer dans xbindkeys-config le raccourcis "Control Alt r" à la commande/action suivante : /home/erwan/Documents/Admin_PC/Tablette\ Wacom\ Intuos/Toggle\ ring.sh ## Note : pensez à corriger la commande avec votre propre chemin d'accès à votre script "Toggle ring.sh".
ATTENTION :
Il faut aussi penser à donner les droits de modification du fichier "status_led0_select" qui gère les LEDs du touch ring. Pour cela passer par la modification du rc.local donnée en commentaire du script "Toggle ring.sh", ou par la commande sudo dans le script "configure_intuos_5_trusty.sh". Pour voir la différence et choisir entre ces deux techniques, voir le commentaire dans le script "Toggle ring.sh":
- Toggle ring.sh
#!/bin/bash ## Touch ring toggle script for Wacom Intuos 5 ## ## Bind Button 1 (button center of touch ring) to the script. Ceci est fait dans l'interface graphique d'xbindkeys. Voir commentaire à ce sujet. ## ## Technique du "rc.local", ne marche que si la tablette est branchée au moment du boot de l'ordi. ## To allow script to select mode status LEDs edit rc.local to change root ## only permissions on the sysfs status_led0_select file: ## gksudo gedit /etc/rc.local ## Add the following comment and command (before 'exit 0'): ## # Change permissions on status_led0_select file so being root isn't ## # required to switch Wacom touch ring mode status LEDs. ## /bin/chmod 666 /sys/bus/usb/devices/2-7:1.0/wacom_led/status_led0_select ## # OR (chez moi il y en a deux, il faut tester l'un et l'autre pour trouver le bon) ## /bin/chmod 666 /sys/bus/usb/devices/2-7:1.1/wacom_led/status_led0_select ## ## Cette technique modifiant le fichier "rc.local" ne fonctionne que lorsque la tablette est branchée dès le boot du PC. Une autre technique existe si vous souhaitez pouvoir brancher votre tablette en cours de cession, ## mais il faudra alors rentrer votre mot de passe administrateur à chaque fois... Pour cela décommenter la ligne sudo bin/chmod 666 dans le script "intuos.sh" ## Pour vérifier que les droits sont acquis : ## ls -l /sys/bus/usb/devices/2-7:1.0/wacom_led/status_led0_select ## Si réponse est la suivante, les droits ne sont pas acquis, et il faut donc passer par sudo : ## -rw------- 1 root root 4096 Mar 6 12:10 /sys/bus/usb/devices/3-2:1.0/wacom_led/status_led0_select ## ## ## Intuos - status_led0_select file = the left (only) ring status LEDs. ## Cintiq - status_led1_select = the left ring; status_led0_select = ## the right ring status LEDs. Same for the touchstrips. ## ## For mode state notification use: ## sudo apt-get install libnotify-bin ## Otherwise comment (#) out the notify-send lines. If libnotify-bin ## installed see 'man notify-send' for details. # check if mode_state file exists, if not create it and set to 0 if [ ! -f /tmp/mode_state ]; then echo 0 > /tmp/mode_state fi # read mode state value from temporary file MODE=`cat /tmp/mode_state` # select touch ring mode status LED for current mode state echo $MODE > /sys/bus/usb/devices/2-7:1.0/wacom_led/status_led0_select # for DEVICE use the pad "device name" from 'xinput list' #DEVICE="Wacom Intuos4 6x9 pad" DEVICE="Wacom Intuos5 touch L Pen pad" # set touch ring function option and notification for the 4 toggled modes if [ "$MODE" == 0 ]; then xsetwacom set "$DEVICE" AbsWheelUp key minus # scroll up xsetwacom set "$DEVICE" AbsWheelDown key plus # scroll down notify-send -t 1500 "Mode 1: Scroll up or down." elif [ "$MODE" == 1 ]; then xsetwacom set "$DEVICE" AbsWheelUp key d # increase brush radius (must be mapped in GIMP) xsetwacom set "$DEVICE" AbsWheelDown key i # decrease brush radius (must be mapped in GIMP) notify-send -t 1500 "Mode 2: Increase or decrease brush size in Gimp" elif [ "$MODE" == 2 ]; then xsetwacom set "$DEVICE" AbsWheelUp key a # zoom in xsetwacom set "$DEVICE" AbsWheelDown key b # zoom out notify-send -t 1500 "Mode 3: Zoom in or out in Gimp." elif [ "$MODE" == 3 ]; then xsetwacom set "$DEVICE" AbsWheelUp key c # select previous layer xsetwacom set "$DEVICE" AbsWheelDown key e # select next layer notify-send -t 1500 "Mode 4: Select previous or next layer in Gimp" fi # toggle button increment counter MODE=$((MODE += 1)) # set next mode state if (( "$MODE" > 3 )); then # roll over to 0, only 4 mode states available echo 0 > /tmp/mode_state else echo $MODE > /tmp/mode_state fi
Sources
- Pour le touch ring :
- Pour xsetwacom et d'autres choses (en français !) :