Chibi-nah::blog

Des geekeries, de la MAO, de tout et de rien…

Archives

Astuces diverses concernant la tablette wacom

Updated En cherchant une solution (qui marche) pour l'astuce 7 de l'article précédent, j'ai joué un peu avec xinput et les propriétés de la tablette.

Tout d'abord, listons les périphériques disponibles :

alex@yue ~> xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Wacom ISDv4 E3 Finger touch               id=11   [slave  pointer  (2)]
⎜   ↳ Wacom ISDv4 E3 Pen stylus                 id=12   [slave  pointer  (2)]
⎜   ↳ Microsoft X-Box 360 pad                   id=15   [slave  pointer  (2)]
⎜   ↳ Logitech USB Laser Mouse                  id=16   [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=18   [slave  pointer  (2)]
⎜   ↳ Wacom ISDv4 E3 Pen eraser                 id=20   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Video Bus                                 id=8    [slave  keyboard (3)]
    ↳ Power Button                              id=9    [slave  keyboard (3)]
    ↳ Sleep Button                              id=10   [slave  keyboard (3)]
    ↳ HP Webcam                                 id=13   [slave  keyboard (3)]
    ↳ Microsoft X-Box 360 pad (keys)            id=14   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=17   [slave  keyboard (3)]
    ↳ HP WMI hotkeys                            id=19   [slave  keyboard (3)]

Concentrons nous sur le stylet.

alex@yue ~> xinput list-props "Wacom ISDv4 E3 Pen stylus"
Device 'Wacom ISDv4 E3 Pen stylus':
    Device Enabled (152):   1
    Coordinate Transformation Matrix (154): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    Device Accel Profile (274): 0
    Device Accel Constant Deceleration (275):   1.000000
    Device Accel Adaptive Deceleration (276):   1.000000
    Device Accel Velocity Scaling (277):    10.000000
    Wacom Tablet Area (283):    0, 0, 26112, 16320
    Wacom Rotation (284):   0
    Wacom Pressurecurve (298):  0, 0, 100, 100
    Wacom Serial IDs (285): 227, 0, 2, 0
    Wacom Serial ID binding (286):  0
    Wacom Capacity (287):   -1
    Wacom Pressure Threshold (288): 27
    Wacom Sample and Suppress (289):    2, 4
    Wacom Enable Touch (290):   1
    Wacom Hover Click (299):    0
    Wacom Enable Touch Gesture (291):   0
    Wacom Touch Gesture Parameters (292):   50, 20, 250
    Wacom Tool Type (293):  "STYLUS" (296)
    Wacom Button Actions (294): "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0)
    Wacom Debug Levels (295):   0, 0

Je souhaite retrouver le même comportement que sous Windows : un appui sur le bouton du stylet simule un clic droit de la souris, sans toucher l'écran. Par défaut, il faut appuyer sur le bouton puis tapoter sur l'écran avec le stylet.

Utilisons alors la propriété Wacom Hover Clic

alex@yue ~> xinput set-prop "Wacom ISDv4 E3 Pen stylus" "Wacom Hover Click" 1

alex@yue ~>

Désormais, le comportement du stylet correspond à ce que je souhaite.

Parfois, il peut être utile de désactiver le mode tactile de l'écran.

Effectuons la même chose que pour le stylet :

alex@yue ~> xinput list-props "Wacom ISDv4 E3 Finger touch"
Device 'Wacom ISDv4 E3 Finger touch':
    Device Enabled (152):   1
    Coordinate Transformation Matrix (154): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    Device Accel Profile (274): 0
    Device Accel Constant Deceleration (275):   1.000000
    Device Accel Adaptive Deceleration (276):   1.000000
    Device Accel Velocity Scaling (277):    10.000000
    Wacom Tablet Area (283):    0, 0, 2611, 1632
    Wacom Rotation (284):   0
    Wacom Serial IDs (285): 227, 1, 3, 0
    Wacom Serial ID binding (286):  0
    Wacom Capacity (287):   -1
    Wacom Pressure Threshold (288): 27
    Wacom Sample and Suppress (289):    2, 4
    Wacom Enable Touch (290):   1
    Wacom Enable Touch Gesture (291):   1
    Wacom Touch Gesture Parameters (292):   50, 20, 250
    Wacom Tool Type (293):  "TOUCH" (273)
    Wacom Button Actions (294): "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0)
    Wacom Debug Levels (295):   0, 0

La propriété est bien entendu "Wacom Enable Touch".

alex@yue ~> xinput set-prop "Wacom ISDv4 E3 Finger touch" "Wacom Enable Touch" 0
alex@yue ~>

Pour réactiver l'écran tactile, il suffit de remettre la propriété à "1".

À noter que le stylet,a la gomme et le tactile sont totalement indépendants les uns des autres.

Pour que les changements soient permanents, il suffit d'écrire un petit script qui sera exécuté lors de l'ouverture de la session.

Pour revenir sur l'objectif de départ : faire en sorte que le stylet ne soit utilisable que sur un seul écran, au lieu de s'étendre sur les deux.

J'ai testé les deux méthodes :

xinput set-prop "Wacom ISDv4 E3 Pen stylus" --type=float "Coordinate Transformation Matrix" 0.4 0 0.6 0 0.666667 0 0 0 1

xsetwacom set "Wacom ISDv4 E3 Pen stylus" MapToOutput "LVDS1"

Aucune différence pour les deux, le curseur est toujours instable, et saute d'un écran à l'autre, que ça soit avec la carte intel ou la carte ati. Je laisse tomber pour le moment.

Bonne nouvelle : J'ai refait des tests (le 5 janvier 2012), et cela fonctionne, en tout cas, avec la carte AMD. En "mappant" le stylet sur l'écran LVDS, le stylet reste bien sur l'écran du laptop, il n'y a plus le phénomène de "jitter" ou de saut d'un écran à l'autre qui se produit. J'ai pu dessiner sous Gimp sur mon écran tout en "regardant" une vidéo sur l'autre écran.

Regardant entre guillements, parce que c'est difficile de regarder les deux écrans en même temps, tout en étant concentré sur un seul :D.