[Clavier multimédia] Reconnaissance des touches...(Résolu)

Reconnaissance et configuration du matériel / kernel linux
Avatar de l’utilisateur
MrHarry
Hankyu
Messages : 19
Inscription : ven. 16 janv. 2009, 21:44

[Clavier multimédia] Reconnaissance des touches...(Résolu)

Message par MrHarry »

Bonjour,
[2.6.30-ARCH (32bits) - Gnome 2.26.3]

J'ai un clavier "Logitech Media Keyboard 600" qui possède des touches multimédias.
Certaines touches sont reconnues, d'autres pas.

J'ai utilisé "xev" pour voir s'il se passait un événement particulier quand j'appuyais sur une de ces touches.
Résultat : nul

J'ai essayé avec la commande "dmesg"...
Résultat : Aucune trace quand j'appuie sur une des touches non reconnues.

J'ai essayé avec "showkey" en mode console...
Résultat : J'obtiens le "keycode" de chaque touche.

Loupe (keycode 268)
VoIP (keycode 256)
FMode (keycode 271)
Traitement de texte (keycode 421)
Feuille de calcul (keycode 423)
Présentation (keycode 425)
A (keycode 264)
B (keycode 265)
C (keycode 266)
D (keycode 267)

Les touches ne sont pas reconnues, car la valeur de leur "keycode" est supérieure à 255.
J'ai cherché à savoir s'il y avait un moyen de translater ces "keycodes", pour qu'ils soient inférieurs à 255.

En cherchant sur Internet, je suis tombé sur le forum d'Archlinux (usa).
http://bbs.archlinux.org/viewtopic.php?id=51707
Grâce au programme "keyfuzz", il est possible de faire de la translation de "keycode".
En suivant ce qu'avait fait la personne du forum, j'ai réussi à obtenir le résultat désiré.

Il y a toutefois un point qui m'échappe.
Pour que la translation fonctionne, il faut indiquer à "keyfuzz" le "scancode" de la touche à translater et le nouveau "keycode". Je ne sais pas comment a fait la personne pour trouver le "scancode", j'ai essayé avec un "showkey -s", mais rien ne se passe.

J'attends vos suggestions. :copain:
Merci
MH
Dernière modification par MrHarry le ven. 09 oct. 2009, 19:30, modifié 2 fois.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17624
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [Clavier multimédia] Reconnaissance des touches...

Message par benjarobin »

Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Re: [Clavier multimédia] Reconnaissance des touches...

Message par tuxce »

ça va faire de la pub mais bon, pas besoin de se répeter :)
http://tuxce.selfip.org/informatique/fa ... sous-linux
Avatar de l’utilisateur
MrHarry
Hankyu
Messages : 19
Inscription : ven. 16 janv. 2009, 21:44

Re: [Clavier multimédia] Reconnaissance des touches...

Message par MrHarry »

Bonjour,
N'ayant pas trouvé le salut dans les réponses ci-dessus (merci à vous deux :wink: ) .
J'ai dû employer une méthode à l'arrache pour parvenir à mes fins.

Ici :"/dev/input/by-id/usb-Logitech_Logitech_USB_Keyboard-event-if01", l'entrée des événements déclanchés par les touches multimédias du clavier usb Logitech. J'ai copié dans un fichier les entrées clavier générées par les touches multimédias.

# cat /dev/input/by-id/usb-Logitech_Logitech_USB_Keyboard-event-if01 > usb-capture.hex

Résultat de usb-capture.hex quand j'appuie sur la touche "Voip" :
bc 6f cf 4a cd 55 05 00 04 00 04 00 01 00 09 00 bc 6f cf 4a
d6 55 05 00 01 00 00 01 01 00 00 00 bc 6f cf 4a d8 55 05 00
00 00 00 00 00 00 00 00 bc 6f cf 4a d2 c0 08 00 04 00 04 00
01 00 09 00 bc 6f cf 4a dc c0 08 00 01 00 00 01 00 00 00 00
bc 6f cf 4a de c0 08 00 00 00 00 00 00 00 00 00
Empiriquement, j'ai constaté que le "scancode", de la touche enfoncée, se trouvait après les douze premiers octets et était composé de 4 octets. Dans l'exemple "01 00 09 00"(Little endian), ce qui donne 00090001 pour la touche "Voip". 90001 correspond bien à la valeur trouvée par Raku :) .

Bye
MH
Répondre