Hauppauge WinTV Nova-T 500 PCI

From MythTV

Jump to: navigation, search

Contents

About

What is it?

The Nova-T 500 is a dual digital tv tuner with a remote control from Hauppauge. Its a nice compacted pci card at a great price.


In fact the receivers are USB devices, but there aren't any USB plugs or sockets involved -- the single PCI card itself sports on board dual USB based receivers that interface with a host USB 2.0 controller. (This unique design is also known as "Bristol").


You will find the model name and number on the box, under the bar code. Known to work cards have the following:

  • WinTV-NOVA-T-500 model 289 SL-289-V2.0-UK (UK product) UPC: 785428002897


26th May 2008 -update

The following model is also sold in the UK (very small difference)

WinTV - NOVA-T-500 model 287 SL-287-V2.0-UK UPC: 785428002873

This card behaves exactly the same as the 289 model

Components Overview

  • 2x Microtune MT2060 tuner
  • 2x DiB3000P Dibcomm DVB-T demodulator & USB controller
  • 1x VIA VT8xxx host USB 2.0 controller (USB-to-PCI)
  • A single Low Noise Amplifier (LNA) is present for both channels, but needs to be manually activated (see below).


Warning about the "Diversity" model

This is an unsupported revision!

Warning! WinTV-Nova-TD-500
Enlarge
Warning! WinTV-Nova-TD-500

This card appears to have been released, in low volumes, only in the UK, but unfortunately it seems that Hauppauge is shipping the Diversity card in regular NOVA-T-500 boxes!


This newer revision can be distinguished by:

On the box:

  • You will find the model name and number under the bar code:
    • WinTV-NOVA-T-500 model 289 SL-289-V2.1-UK.
      • N.B. There are some Nova-T-500 cards with this serial number that do work! It would seem the "Diversity" sticker is the surest way to know whether or not the card will work.
  • The box also has a sticker stating it is the diversity option and only suitable for intel cards. "When i put it in my athlon based XP box it blue screened as soon as i tried to load the drivers. I brought mine from Amazon.co.uk and there was no mention that this card was any different or wouldn't work with non-intel processors."

On the card:

  • it is labeled with the 'Diversity' feature stickers and the actual model number on the printed circuit board is NOVA-TD-500 (WinTV-NOVA-TD-500 DVB-T 68109 LF rev C1B5)
  • the card has two aerial connectors.
  • it uses a DiB0710 host USB controller (USB-to-PCI controller) instead of a VIA controller


The DIBcom DiB0710 controller used by this newer revision was apparently never sold for mass-production and DIBcom has end-of-life'd the chip. Furthermore, DIBcom currently do not plan on providing support for this controller. Conseqeuntly, given the low shipping volume and the limited support options, development of a Linux driver for this revision would likely be a waste of effort. [1][2]

Returning the Card: Hauppauge UK are aware of this problem, and will willingly swap this model for a new one if you return it to them by post, or call by their offices at London Bridge. You can contact them on (020) 7378 0202.

Hardware Compatibility

Epia SP8000 and SP13000 with Dual PCI Riser cards

This card does *not* work well with other PCI devices when used in the 2-into-1 Tranquil PC Active Riser on Epia SP mini-ITX motherboards. Use the VIA EXT-PCI passive riser instead, with the Nova-T in the top slot. (If you insist on using an active riser to squeeze out the best performance, it may be possible to get both PCI devices working if you are willing to sacrifice mobo USB support, but watch out for hard lock-ups, IDE conflicts, and BIOS corruption when switching jumper settings. Not for the faint-of-heart.)

PCI Performance

When used in a dual-PCI riser configuration (see above), playback performance may suffer when used in conjunction with a PCI video card (e.g. NVIDIA FX5200 PCI). To fix this, increase the PCI latency of the video card to 0xFF, and the Nova-T to 0x40, enable MTRR write-combining for the video card memory, and use real-time threads for smooth video playback in MythTV. If using an nvidia card, in nvidia-settings switch off all XV v-blank sync options and switch on OpenGL vblank sync'ing. In MythTV, enable OpenGL vblank sync and real-time threading.

Linux Support

Anything released before August 1, 2007, distro kernels or from LinuxTV.org, will have loads of problems (tuning and USB disconnects that will hang or crash MythTV and/or the whole system) and will not support the remote.

You will have to get the latest drivers from LinuxTV.org, as described below.

In these conditions the card is fully and reliably supported. Yeah!

Installing

Since a kernel install would cause many problems and the LinuxTV driver is newer we'll compile the drivers against the current kernel

