[linux-dvb] Hauppauge Nova-T 500 not recognised by driver due to USB ID.

Andrew Preater linux-dvb at preater.com
Sun Oct 7 14:18:16 CEST 2007


Dear all,

I think this is a bug.

In summary: I have a Hauppauge Nova-T 500 dual-tuner DVB-T PCI
card that is not recognised by the DVB driver because it has a
strange USB ID.  When the source is edited to force recognition
of the card as a Nova-T 500, it works.

I had some spare time this weekend so decided to upgrade the OS
on the house MythTV box, add a DVB-T tuner card, and swap
architecture to amd64 distribution from i386.  I now have Debian
4.0 (etch) for amd64, running the current stable 2.6.18-5-686
kernel.  Following the linuxtv wiki page for this card, I
downloaded the driver with mercurial and compiled it
against my kernel.  I needed to create a symlink from
/lib/modules/2.6.18-5-amd64/source to /lib/modules/2.6.18-5-amd64/build
as the driver expected 'source', otherwise the build and install
was clean and smooth.  dvb-usb-dib0700-03-pre1.fw is in place.  I
am in the United Kingdom and therefore am using PAL-I.

BTW I know I have an early-ish model Nova-T, definitely not the
"Diversity" card.  FWIW these are the markings on my card:

WinTV-NOVA-T-500
DVB-T 99101 LF
Rev D8B5

Initially the card doesn't work.  When dvb-usb-dib0700 is
modprobed, this all that appears in dmesg:

dib0700: loaded with support for 5 different device-types
usbcore: registered new driver dvb_usb_dib0700

That's it, just the two lines.  Searching around this problem, the
penny dropped when I saw talk about a change to the USB ID of the
Nova-T cards with the unsupported "Diversity" revision - my card
doesn't have a Hauppauge ID it seems:

$ lsusb
Bus 006 Device 001: ID 0000:0000
Bus 005 Device 002: ID 10b8:0066 DiBcom
Bus 005 Device 001: ID 0000:0000
Bus 003 Device 002: ID 413c:2003 Dell Computer Corp.
Bus 003 Device 001: ID 0000:0000
Bus 004 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 001: ID 0000:0000

(Verbose lsusb output below.  DiBcom is thecard obviously, the
other item is a USB keyboard.)

Back to the source, I edited linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h so
that card 10b8:0066 is recognised as a Hauppauge Nova-T 500.
When recompiled, the driver now recognises and initialises the
card and /dev/dvb is populated correctly.  dmesg now looks
normal:

dib0700: loaded with support for 5 different device-types
dib0700: firmware started successfully.
dvb-usb: found a 'Hauppauge Nova-T 500 Dual DVB-T' in warm state.
dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
DVB: registering new adapter (Hauppauge Nova-T 500 Dual DVB-T)
DVB: registering frontend 0 (DiBcom 3000MC/P)...
MT2060: successfully identified (IF1 = 1220)
dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
DVB: registering new adapter (Hauppauge Nova-T 500 Dual DVB-T)
DVB: registering frontend 1 (DiBcom 3000MC/P)...
MT2060: successfully identified (IF1 = 1220)
input: IR-receiver inside an USB DVB receiver as /class/input/input2
dvb-usb: schedule remote query interval to 150 msecs.
dvb-usb: Hauppauge Nova-T 500 Dual DVB-T successfully initialized and connected.
usbcore: registered new driver dvb_usb_dib0700

I can now scan for channels, tune in with tzap and watch a
programme with mplayer, so I conclude the card would be OK if the
driver included the relevant ID in dvb-usb-ids.h.

Thanks,

Andrew Preater

Here is lsusb info about this card:

============= snip ============= 
$ sudo lsusb -v -d 10b8:0066

Bus 005 Device 002: ID 10b8:0066 DiBcom 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x10b8 DiBcom
  idProduct          0x0066 
  bcdDevice            2.00
  iManufacturer           1 DiBcom SA
  iProduct                2 HOOK
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           46
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           4
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               1
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  bNumConfigurations      1
Device Status:     0x0000
  (Bus Powered)

============= snip =============



More information about the linux-dvb mailing list