[Topic unique] Leadtek WinFast DTV 1000 T

Messagepar AnAlach » 30 Sep 2006 19:04

Pour GPIO3, mes recherches sur Internet sur la manière de faire fonctionner la télécommande de la DTV1000-T m'ont appris que le bit 25 servait à contrôler le type de transfert du récepteur infrarouge : 8 bits si à 0, 16 bits si à 1. Seul le mode 16 bits permet de recevoir correctement les codes des touches de la télécommande (j'ai testé en laissant ce bit à 0 et effectivement cela ne fonctionnait pas : les codes des touches étaient tronqués à 8 bits). En laissant les autres bits de GPIO3 à 0, on obtient donc la valeur 0x02000000.

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 :P

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.
AnAlach
Petit ver
Petit ver
 
Messages: 14
Inscription: 10 Juin 2006 10:42

Messagepar Sirocco » 30 Sep 2006 20:21

Ok, bravo pour le gpio3, fallait eplucher de la doc !

Diviser par deux mon nombre de touches .. eh bien non ! Et cela me donne une partie des explications : dans la capture de dmesg que j'ai faite tu ne verra que des lignes "poll up". En fait le PC n'arrive casiment jamais à chopper mon appui sur une touche, il ne prend que le relachement.

J'ai pu vérifier en que lorsque j'avais une ligne "pool" la touche était reconnue, soit 1% des touches. Capture de evtest, malheuresement le timeout arrive souvent avant la détection d'une touche. Ce n'est donc pas un problème lirc mais bien un problème système.
Code: Tout sélectionner
# ./input-events 1
/dev/input/event1
   bustype : BUS_PCI
   vendor  : 0x107d
   product : 0x665f
   version : 1
   name    : "cx88 IR (WinFast DTV1000-T)"
   phys    : "pci-0000:00:0d.2/ir0"
   bits ev : EV_SYN EV_KEY EV_REP

waiting for events
19:41:19.024749: EV_KEY KEY_CHANNELUP pressed
19:41:19.024751: EV_SYN code=0 value=0
19:41:19.072828: EV_KEY KEY_CHANNELUP released
19:41:19.072830: EV_SYN code=0 value=0
timeout, quitting


Dans le noyau 2.6.18 toutes les touches sont présentes, et peut etre meme plus : http://pastebin.com/797389
Info regspy de la carte si ca t'interesse : http://pastebin.com/797391 (les gpio sont en bas)
Leadtek Winfast DTV 1000 T
Avatar de l’utilisateur
Sirocco
Coccinelle
Coccinelle
 
Messages: 51
Inscription: 20 Nov 2005 22:45

Messagepar AnAlach » 01 Oct 2006 12:03

La table ir_codes_winfast du noyau 2.6.18 définit bien toutes les touches de la télécommande. Il y a toutefois quelques différences qui nécessitent l'adaptation du fichier lircd.conf que je propose :
    * Les touches 0 à 9 utilisent les constantes KEY_0 à KEY_9, alors que j'utilise KEY_KP0 à KEY_KP9,
    * La touche . (au dessus de PIP) utilise la constante KEY_DOT, alors que j'utilise KEY_KPDOT.

Concernant ton problème, j'avoue que je sèche un peu...

Lors de mes premiers tests, il m'arrivait également de n'avoir presque que les lignes "poll up" visibles via dmesg. Cela semblait dépendre des valeurs GPIO testées. J'ai essayé les valeurs 0x0001b361 de GPIO0 et GPIO2 que tu propose : les résultats semblent identiques à ce que j'obtiens en les initialisant à zéro.
AnAlach
Petit ver
Petit ver
 
Messages: 14
Inscription: 10 Juin 2006 10:42

Messagepar fredjm31 » 01 Oct 2006 12:54

Je viens d'achter une Leadteak Winfast DTV 1000T : ça saccade alors que j'ai une bonne réception (j'ai testé avec une télé (non TNT)).

Ma config : Win XP SP2, P4 2.4 GHz, 1Go RAM.

Quelqu'un aurait-il un conseil à me donner ?

Merci d'avance.

Ceci dit, j'avoue que je n'ai pas encore essayé les trucs classiques :
- mise à jour de drivers
- dévalider l'antivirus
- ...
fredjm31
Grenouille
Grenouille
 
Messages: 218
Inscription: 08 Jan 2006 04:24

Messagepar fredjm31 » 01 Oct 2006 13:31

Je viens d'essayer tout ça ...
fredjm31
Grenouille
Grenouille
 
Messages: 218
Inscription: 08 Jan 2006 04:24

Messagepar Olivier » 01 Oct 2006 14:27

Freebox TV
TNtop jusqu'au 30 novembre
Olivier
Etalon
Etalon
 
Messages: 1502
Inscription: 24 Juin 2005 17:19
Localisation: Paris

Messagepar Olivier007 » 01 Oct 2006 19:00

Bonsoir à tous, je possède une PC avec la config suivante :
- Carte mère Asus A8V Deluxe ( VIA K8T800 Pro )
- Carte graphique Ati X800 256mo
- AMD Athlon 64 3500+

Pourais-je mettre une Leadteak Winfast DTV 1000T sur ce PC ??

Merci d'avance.
Olivier007
Petit ver
Petit ver
 
Messages: 12
Inscription: 01 Oct 2006 18:56

Messagepar JL 38 » 01 Oct 2006 21:09

Olivier007 a écrit:Bonsoir à tous, je possède une PC avec la config suivante :
- Carte mère Asus A8V Deluxe ( VIA K8T800 Pro )
- Carte graphique Ati X800 256mo
- AMD Athlon 64 3500+

Pourais-je mettre une Leadteak Winfast DTV 1000T sur ce PC ??

Merci d'avance.

Sans problème !! (si tu as un port PCI libre bien sûr)
Avatar de l’utilisateur
JL 38
Grenouille
Grenouille
 
Messages: 377
Inscription: 27 Juin 2005 14:42

Messagepar fredjm31 » 01 Oct 2006 21:39

Olivier a écrit:Correctif installé ?
http://support.microsoft.com/kb/896626/fr


Noooonnnnnnnn !!!!!!!!!!!!!!

Enfin un espoir !

J'essaye ça dès demain soir !
fredjm31
Grenouille
Grenouille
 
Messages: 218
Inscription: 08 Jan 2006 04:24

Messagepar Olivier007 » 01 Oct 2006 22:14

JL 38 a écrit:
Olivier007 a écrit:Bonsoir à tous, je possède une PC avec la config suivante :
- Carte mère Asus A8V Deluxe ( VIA K8T800 Pro )
- Carte graphique Ati X800 256mo
- AMD Athlon 64 3500+

Pourais-je mettre une Leadteak Winfast DTV 1000T sur ce PC ??

Merci d'avance.

Sans problème !! (si tu as un port PCI libre bien sûr)


Merci pour cette réponse claire et rapide.
Olivier007
Petit ver
Petit ver
 
Messages: 12
Inscription: 01 Oct 2006 18:56