By Date: <-- -->
By Thread: <-- -->

Re : Leadtek DTV2000H, what next?



Hi,

Thank you for your quick reply. My remote control is exactly the same as yours.
I made the modifications on cx88-input.c as you suggested. I added the following 
lines in cx88-inputs.c ->

        case CX88_BOARD_WINFAST_DTV1000:
                ir_codes = ir_codes_empty;
                break;


Unfortunately, I can't see any relevent message in the log file (/var/log/message) 
when I press a key on the remote control.

My /etc/modprobe.conf file is as follow ->

....
# DVB
options cx8800 irq_debug=1
options cx88xx ir_debug=1 i2c_debug=1
options cx88-dvb debug=1
....

modprobe cx8800 && modprobe cx88-dvb && modprobe evdev

gives in my log file ->

May 10 12:48:13 dune kernel: cx2388x v4l2 driver version 0.0.5 loaded
May 10 12:48:13 dune kernel: PCI: Found IRQ 9 for device 0000:02:0d.0
May 10 12:48:13 dune kernel: PCI: Sharing IRQ 9 with 0000:02:0d.2
May 10 12:48:13 dune kernel: CORE cx88[0]: subsystem: 107d:665f, board: WinFast DTV1000-T [card=35,autodetected]
May 10 12:48:13 dune kernel: TV tuner 4 at 0x1fe, Radio tuner -1 at 0x1fe
May 10 12:48:14 dune kernel: i2c-algo-bit.o: cx88[0] passed test.
May 10 12:48:14 dune kernel: input: cx88 IR (WinFast DTV1000-T) as /class/input/input5
May 10 12:48:14 dune kernel: cx88[0]/0: found at 0000:02:0d.0, rev: 5, irq: 9, latency: 32, mmio: 0xe8000000
May 10 12:48:14 dune kernel: cx88[0]/0: registered device video1 [v4l2]
May 10 12:48:14 dune kernel: cx88[0]/0: registered device vbi1
May 10 12:48:14 dune kernel: set_control id=0x980900 reg=0x310110 val=0x00 (mask 0xff)
May 10 12:48:14 dune kernel: set_control id=0x980901 reg=0x310110 val=0x3f00 (mask 0xff00)
May 10 12:48:14 dune kernel: set_control id=0x980903 reg=0x310118 val=0x00 (mask 0xff)
May 10 12:48:14 dune kernel: set_control id=0x980902 reg=0x310114 val=0x5a7f (mask 0xffff)
May 10 12:48:14 dune kernel: set_control id=0x980909 reg=0x320594 val=0x40 (mask 0x40) [shadowed]
May 10 12:48:14 dune kernel: set_control id=0x980905 reg=0x320594 val=0x20 (mask 0x3f) [shadowed]
May 10 12:48:14 dune kernel: set_control id=0x980906 reg=0x320598 val=0x40 (mask 0x7f) [shadowed]
May 10 12:48:14 dune kernel: cx2388x dvb driver version 0.0.5 loaded
May 10 12:48:14 dune kernel: PCI: Found IRQ 9 for device 0000:02:0d.2
May 10 12:48:14 dune kernel: PCI: Sharing IRQ 9 with 0000:02:0d.0
May 10 12:48:14 dune kernel: cx88[0]/2: found at 0000:02:0d.2, rev: 5, irq: 9, latency: 32, mmio: 0xe7000000
May 10 12:48:14 dune kernel: cx88[0]/2: cx2388x based dvb card
May 10 12:48:14 dune kernel: DVB: registering new adapter (cx88[0]).
May 10 12:48:14 dune kernel: DVB: registering frontend 0 (Conexant CX22702 DVB-T)...

[root (at) dune archive]# cat /proc/bus/input/devices
I: Bus=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/class/input/input0
H: Handlers=kbd event0
B: EV=120013
B: KEY=4 2000000 3802078 f840d001 f2ffffdf ffefffff ffffffff fffffffe
B: MSC=10
B: LED=7

I: Bus=0011 Vendor=0002 Product=0005 Version=0000
N: Name="ImPS/2 Generic Wheel Mouse"
P: Phys=isa0060/serio1/input0
S: Sysfs=/class/input/input1
H: Handlers=mouse0 ts0 event1
B: EV=7
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=103

I: Bus=0001 Vendor=107d Product=665f Version=0001
N: Name="cx88 IR (WinFast DTV1000-T)"
P: Phys=pci-0000:02:0d.0/ir0
S: Sysfs=/class/input/input5
H: Handlers=kbd event2
B: EV=100003
B: KEY=1000000 0 0 0 0

Note: Without the module "evdev" loaded, there is no new event device in /dev/input

Regards.

----- Message d'origine ----
De : Malcolm V <farkit (at) iinet.net.au>
À : video4linux-list (at) redhat.com
Envoyé le : Mercredi, 10 Mai 2006, 12h32mn 02s
Objet : Re: Leadtek DTV2000H, what next?

On Tuesday 09 May 2006 23:29, Paul Muadib allegedly wrote:
> Hi,
>
> Can you tell me how did you get the remote control working. I'm not sure,
> but the remote control of the DTV2000H should be the same as the DTV1000T
> card. In my case, the remote control is note recognized by the cx88
> modules.

Hi,

The short answer is modify cx88-input.c by adding one line directly above 
the below line (line 176 of the mercurial source I think)
 case CX88_BOARD_WINFAST2000XP_EXPERT:

add:
 case CX88_BOARD_WINFAST_DTV1000:

so it looks like

case CX88_BOARD_WINFAST_DTV1000:
case CX88_BOARD_WINFAST2000XP_EXPERT:

make sure the cx88xx modules is loaded with the option ir_debug=1

When the module is loaded, there should be another event device created 
in /dev/input.

You should be able to watch dmesg and see something when you press a key on 
the remote;
watch -n 2 "dmesg | tail -n 20"

Something like:
cx88[0] IR: irq gpio=0x17204 code=0 | poll


Some notes:

If the dmesg messages have only 1 byte values (eg gpio=0xAA) you need to put 
the cx88 gpios into full 32 bit mode. The code in cx88-cards.c does this for 
the winfast2000xp by setting the gpio3 value to 0x0200000 (ie setting bit 25 
high). in the inputs section.

NOTE: Setting this mode should probably be done as some sort of card 
initialization.

I initially created a whole new case statement in cx88-inputs.c and used the 
empty keycodes,
ir_codes = ir_codes_empty;
so as not to send stray keypresses whilst testing the remote.

My remote is marked with what I assume is a part/model number, Y0400052, on 
the front in the lower right corner. It has 49 keys, the keymap for the 
2000XP has only (~)34  keys, so I actually created another keymap, but I 
think they can be merged.

Hope that helps.
Cheers,
Malcolm V.

--
video4linux-list mailing list
Unsubscribe mailto:video4linux-list-request (at) redhat.com?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/video4linux-list




--
video4linux-list mailing list
Unsubscribe mailto:video4linux-list-request (at) redhat.com?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/video4linux-list