Difference between revisions of "Hauppauge WinTV-NOVA-TD-Stick"

From LinuxTVWiki
Jump to: navigation, search
(Remote control support)
m (Remote control support)
Line 55: Line 55:
 
There is no need to compile and load any lirc modules;  the remote is detected along with the tuner and is registered as a USB input device.  If you are using udev or devfs then this means that the device should be linked to one of the /dev/input/event* device nodes and a simple rule will create a named symlink.  It should be possible to get lirc talking to this using the dev/input driver but I have had no success with that.
 
There is no need to compile and load any lirc modules;  the remote is detected along with the tuner and is registered as a USB input device.  If you are using udev or devfs then this means that the device should be linked to one of the /dev/input/event* device nodes and a simple rule will create a named symlink.  It should be possible to get lirc talking to this using the dev/input driver but I have had no success with that.
  
Instead of using lirc, load the ir_kbd_i2c module and the remote will be treated as a usb keyboard.  Many of the keys generate keycodes which are not mapped to anything, by default, in X; you can use xev to find the keycodes and xmodmap to map them to useful symbols.  Unfortunately, some keys generate keycodes that X doesn't seem to recognise at all (on my set-up, at least) and the device does not support keymaps, or this would be easy to fix.  More on this as I do more research.
+
As long as the evdev module is loaded, the remote will be treated as a usb keyboard.  Many of the keys generate keycodes which are not mapped to anything, by default, in X; you can use xev to find the keycodes and xmodmap to map them to useful symbols.  Unfortunately, some keys generate keycodes that X doesn't seem to recognise at all (on my set-up, at least) and the device does not support keymaps, or this would be easy to fix.  More on this as I do more research.
  
 
== External links ==
 
== External links ==
 
* [http://www.hauppauge.co.uk/pages/products/data_novatdstick.html Hauppauge UK product page]
 
* [http://www.hauppauge.co.uk/pages/products/data_novatdstick.html Hauppauge UK product page]

Revision as of 21:58, 20 January 2008

WinTV-Nova-TD-Stick

A DVB-T USB device from Hauppauge.

It is supported under Linux.

Overview/Features

This device features two tuners and is supplied with two antennas. You'll have adapter0 and adapter1 in /dev/dvb, which you can use separately. Adapter0 seems to be the connector on the side of the stick?

The "Diversity" option is a hardware based feature that allows for the device's two receivers to be configured in a combined use mode to achieve better reception on a single channel. The diversity feature of the DiBcom demodulators is currently not implemented in the Linux-DVB drivers, so only the dual tuner configuration is presently supported on such devices [1].

Components Used

  • 2× Microtune MT2266 tuners
  • Dibcom DiB7700P DVB-T demodulator

Identification

This device's USB ID is 2040:9580.

Making it work

Diversity mode

The driver currently does not support Diversity, it only support Dual-Tuner.

First problem is that it comes in Diversity mode as default. So, is needed to change from Diversity mode to Dual-Tuner mode by using Windows/MacOS driver diversity utility (it is only needed to change once, first time).

Firmware

August 21, 2008 - New firmware file fixing the last cause for i2c errors and disconnects and providing a new, more modular i2c request formatting.

You will need the dvb-usb-dib0700-1.20.fw firmware file in /lib/firmware or the relevant place for your distribution.

You may need to change the name of the file to dvb-usb-dib0700-1.10.fw or create a link until the driver code reflects that change.

For archival purposes: dvb-usb-dib0700-1.10.fw firmware file

August 29,2008 - Issues with Firmware 1.20. Some issues have been found with the latest version of the firmware. Users may wish to continue to use 1.10 unless they have patched their v4l-dvb code with dib0700_new_i2c_api.patch.

November 15,2008 - Issues with Firmware 1.20.

  • The above mentioned dib0700_new_12c_api.patch is not available discretely but is now rolled into the mercurial drivers
  • dvb-usb-dib0700-1.20.fw firmware file is now stable for reception, but remote control functionality is broken; any key press is repeated until the next key is pressed. The only way to get remote control functionality presently is to roll back to 1.10 firmware and suffer the occasional disconnect.
  • The mercurial drivers have been changed so they now load 1.20 firmware. To revert to 1.10 firmware you need to rename your firmware file to dvb-usb-dib0700-1.20.fw or provide a link of that name.
  • To avoid spurious remote control signals with 1.20 firmware, you need to edit /etc/modprobe.d/options or from Ubuntu onwards /etc/modprobe.d/options.confand add:
options dvb_usb disable-rc-polling=1

November 28,2008 - i2c errors. Changes were made to the remote control drivers on November 16,2008 to correct the repeat key problem. The card is generally stable for dual tuner reception and remote control function with Firmware 1.20.

November 10,2009 - mt2060 I2C write failed. Possible regression of a driver bug raised against Ubuntu running 2.6.27-14 and 2.6.31-2.17 causing mt2060 I2C errors in MythTV useage with firmware 1.20. https://bugs.launchpad.net/ubuntu/+source/linux/+bug/397696 Recommend check the kernel extensions listed here for Low Noise Activation and rc_polling are loaded with correct config file name for your distribution, EIT listings information is turned off until a suitable delay (500ms-1000ms)is added to a single card (not both) and the card has correctly been added to the database as two tuners (no additional NULL entries) in the mythtv recordcard table.

Drivers

Support is present in the Linux kernel from version 2.6.24-rc1.

Just use Mercurial by following the How to install DVB device drivers instructions.

Sample kernel output

From 2.6.20-16-generic with drivers compiled from repository 4th Jan 07:

$ dmesg | grep dvb
[   40.858884] dvb-usb: found a 'Hauppauge Nova-TD Stick/Elgato Eye-TV Diversity' in cold state, will try to load a firmware
[   40.912496] dvb-usb: downloading firmware from file 'dvb-usb-dib0700-1.10.fw'
[   41.624338] dvb-usb: found a 'Hauppauge Nova-TD Stick/Elgato Eye-TV Diversity' in warm state.
[   41.624397] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
[   42.047026] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
[   42.359232] dvb-usb: schedule remote query interval to 150 msecs.
[   42.359235] dvb-usb: Hauppauge Nova-TD Stick/Elgato Eye-TV Diversity successfully initialized and connected.
[   42.359404] usbcore: registered new interface driver dvb_usb_dib0700
[   68.220540] dvb_usb_dib0700 2-4:1.0: resuming
[   68.220812] dvb_usb_dib0700 2-4:1.0: resuming

Remote control support

There is no need to compile and load any lirc modules; the remote is detected along with the tuner and is registered as a USB input device. If you are using udev or devfs then this means that the device should be linked to one of the /dev/input/event* device nodes and a simple rule will create a named symlink. It should be possible to get lirc talking to this using the dev/input driver but I have had no success with that.

As long as the evdev module is loaded, the remote will be treated as a usb keyboard. Many of the keys generate keycodes which are not mapped to anything, by default, in X; you can use xev to find the keycodes and xmodmap to map them to useful symbols. Unfortunately, some keys generate keycodes that X doesn't seem to recognise at all (on my set-up, at least) and the device does not support keymaps, or this would be easy to fix. More on this as I do more research.

External links