Page 1 sur 1

[Clavier] Activer 4 touches de fonction (non résolu)

Publié : lun. 29 mars 2010, 21:06
par Kiljaeden
Salut,
j'ai sur mon clavier 4 touches qui n'ont aucune fonction actuellement. Je voulais leur attribuer :
-couper/remettre le son
-chanson précédente mpd
-play/pause mpd
-chanson suivante mpd
Donc je me suis renseigné et suivi la doc.
Manque de bol, xev ne renvoie rien pour ces touches.
Donc je lance un dmesg. Et là, j'ai un message. Ce qui est étonnant, c'est que ça semble très aléatoire : les messages d'erreur n'apparaissent pas systématiquement à l'appui sur les touches...
Bref, j'ai réussi à récupérer un message d'erreur pour mes touches. Voilà pour la première et la deuxième :

Code : Tout sélectionner

Mar 29 19:10:33 ryan kernel: atkbd.c: Unknown key pressed (translated set 2, code 0x6f on isa0060/serio0).
Mar 29 19:10:33 ryan kernel: atkbd.c: Use 'setkeycodes 6f <keycode>' to make it known.
Mar 29 19:10:33 ryan kernel: atkbd.c: Unknown key released (translated set 2, code 0x6f on isa0060/serio0).
Mar 29 19:10:33 ryan kernel: atkbd.c: Use 'setkeycodes 6f <keycode>' to make it known.
Mar 29 19:10:47 ryan kernel: atkbd.c: Unknown key pressed (translated set 2, code 0x55 on isa0060/serio0).
Mar 29 19:10:47 ryan kernel: atkbd.c: Use 'setkeycodes 55 <keycode>' to make it known.
Mar 29 19:10:47 ryan kernel: atkbd.c: Unknown key released (translated set 2, code 0x55 on isa0060/serio0).
Mar 29 19:10:47 ryan kernel: atkbd.c: Use 'setkeycodes 55 <keycode>' to make it known.
Donc, j'y vais, je suis le conseil, et je fais un setkeycode 55 101 (101 étant un emplacement libre trouvé en faisant for ((i=80;i<256;i++));do getkeycodes|grep -q $i || echo -n "$i ";done

Après je refait un xev, et il ne trouve toujours rien.

Ai-je mal fait quelque chose ?
Avez-vous des idées pour activer ces touches ?

Merci d'avance !

Re: [Clavier] Activer 4 touches de fonction (non résolu)

Publié : lun. 29 mars 2010, 23:54
par Ricard

Code : Tout sélectionner

$ tail -f /var/log/messages
en tapant sur les touches incriminées, tu regardes ce qu'il se passe dans le log. Ça doit te donner le keycode normalement. Ça fonctionne pas toujours avec xev.

J'ai trouvé cette page aussi.

Re: [Clavier] Activer 4 touches de fonction (non résolu)

Publié : mar. 30 mars 2010, 11:14
par tuxce
Kiljaeden a écrit : Donc, j'y vais, je suis le conseil, et je fais un setkeycode 55 101 (101 étant un emplacement libre trouvé en faisant for ((i=80;i<256;i++));do getkeycodes|grep -q $i || echo -n "$i ";done
Certains keycodes ne sont pas associés à des touches et il est bien probable que le 101 soit associé à l'action Break:

Code : Tout sélectionner

dumpkeys  | grep -e 'keycode [0-9]\+ =$' | head
pour avoir les codes libres.
Le souci est peut être lié.

Re: [Clavier] Activer 4 touches de fonction (non résolu)

Publié : mar. 30 mars 2010, 18:40
par Kiljaeden
@tuxce :
OK, merci du tuyau. Je vais tester ça.
Mais alors, les keycodes que j'ai attribué, comment les re-libérer ?
@Ricard, la commande dmesg que je cite dans mon message est équivalent à celle que tu proposes. Pour être précis, c'est d'ailleurs avec la tienne que j'ai chopé l'extrait de log que je cite dans mon message.

EDIT : ça ne fonctionne pas mieux avec la command de tuxce (qui d'ailleurs ne fonctionnait pas telle quelle, j'ai du la modifier)

Re: [Clavier] Activer 4 touches de fonction (non résolu)

Publié : mar. 30 mars 2010, 22:44
par tuxce
T'as modifié quoi dedans ? (et par curiosité, qu'est ce qui ne fonctionnait pas en l'état?)

Re: [Clavier] Activer 4 touches de fonction (non résolu)

Publié : mer. 31 mars 2010, 16:13
par Kiljaeden
Ce qui ne fonctionnait pas, c'est que quand je la lançais, ça me disais que la commande dumpkeys n'a pas été trouvée, alors que si je lançais un banal dumpkeys, la commande se lançait.
Du coup, j'ai fait ça en deux commandes :

Code : Tout sélectionner

dumpkeys > liste_touches
grep -e 'keycode [0-9]\+ =$' liste_touches | head
Et là ça fonctionnait. Je ne comprends pas pourquoi ^^
Sinon, j'ai compris pourquoi j'avais remarqué ça :
Ce qui est étonnant, c'est que ça semble très aléatoire : les messages d'erreur n'apparaissent pas systématiquement à l'appui sur les touches...
C'est qu'en fait, les touches que je voulais activer ne renvoient pas de message d'erreur du kernel, pas plus que de réaction dans xev. Les lignes d'erreur que j'avais dans le kernel étaient celles d'autres touches sur lesquelles j'avais appuyé. (Fn-F3 et Fn-F8 pour info).
Du coup, avec setkeycodes, j'ai réussi à activer ces touches-là pour X, je les vois dans xev !
J'ai donc deux questions :
-Je leur ai attribué les noms XF86AudioPlay et XF86AudioMute, mais comment attribuer des raccourcis openbox avec ces noms ?
-Comment faire reconnaître ces quatre mystérieuses touches qui ne suscitent pas d'erreur, mais pas non plus de réaction chez xev ?

Re: [Clavier] Activer 4 touches de fonction (non résolu)

Publié : mer. 31 mars 2010, 16:32
par oktoberfest
Hello,

pour attribuer une action à tes touches, tu ajoutes quelque chose du style :

Code : Tout sélectionner

<keybind key="XF86AudioRaiseVolume">
  <action name="Execute">
    <command>aumix -v +2</command>
  </action>
</keybind>
Dans la section keyboard de ton rc.xml

Re: [Clavier] Activer 4 touches de fonction (non résolu)

Publié : mer. 31 mars 2010, 16:39
par tuxce
Kiljaeden a écrit : Et là ça fonctionnait. Je ne comprends pas pourquoi ^^
un mauvais copie coller, une config bizarre ou autre, mais "x | y" ou "x" ça revient au même, je vois pas pourquoi il trouverait pas puis si.
Kiljaeden a écrit : -Comment faire reconnaître ces quatre mystérieuses touches qui ne suscitent pas d'erreur, mais pas non plus de réaction chez xev ?
Il faut voir si quelqu'un a développé un module pour prendre en compte ce clavier.

Re: [Clavier] Activer 4 touches de fonction (non résolu)

Publié : mer. 31 mars 2010, 18:19
par Kiljaeden
Vu l'épave, j'ai de sérieux doutes que quelqu'un ait développé un module. En supposant que si, je trouve ça où ?