Note: you must have Enabled loadable module support & Automatic kernel module loading - otherwise you will get an error like "Unable to find symbol mt2060_attach()". (options CONFIG_MODULES=y & CONFIG_KMOD=y) (from http://www.mail-archive.com/linux-dvb@linuxtv.org/msg25404.html)

  • Make sure you have the Universe repository's enabled
  • Update packages
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
  • Reboot if you have updated your kernel or you will have to recompile for the new kernel
  • Download the firmware
wget http://www.wi-bw.tfh-wildau.de/~pboettch/home/linux-dvb-firmware/dvb-usb-dib0700-1.10.fw
  • Copy Firmware
sudo cp dvb-usb-dib0700-1.10.fw /lib/firmware
  • Install packages required to build kernel modules
sudo apt-get install linux-headers-$(uname -r) build-essential 
  • Install Mercurial (cvs like program)
sudo apt-get install mercurial
  • Ubuntu users only! (Repace linux-source-2.6.20 with your Kernel; 2.6.20 is Feisty ; 2.6.22 Gutsy)
sudo apt-get install linux-source
cd /usr/src/
sudo tar -xjvf linux-source-2.6.20.tar.bz2
sudo ln -s /usr/src/linux-source-2.6.20 /lib/modules/$(uname -r)/source

  • Retrieve the v4l-dvb source tree
cd ~/
hg clone http://linuxtv.org/hg/v4l-dvb
  • Change into the v4l-dvb directory
cd v4l-dvb
  • Ubuntu Gutsy fails with aci.c module error; Fix: Disable ACI mixer in Audio devices for Multimedia
sudo apt-get install ncurses-dev
sudo make menuconfig
  • Build the modules
make
  • Install the modules
sudo make install
  • Very Important Turn on the onboard amplifier or you will get very poor signal strength.
sudo gedit /etc/modprobe.d/options
Add: options dvb-usb-dib0700 force_lna_activation=1 


  • Load the modules
sudo make load
  • Done


  • If this doesn't work then try
sudo modprobe dvb-usb-dib0700

to get the card working


Here is a sample kernel output:

[   30.965645] dib0700: loaded with support for 5 different device-types
[   30.965925] dvb-usb: found a 'Hauppauge Nova-T 500 Dual DVB-T' in cold state, will try to load a firmware
[   31.008899] dvb-usb: downloading firmware from file 'dvb-usb-dib0700-03-pre1.fw'
[   31.206081] dib0700: firmware started successfully.
[   31.711176] dvb-usb: found a 'Hauppauge Nova-T 500 Dual DVB-T' in warm state.
[   31.711222] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
[   31.711325] DVB: registering new adapter (Hauppauge Nova-T 500 Dual DVB-T)
[   31.831535] DVB: registering frontend 0 (DiBcom 3000MC/P)...
[   31.854890] MT2060: successfully identified (IF1 = 1220)
[   32.388673] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
[   32.388853] DVB: registering new adapter (Hauppauge Nova-T 500 Dual DVB-T)
[   32.394293] DVB: registering frontend 1 (DiBcom 3000MC/P)...
[   32.398790] MT2060: successfully identified (IF1 = 1220)
[   32.959607] input: IR-receiver inside an USB DVB receiver as /class/input/input4
[   32.959633] dvb-usb: schedule remote query interval to 150 msecs.
[   32.959637] dvb-usb: Hauppauge Nova-T 500 Dual DVB-T successfully initialized and connected.
[   32.959657] usbcore: registered new interface driver dvb_usb_dib0700


Addendum: I couldn't get this card to work no matter what I did, including several reboots. Then I powered off the machine and gave up in disgust. Next time I powered it back on it worked! Cheers, Alastair Explanation: The card was probably already in "warm state", i.e. with a firmware already loaded. This was probably the wrong version of the firmware. A new firmware is only loaded when the card is in a "cold state", i.e. after a power off.

Another addendum: When trying to view a station that's currently off-air MythTV locks solid. Location is UK, OS is Gutsy. The expected behaviour as seen on other kit is that an informational message should be displayed. Using top on an alternative console I've found that the Myth backend was chewing up the CPU. Even when I brought it back to runlevel 2 the USB system was still out of action - it wouldn't recognize a USB stick until I rebooted. There's clearly a problem somewhere but is it driver, firmware or the backend? Ian

Quick test

  • After a reboot
dmesg | grep -i dvb

to get some information on the card

 [   20.300000] dvb-usb: found a 'Hauppauge Nova-T 500 Dual DVB-T' in cold state, will try to load a firmware
 [   20.390000] dvb-usb: downloading firmware from file 'dvb-usb-dib0700-01.fw'
 [   21.090000] dvb-usb: found a 'Hauppauge Nova-T 500 Dual DVB-T' in warm state.
 [   21.090000] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
 [   21.090000] DVB: registering new adapter (Hauppauge Nova-T 500 Dual DVB-T).
 [   21.230000] DVB: registering frontend 0 (DiBcom 3000MC/P)...
 [   21.850000] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
 [   21.850000] DVB: registering new adapter (Hauppauge Nova-T 500 Dual DVB-T).
 [   24.600000] DVB: registering frontend 1 (DiBcom 3000MC/P)...
 [   24.787147] input: IR-receiver inside an USB DVB receiver as /class/input/input4
 [   25.240000] dvb-usb: Hauppauge Nova-T 500 Dual DVB-T successfully initialized and connected.
 [   25.240000] usbcore: registered new interface driver dvb_usb_dib0700

The following line shows that the IR Receiver was also activated

input: IR-receiver inside an USB DVB receiver as /class/input/input4

IR Receiver

Grey top, black bottom, 45 buttons, snowboard shape.

It gives output into (X is variable and depends on your system)

/dev/input/eventX

LIRC will use it without needing a special kernel module. use the following driver:

dev/input

Here is a proper lircd.conf file: lircd.conf

Use the following command to find out what event it is using

cat /proc/bus/input/devices

The following file contains the udev rules for ubuntu

sudo nano /etc/udev/rules.d/10-local.rules

You should use a udev rule to fix this in place, because the event number isnt fixed

KERNEL=="input*", ATTRS{name}=="IR-receiver inside an USB DVB receiver", SYMLINK+="input/dvb-ir"
If you use this, use the commented line in hardware.conf You will also need to reboot (or reload the right modules) to get the input device right

Here is an Ubuntu /etc/lirc/hardware.conf sample:

# /etc/lirc/hardware.conf
#
# 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/event4"
# DEVICE="/dev/input/dvb-ir"
MODULES=""

# Default configuration files for your hardware if any
LIRCD_CONF="/etc/lirc/lircd.conf"
LIRCMD_CONF=""


  • Start Lirc & Test

Start the Lirc daemon running.

sudo /etc/init.d/lirc start
irw

The terminal should 'appear' to hang, (not return a command prompt). Press buttons on your remote, you should see key presses then come up on the terminal. When your done, testing press <crtl> + 'c' to quit. For example:

000000000001016b 00 PrevCh NOVA-T500
000000000001006a 00 ArrowRight NOVA-T500
0000000000010192 00 ChannelUp NOVA-T500
0000000000010074 00 Power NOVA-T500
0000000000010160 00 OK NOVA-T500
0000000000010071 00 Mute NOVA-T500
0000000000010192 00 ChannelUp NOVA-T500
000000000001006a 00 ArrowRight NOVA-T500
0000000000010067 00 ArrowUp NOVA-T500
0000000000010069 00 ArrowLeft NOVA-T500
000000000001006c 00 ArrowDown NOVA-T500

Remote Control

  • This is a sample /home/mythtv/.lircrc:

lircrc

You will need to link it inside /home/mythtv/.mythtv

ln -s /home/mythtv/.lircrc /home/mythtv/.mythtv/lircrc

In this example the Power button is used to place the monitor (VGA/DVI/HDMI) in standby.

You will need the vbetool package:

sudo apt-get install vbetool

Then you will need to allow the mythtv user to execute the command with super user rights without password entry:

sudo visudo

then add at the end of the file:

# user mythtv can turn monitor off or standby
%mythtv ALL = NOPASSWD: /usr/sbin/vbetool

lircd.conf

#
# brand:                       Hauppauge NOVA-T-500
# model no. of remote control: Hauppage Nova-T-500 Snowboard Shape Silver over Black
#

begin remote

 name  NOVA-T500
 bits           16
 eps            30
 aeps          100

 one             0     0
 zero            0     0
 pre_data_bits   16
 pre_data       0x1
 gap          199999
 toggle_bit      0


     begin codes
         Go                       0x0162
         Power                    0x0074
         TV                       0x0179
         Videos                   0x0189
         Music                    0x0188
         Pictures                 0x00E2
         Guide                    0x016D
         Radio                    0x0181
         ArrowUp                  0x0067
         ArrowLeft                0x0069
         OK                       0x0160
         ArrowRight               0x006A
         ArrowDown                0x006C
         BackExit                 0x009E
         Menu                     0x008B
         VolumeUp                 0x0073
         VolumeDown               0x0072
         PrevCh                   0x016B
         Mute                     0x0071
         ChannelUp                0x0192
         ChannelDown              0x0193
         Record                   0x00A7
         Rewind                   0x00A8
         SkipBack                 0x0195
         Play                     0x00CF
         Pause                    0x0077
         Stop                     0x0080
         Fwdwind                  0x00D0
         SkipFwd                  0x0197
         1                        0x0002
         2                        0x0003
         3                        0x0004
         4                        0x0005
         5                        0x0006
         6                        0x0007
         7                        0x0008
         8                        0x0009
         9                        0x000A
         Star                     0x0037
         0                        0x000B
         #                        0x0029
         Red                      0x018E
         Green                    0x018F
         Yellow                   0x0190
         Blue                     0x0191
     end codes

end remote

lircrc

# /etc/lircrc
# ln ~mythtv/.mythtv/lircrc
#
# MythTV native LIRC config file for
# Hauppage Nova-T-500 PCI Dual Tuners DVB-T
# Snowboard shape remote
# Silver on top Black underneath
# 45 buttons
#
# Originally 
# By Jarod Wilson, 2003/12/21
# Amalgamated from Jeff Campbell's .lircrc



################## MythTV Control ######################
### http://www.mythtv.org/wiki/index.php/Keybindings ###

#	Remote Button
##	MythTV function


#	Go
##	Go to home page
begin
prog = mythtv
button = Go
config = ALT+H
end

#	Power
##	Turns monitor in Standby
begin
prog = irexec
button = Power
config = sudo vbetool dpms on ; sudo vbetool dpms off
end

#	TV
##	Go to Watch TV
begin
prog = mythtv
button = TV
config = ALT+T
end

#	Videos
##	Go to MythVideo
begin
prog = mythtv
button = Videos
config = ALT+V
end

#	Music
##	Go to MythMusic
begin
prog = mythtv
button = Music
config = ALT+M
end

#	Pictures
##	Go to MythGallery
begin
prog = mythtv
button = Pictures
config = ALT+P
end

#	Guide
##	display EPG
begin
prog = mythtv
button = Guide
config = s
end

#	Radio



#	ArrowUp
##	Up
begin
prog = mythtv
button = ArrowUp
config = Up
end

#	ArrowLeft
##	Left
begin
prog = mythtv
button = ArrowLeft
config = Left
end

#	OK
##	Select/enter/resolve
begin
prog = mythtv
button = OK
config = Space
end

#	ArrowRight
##	Right
begin
prog = mythtv
button = ArrowRight
config = Right
end

#	ArrowDown
##	Down
begin
prog = mythtv
button = ArrowDown
config = Down
end

#	BackExit
##	Exit/go back/cancel
begin
prog = mythtv
button = BackExit
config = Esc
end

#	Menu
##	Menu
begin
prog = mythtv
button = Menu
config = m
end

#	VolumeUp
##	Volume Up
begin
prog = mythtv
button = VolumeUp
config = F11
end

#	VolumeDown
##	Volume down
begin
prog = mythtv
button = VolumeDown
config = F10
end

#	PrevCh
##	Change tuner card input
begin
prog = mythtv
button = PrevCh
config = c
end

#	Mute
##	Mute
begin
prog = mythtv
button = Mute
config = F9
end

#	ChannelUp
begin
prog = mythtv
button = ChannelUp
config = Up
end

#	ChannelDown
begin
prog = mythtv
button = ChannelDown
config = Down
end

#	Record
begin
prog = mythtv
button = Record
config = R
end

#	Rewind
begin
prog = mythtv
button = Rewind
config = Left
end

#	SkipBack
begin
prog = mythtv
button = SkipBack
config = PgUp
end

#	Play
begin
prog = mythtv
button = Play
config = Return
end

#	Pause
begin
prog = mythtv
button = Pause
config = P
end

#	Stop
begin
prog = mythtv
button = Stop
config = Esc
end

#	Fwdwind
begin
prog = mythtv
button = Fwdwind
config = Right
end

#	SkipFwd
begin
prog = mythtv
button = SkipFwd
config = PgDown
end

#	1
begin
prog = mythtv
button = 1
config = 1
end

#	2
begin
prog = mythtv
button = 2
config = 2
end

#	3
begin
prog = mythtv
button = 3
config = 3
end

#	4
begin
prog = mythtv
button = 4
config = 4
end

#	5
begin
prog = mythtv
button = 5
config = 5
end

#	6
begin
prog = mythtv
button = 6
config = 6
end

#	7
begin
prog = mythtv
button = 7
config = 7
end

#	8
begin
prog = mythtv
button = 8
config = 8
end

#	9
begin
prog = mythtv
button = 9
config = 9
end

#	Star
##	Info
begin
prog = mythtv
button = Star
config = i
end

#	0
begin
prog = mythtv
button = 0
config = 0
end

#	#
##	Toggle recording of current program (cycles through types)
begin
prog = mythtv
button = #
config = r
end

#	Red
##	Picture zoom
begin
prog = mythtv
button = Red
config = W
end

#	Green
#	OSD navigation through channels/programs
begin
prog = mythtv
button = Green
config = O
end

#	Yellow
begin
prog = mythtv
button = Yellow
config = Q
end

#	Blue
begin
prog = mythtv
button = Blue
config = Z
end

External links

Personal tools