Sinon, le pilote détecte apparemment correctement les pressions sur les touches de la télécommande. À ce propos, un appuis sur une touche génère normalement deux lignes visibles avec dmesg : une lors de l'enfoncement (terminée par "poll"), et une autre lors du relachement (terminée par "poll up"). Cela divise par deux ton nombre d'appuis
Le problème se situe donc après la réception des codes : soit lors de la traduction vers les constantes KEY_XXX, soit au niveau de lircd.
Tu dis avoir conservé la table ir_codes_winfast du noyau 2.6.18. Toutes les touches de la version "Y0400052" de la CoolCommand fournie avec la DTV1000-T sont-elles bien présentes ? Dans la table présente dans le noyau 2.6.15, seules celles des télécommandes fournies avec les cartes tuner analogiques de Leadtek (WinFast TV2000, ...) étaient présentes.
Quel résultat donne evtest ? Il doit te donner la liste des codes reconnus pour la télécommande, et te permet également de tester les différentes touches (lircd n'a pas besoin d'être chargé pour ce test) :
- Code: Tout sélectionner
$ sudo evtest /dev/input/event3
Input driver version is 1.0.0
Input device ID: bus 0x1 vendor 0x107d product 0x665f version 0x1
Input device name: "cx88 IR (WinFast DTV1000-T)"
Supported events:
Event type 0 (Reset)
Event code 0 (Reset)
Event code 1 (Key)
Event code 20 (Repeat)
Event type 1 (Key)
Event code 71 (KP7)
Event code 72 (KP8)
Event code 73 (KP9)
Event code 74 (KPMinus)
Event code 75 (KP4)
Event code 76 (KP5)
Event code 77 (KP6)
Event code 78 (KPPlus)
...
Event code 402 (ChannelUp)
Event code 403 (ChannelDown)
Event code 405 (Last)
Event code 407 (Play)
Event code 412 (Previous)
Event type 20 (Repeat)
Testing ... (interrupt to exit)
Event: time 1159635067.701163, type 1 (Key), code 402 (ChannelUp), value 1
Event: time 1159635067.701165, type 0 (Reset), code 0 (Reset), value 0
Event: time 1159635067.705146, type 1 (Key), code 402 (ChannelUp), value 0
Event: time 1159635067.705148, type 0 (Reset), code 0 (Reset), value 0
Event: time 1159635077.129202, type 1 (Key), code 372 (Zoom), value 1
Event: time 1159635077.129204, type 0 (Reset), code 0 (Reset), value 0
Event: time 1159635077.133201, type 1 (Key), code 372 (Zoom), value 0
Event: time 1159635077.133203, type 0 (Reset), code 0 (Reset), value 0
Si tout va bien de ce côté, le problème est très certainement lié à lircd.
Comme tu utilise la table ir_codes_winfast du noyau 2.6.18, il est possible que les constantes KEY_XXX associées aux touches de la télécommande ne soient pas toutes les mêmes que celles que j'ai utilisées. Dans ce cas, le fichier lircd.conf que je propose doit être adapté pour que lircd reconnaisse correctement les touches. Tu peut trouvé la valeur numérique de chacune des constantes KEY_XXX dans le fichier /usr/src/linux/inlude/linux/input.h.




