Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[HOWTO]Remote of Leadtek Winfast TV 2000 XP expert working
View unanswered posts
View posts from last 24 hours

Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks
View previous topic :: View next topic  
Author Message

Joined: 28 Sep 2005
Posts: 22
Location: Slovenia

PostPosted: Sun Aug 27, 2006 11:11 pm    Post subject: [HOWTO]Remote of Leadtek Winfast TV 2000 XP expert working Reply with quote

I have tried this with my Leadtek Winfast TV 2000 XP Expert
02:07.0 Multimedia video controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
        Subsystem: LeadTek Research Inc. Unknown device 6611
        Flags: bus master, medium devsel, latency 32, IRQ 10
        Memory at eb000000 (32-bit, non-prefetchable) [size=16M]
        Capabilities: [44] Vital Product Data
        Capabilities: [4c] Power Management version 2

Name of the remote control is Y04G0004, if it works on others tell me.

Strangely when I had ony module for my TV card compiled numbers and enter button worked like I was typing on a keyboard, and stayed working after I mapped the keys.

This should probably work for all remote controls, that outputs keypresses in /dev/input/eventX

This is only for TV 200 XP Expert:
1. Compile cx88 as module.

Device Drivers --->
Multimedia Devices -->
<M> Video For Linux
and in Video Capture Adapters
choose Conexant 2388x (bt878 successor) support

This is for all:
2. Compile evdev support
If you don't have Event interface support compiled do this:

Device Drivers -->
  Input device support -->
<M> Event interface (This can be module or compiled in)

Compile new kernel.
If you only compiled modules, you can modprobe it, if you compiled anything in kernel you must reboot.
This is for all:
3. Compile Lirc with devinput support
in /etc/make.conf
add this line:

Emerge lirc. I added udev use flag too, because I use udev.

When Lirc is compiling, we can see which event do we have to use.

First modprobe evdev for event interface and cx8800 and cx88xx if they aren't already loaded.

Check if the support for your remote has been loaded by v4l by running "cat /proc/bus/input/devices". The output is the list of input devices your system has (usually the keyboard, a mouse, and if your remote is working, the remote). Search for a line that start with "N:" (the name of the input device) and contains the name of your v4l board or the driver for that board. Like this:
I: Bus=0001 Vendor=107d Product=6611 Version=0001
N: Name="cx88 IR (Leadtek Winfast 2000XP"
P: Phys=pci-0000:02:07.0/ir0
S: Sysfs=/class/input/input2
H: Handlers=kbd event2
B: EV=100003
B: KEY=8fc204 140000 0 0 0 0 0 90 40004001 1e0000 4400 100000 10000ffc

Our Event is event2. If you do cat /dev/input/event2 and press some keys you should see some garbage in the terminal.

If you're lucky when you start lircd -n -H dev/input -d /dev/input/event2 and irw in another window, you should see SOmethink like that

0000000080010074 00 POWER /tmp/lirca.conf

When you press the power button.

If you don't (and I didn't ) and see a lot of
lircd-0.8.0[2053]: devinput_rec
lircd-0.8.0[2053]: time 1156716209.929967  type 1  code 116  value 1
lircd-0.8.0[2053]: code 80010074
lircd-0.8.0[2053]: devinput_decode

in terminal where you started lirc read more. Stop Lirc. (Ctrl C)

Type irrecord -H dev/input -d /dev/input/event2 /tmp/my-remote

First When this text is shown "Press RETURN to continue." Press enter to continue. When this text is shown "Hold down an arbitrary button" Press some button on remote many times. For each press a dot will sbe shown. You must keep pressing button that many times that these is shown:
Found gap length: 259687
Now enter the names for the buttons.

Please enter the name for the next button (press <ENTER> to finish recording)

Write 1 and press Enter
Now hold down button "1"
is shown. Now press the button one. Repeat these procedure with writing the name of the button and pressing it as long that all the buttons are mapped. But be aware that not all are working. I don't know why. When you are finished just press enter where yu should written the name and wait 10 seconds. IF you were succesfull this is shown:
irrecord: no data for 10 secs, aborting

No toggle bit found.
Successfully written config file.

Now start Lirc again lircd -n -H dev/input -d /dev/input/event2 /tmp/my-remote start irw in another terminal. Now buttons should be mapped. mv /tmp/my-remote to the /etc/lircd.conf and write LIRC_OPTS="-H dev/input -d /dev/input/event2" to the /etc/conf.d/lircd. Delete previous LIRC_OPTS line. Now stop Lirc and you can start it with /etc/init.d/lircd start. YOu can recompile programs with lirc useflag.

This whole lircd file:

# Please make this file available to others
# by sending it to <>
# this config file was automatically generated
# using lirc-0.8.0(devinput) on Mon Aug 28 12:08:54 2006
# contributed by Marko Burjek
# brand:                       Cool Command
# model no. of remote control: Y04G0004
# devices being controlled by this remote: Winfast TV 2000 XP Expert

begin remote

  name  CoolComandY04G00004
  bits           16
  eps            30
  aeps          100

  one             0     0
  zero            0     0
  pre_data_bits   16
  pre_data       0x8001
  gap          259737
  toggle_bit      0

      begin codes
          1                        0x0002
          2                        0x0003
          3                        0x0004
          4                        0x0005
          5                        0x0006
          6                        0x0007
          7                        0x0008
          8                        0x0009
          9                        0x000A
          0                        0x000B
          .                        0x0034
          POWER                    0x0074
          RED                      0x018E
          GREEN                    0x018F
          YELLOW                   0x0190
          BLUE                     0x0191
          CC                       0x0172
          MUTE                     0x0071
          SLEEP                    0x008E
          FULLSCREEN               0x0174
          CH_UP                    0x0192
          CH_DOWN                  0x0193
          VOL_UP                   0x0073
          VOL_DOWN                 0x0072
          ENTER                    0x001C
          VIDEO                    0x0189
          REC                      0x00A7
          PLAY/PAUSE               0x00A4
          PREV                     0x009E
          NEXT                     0x0197
          STOP                     0x0080
      end codes

end remote

But strangely in /usr/src/linux/drivers/media/common/ir-keymaps.c in IR_KEYTAB_TYPE ir_codes_winfast[IR_KEYTAB_SIZE] = {
for my card keymaps are different:

   [ 0x05 ] = KEY_1,
   [ 0x00 ] = KEY_POWER,

Some buttons do not make lirc events and in dsmesg are logged as uknown key, but strangely they exists in /usr/src/linux/drivers/media/common/ir-keymaps.c .

[EDIT] Added whle lircd.conf file
Some things borrowed from V4l Wiki
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks All times are GMT
Page 1 of 1

Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum