Winfast DTV1000 remote

From MythTV Official Wiki
Revision as of 16:50, 22 October 2010 by Wagnerrp (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

A quick summary:

  • 49 buttons (48 effective, 2 of them (stop and rec_stop) are duplicate and emit the same IR signal)
  • Comes with Winfast DTV1000-T digital tuner, and variants (maybe the same, depending on locale) of this remote are packaged with the Leadtek WinFast
  • Works under lirc.
  • Only directional buttons repeat (and very slowly).

Troubleshooting

I will quickly summarise the main problems with this remote. Nearly all of this information comes from this forum thread:

  • Native support for this remote is only available in kernels >= 2.6.23
    • Earlier kernels can be patched (See above threads for more information) - see here and here
    • Alternatively, copy the linux/drivers/media/video/cx88 Native support for the remote is only available in 2.6.23 kernel and rebuild
  • People experiencing sluggish/intermittent response, check that the kernel update frequency is set to 1000Hz (Processor type and features ---> Timer frequency -> 1000 HZ). This is the rate at which the driver polls the device, slower update frequency means the kernel will miss some events (?).

LIRC Config

lirc hardware.conf

# /etc/lirc/hardware.conf
#
#Chosen Remote Control
REMOTE="Linux input layer (/dev/input/eventX)"

# Arguments which will be used when launching lircd
LIRCD_ARGS=""

#Don't start lircmd even if there seems to be a good config file
#START_LIRCMD=false

#Try to load appropriate kernel modules
LOAD_MODULES=true

# Run "lircd --driver=help" for a list of supported drivers.
DRIVER="dev/input"
# If DEVICE is set to /dev/lirc and devfs is in use /dev/lirc/0 will be
# automatically used instead
DEVICE="/dev/input/event3"
MODULES=""

# Default configuration files for your hardware if any
LIRCD_CONF=""
LIRCMD_CONF=""

Note that there are many many many lircd.conf's around, none of which worked for me. Your best bet is to test the device with evtest /dev/input/eventX, and then run irrecord -H dev/input -d /dev/input/eventX lircd.conf to generate your own.

example lircd.conf


begin remote

  name Y0400052-DTV1000
  bits           16
  eps            30
  aeps          100

  one             0     0
  zero            0     0
  pre_data_bits   16
  pre_data       0x8001
  gap          101954
  toggle_bit_mask 0x80010002

      begin codes
          POWER                    0x0074
          TV                       0x0179
          FM                       0x0181
          DVD                      0x0185
          RED                      0x018E
          GREEN                    0x018F
          YELLOW                   0x0190
          BLUE                     0x0191
          TELETEXT                 0x0184
          SLEEP                    0x008E
          MUTE                     0x0071
          BOSSKEY                  0x0163
          C                        0x00DF
          UP                       0x0192
          ZOOM                     0x0174
          LEFT                     0x0072
          ENTER                    0x001C
          RIGHT                    0x0073
          MENU                     0x008B
          DOWN                     0x0193
          SURF                     0x016B
          PREVIOUS                 0x019C
          PLAYPAUSE                0x00A4
          NEXT                     0x0197
          SUBTITLE                 0x0172
          REWIND                   0x00A8
          STOP                     0x0080
          FASTFORWARD              0x00D0
          L                        0x0170
          1                        0x0002
          2                        0x0003
          3                        0x0004
          4                        0x0005
          5                        0x0006
          6                        0x0007
          7                        0x0008
          8                        0x0009
          9                        0x000A
          .                        0x0034
          0                        0x000B
          BACK                     0x0195
          VIDEO                    0x0189
          AUDIO                    0x0188
          DISPLAY                  0x0166
          M                        0x00EA
          PIP                      0x00E2
          REC_STOP                 0x0080
          REC                      0x00A7
          TIMESHIFT                0x0169
      end codes

end remote

MythTV Config

Note The remote is one of a number which uses the up/down/left/right directional keys as channel+/channel-/vol-/vol+ respectively. (The following applies with regards to a default keybindings, and if you have already changed these this may not make any sense.)

In MythTV left/right is used by default to seek forwards/backwards (SEEKFFWD/SEEKRWND), so if you want the remote to act as mentioned above, it is necessary to unbind/rebind the SEEKFFWD/SEEKRWND to something else (NOT left/right), and then bind VOLUMEUP and VOLUMEDOWN in the 'TV Playback' context to Right and Left respectively. (The directional keys will still work as directional keys (when necessary) as they are still bound to UP/DOWN/LEFT/RIGHT in the global context)


The easiest way to adjust keybindings is probably via mythweb.

You can then bind SEEKFFWD/SEEKRWD to something else (e.g. I use Ctrl+Right and Ctrl+Left, and then define in my lircrc:

# Rewind
begin
  prog = mythtv
  button = REWIND
  config = Ctrl+Left
end

# Fast Forward
begin
  prog = mythtv
  button = FASTFORWARD
  config = Ctrl+Right
end

I had previously bound SEEKFFWD/SEEKRWD to Ctrl+, and Ctrl+. but for some reason this seems to interfere with seeking specific amounts (ie when you type a number and seek)