# DVB USB Hauppauge HVR900H kernel 3.0 no channels found

## sebB

Hello,

Since upgrade from kernel 2.6.38 to 3.0.6 I can't lock channels with DVB-T/USB Hauppauge WinTV HVR 900H .

Same issue with kernel 3.1.0

The modules are loaded, the firmware (xc3028L-v36.fw) is copied to /lib/firmware, the signal is good but I have no channels

With kernel 2.6.38 I've no problems.

dmesg when I plug my key

```
[  316.615742] tm6000: alt 0, interface 0, class 255

[  316.615746] tm6000: alt 0, interface 0, class 255

[  316.615749] tm6000: Bulk IN endpoint: 0x82 (max size=512 bytes)

[  316.615752] tm6000: alt 0, interface 0, class 255

[  316.615754] tm6000: alt 1, interface 0, class 255

[  316.615757] tm6000: ISOC IN endpoint: 0x81 (max size=3072 bytes)

[  316.615759] tm6000: alt 1, interface 0, class 255

[  316.615762] tm6000: alt 1, interface 0, class 255

[  316.615764] tm6000: INT IN endpoint: 0x83 (max size=4 bytes)

[  316.615767] tm6000: alt 2, interface 0, class 255

[  316.615769] tm6000: alt 2, interface 0, class 255

[  316.615771] tm6000: alt 2, interface 0, class 255

[  316.615774] tm6000: alt 3, interface 0, class 255

[  316.615776] tm6000: alt 3, interface 0, class 255

[  316.615778] tm6000: alt 3, interface 0, class 255

[  316.615781] tm6000: New video device @ 480 Mbps (2040:6600, ifnum 0)

[  316.615784] tm6000: Found Hauppauge WinTV HVR-900H / WinTV USB2-Stick

[  316.618489] IR RC6 protocol handler initialized

[  316.622760] IR JVC protocol handler initialized

[  316.626209] IR Sony protocol handler initialized

[  316.630096] Found tm6010

[  316.634871] lirc_dev: IR Remote Control driver registered, major 250 

[  316.637168] IR LIRC bridge handler initialized

[  318.830057] tm6000 #0: i2c eeprom 00: 01 59 54 45 12 01 00 02 00 00 00 40 40 20 00 66  .YTE.......@@ .f

[  319.150037] tm6000 #0: i2c eeprom 10: 69 00 10 20 40 01 02 03 48 00 79 00 62 00 72 00  i.. @...H.y.b.r.

[  319.470033] tm6000 #0: i2c eeprom 20: ff 00 64 ff ff ff ff ff ff ff ff ff ff ff ff ff  ..d.............

[  319.790047] tm6000 #0: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff  ................

[  320.110037] tm6000 #0: i2c eeprom 40: 10 03 48 00 56 00 52 00 39 00 30 00 30 00 48 00  ..H.V.R.9.0.0.H.

[  320.430038] tm6000 #0: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff  ................

[  320.750071] tm6000 #0: i2c eeprom 60: 30 ff ff ff 0f ff ff ff ff ff 0a 03 32 00 2e 00  0...........2...

[  321.070032] tm6000 #0: i2c eeprom 70: 3f 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff  ?...............

[  321.390044] tm6000 #0: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff  ................

[  321.710037] tm6000 #0: i2c eeprom 90: 32 ff ff ff 16 03 34 00 30 00 33 00 32 00 31 00  2.....4.0.3.2.1.

[  322.030038] tm6000 #0: i2c eeprom a0: 33 00 34 00 39 00 30 00 32 00 00 00 00 00 ff ff  3.4.9.0.2.......

[  322.350030] tm6000 #0: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff  ................

[  322.670031] tm6000 #0: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff  ................

[  322.990030] tm6000 #0: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff  ................

[  323.310048] tm6000 #0: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff  ................

[  323.630045] tm6000 #0: i2c eeprom f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff  ................

[  323.930044]   ................

[  323.940666] i2c-core: driver [tuner] using legacy suspend method

[  323.940670] i2c-core: driver [tuner] using legacy resume method

[  323.941627] tuner 3-0061: chip found @ 0xc2 (tm6000 #0)

[  323.964305] xc2028 3-0061: creating new instance

[  323.964310] xc2028 3-0061: type set to XCeive xc2028/xc3028 tuner

[  323.964315] Setting firmware parameters for xc2028

[  323.967431] xc2028 3-0061: Loading 81 firmware images from xc3028L-v36.fw, type: xc2028 firmware, ver 3.6

[  324.250038] xc2028 3-0061: Loading firmware for type=BASE (1), id 0000000000000000.

[  448.560044] xc2028 3-0061: Loading firmware for type=(0), id 000000000000b700.

[  450.660054] SCODE (20000000), id 000000000000b700:

[  450.660062] xc2028 3-0061: Loading SCODE for type=MONO SCODE HAS_IF_4320 (60008000), id 0000000000008000.

[  452.590177] tm6000 #0: registered device video1

[  452.590181] Trident TVMaster TM5600/TM6000/TM6010 USB2 board (Load status: 0)

[  452.590212] usbcore: registered new interface driver tm6000

[  452.592586] tm6000: open called (dev=video1)

[  452.613509] tm6000_dvb: module is from the staging directory, the quality is unknown, you have been warned.

[  452.640081] DVB: registering new adapter (Trident TVMaster 6000 DVB-T)

[  452.640089] DVB: registering adapter 0 frontend 0 (Zarlink ZL10353 DVB-T)...

[  452.640322] xc2028 3-0061: attaching existing instance

[  452.640325] xc2028 3-0061: type set to XCeive xc2028/xc3028 tuner

[  452.640328] tm6000: XC2028/3028 asked to be attached to frontend!

[  452.640440] tm6000 #0: Initialized (TM6000 dvb Extension) extension
```

w_scan and kaffeine are unable to find channels although the signal is maximum

The difference between the two kernel is that instead of having

undefined coderate HP or a channel

I've

Info: PAT filter timeout

Info: SDT(actual) filter timeout

Info: NIT(actual) filter timeout

w_scan kernel 2.6.38

 *Quote:*   

> w_scan version 20111011 (compiled for DVB API 5.2)
> 
> guessing country 'FR', use -c <country> to override
> 
> using settings for FRANCE
> ...

 

w_scan kernel 3.0.6

 *Quote:*   

> w_scan version 20111011 (compiled for DVB API 5.2)
> 
> guessing country 'FR', use -c <country> to override
> 
> using settings for FRANCE
> ...

 

log kaffeine kernel 3.0

```
kaffeine(8730) DvbScanfilter::timerEvent: timeout while reading section; type = 0 pid = 0

kaffeine(8730) DvbScanfilter::timerEvent: timeout while reading section; type = 2 pid = 17

kaffeine(8730) DvbDevice::frontendEvent: tuning failed
```

Thanks

----------

## bjlockie

Does your computer have more than 4G of ram?

----------

## bjlockie

If you have vlc, try to open your channels.conf or use 

```
mplayer dvb://
```

 from the command line.

----------

## sebB

 *bjlockie wrote:*   

> Does your computer have more than 4G of ram?

 

No I've 4G

mplayer dvb://

```
MPlayer SVN-r33094-4.5.3 (C) 2000-2011 MPlayer Team

Lecture de dvb://

dvb_tune Freq: 554000000

dvb_streaming_read, attempt N. 6 failed with errno 0 when reading 2048 bytes

dvb_streaming_read, attempt N. 5 failed with errno 0 when reading 2048 bytes

dvb_streaming_read, attempt N. 4 failed with errno 0 when reading 2048 bytes

dvb_streaming_read, attempt N. 3 failed with errno 0 when reading 2048 bytes

dvb_streaming_read, attempt N. 2 failed with errno 0 when reading 2048 bytes

dvb_streaming_read, attempt N. 1 failed with errno 0 when reading 2048 bytes

dvb_streaming_read, return 0 bytes

dvb_streaming_read, attempt N. 6 failed with errno 0 when reading 2048 bytes

dvb_streaming_read, attempt N. 5 failed with errno 0 when reading 2048 bytes

dvb_streaming_read, attempt N. 4 failed with errno 0 when reading 2048 bytes

dvb_streaming_read, attempt N. 3 failed with errno 0 when reading 2048 bytes

dvb_streaming_read, attempt N. 2 failed with errno 0 when reading 2048 bytes

dvb_streaming_read, attempt N. 1 failed with errno 0 when reading 2048 bytes

dvb_streaming_read, return 0 bytes
```

Same think with an other freq

I use the channel.conf generate with kernel 2.6.38

scan with VLC

```
[0x8872b1c] dvb access: Scan ETA 01:01 | 99.107143 

[0x8872b1c] dvb access: Scan ETA 00:58 | 99.151786 

[0x8872b1c] dvb access: Scan ETA 00:55 | 99.196429 

[0x8872b1c] dvb access: Scan ETA 00:52 | 99.241071 

[0x8872b1c] dvb access: Scan ETA 00:49 | 99.285714 

[0x88557e4] main stream error: cannot pre fill buffer
```

It seems that with kernel 2.6.38 the firmware reload automatically

dmesg w-scan kernel 2.6.38

```
[  775.560383] tm6000: got start feed request tm6000_start_feed

[  775.560388] tm6000: got start stream request tm6000_start_stream

[  775.720044] buf 0xf 0xc

[  775.740535] tm6000: pipe resetted

[  775.740626] tm6000: got start feed request tm6000_start_feed

[  775.740649] tm6000: got start feed request tm6000_start_feed

[  776.590043] xc2028 3-0061: Loading firmware for type=BASE (1), id 0000000000000000.

[  900.810043] xc2028 3-0061: Loading firmware for type=D2633 DTV6 QAM (70), id 0000000000000000.

[  902.810042] xc2028 3-0061: Loading SCODE for type=DTV78 DTV8 ZARLINK456 SCODE HAS_IF_4560 (62000300), id 0000000000000000.

[  910.150042] xc2028 3-0061: Loading firmware for type=BASE F8MHZ (3), id 0000000000000000.

[  973.510258] tm6000: got stop feed request tm6000_stop_feed

[  973.510263] stream 0x3

[  973.510272] tm6000: got stop feed request tm6000_stop_feed

[  973.510275] stream 0x2

[  973.510281] tm6000: got stop feed request tm6000_stop_feed

[  973.510283] stream 0x1

[  973.510285] stop stream

[  973.510286] urb killing

[  973.510458] urb buffer free

[ 1034.570043] xc2028 3-0061: Loading firmware for type=D2633 DTV8 (210), id 0000000000000000.

[ 1036.570041] xc2028 3-0061: Loading SCODE for type=DTV78 DTV8 ZARLINK456 SCODE HAS_IF_4560 (62000300), id 0000000000000000.

[ 1048.900039] xc2028 3-0061: Loading firmware for type=BASE F8MHZ (3), id 0000000000000000.

[ 1173.350070] xc2028 3-0061: Loading firmware for type=D2633 DTV8 (210), id 0000000000000000.

[ 1175.350034] xc2028 3-0061: Loading SCODE for type=DTV78 DTV8 ZARLINK456 SCODE HAS_IF_4560 (62000300), id 0000000000000000.

[ 1305.740038] xc2028 3-0061: Loading firmware for type=BASE F8MHZ (3), id 0000000000000000.

[ 1430.220037] xc2028 3-0061: Loading firmware for type=D2633 DTV8 (210), id 0000000000000000.

[ 1432.220043] xc2028 3-0061: Loading SCODE for type=DTV78 DTV8 ZARLINK456 SCODE HAS_IF_4560 (62000300), id 0000000000000000.

[ 1433.630119] tm6000: got start feed request tm6000_start_feed

[ 1433.630133] tm6000: got start stream request tm6000_start_stream

[ 1433.630523] tm6000: pipe resetted

[ 1433.630555] tm6000: got start feed request tm6000_start_feed

[ 1433.630575] tm6000: got start feed request tm6000_start_feed

[ 1433.664830] tm6000: got stop feed request tm6000_stop_feed

[ 1433.664833] stream 0x3

[ 1433.726612] tm6000: got start feed request tm6000_start_feed

[ 1433.726639] tm6000: got start feed request tm6000_start_feed

[ 1433.726673] tm6000: got start feed request tm6000_start_feed

[ 1433.726695] tm6000: got start feed request tm6000_start_feed

[ 1433.726719] tm6000: got start feed request tm6000_start_feed

[ 1433.726745] tm6000: got start feed request tm6000_start_feed

[ 1433.726749] tm6000: got stop feed request tm6000_stop_feed

[ 1433.726752] stream 0x8

[ 1433.741422] tm6000: got stop feed request tm6000_stop_feed

[ 1433.741426] stream 0x7

[ 1433.761167] tm6000: got stop feed request tm6000_stop_feed

[ 1433.761170] stream 0x6

[ 1433.780916] tm6000: got stop feed request tm6000_stop_feed

[ 1433.780919] stream 0x5

[ 1433.790791] tm6000: got stop feed request tm6000_stop_feed

[ 1433.790794] stream 0x4

[ 1433.810541] tm6000: got stop feed request tm6000_stop_feed

[ 1433.810544] stream 0x3

[ 1433.820417] tm6000: got stop feed request tm6000_stop_feed

[ 1433.820420] stream 0x2

[ 1435.361161] tm6000: got stop feed request tm6000_stop_feed

[ 1435.361165] stream 0x1

[ 1435.361167] stop stream

[ 1435.361169] urb killing

[ 1435.361327] urb buffer free

[ 1435.361383] DVB: adapter 0 frontend 0 frequency 4294967286 out of range (174000000..862000000)

[ 1435.361454] DVB: adapter 0 frontend 0 frequency 4294967286 out of range (174000000..862000000)

[ 1475.450041] xc2028 3-0061: Loading firmware for type=BASE F8MHZ (3), id 0000000000000000.

```

But with kernel 3.0

dmesg w_scan

```
[  775.560383] tm6000: got start feed request tm6000_start_feed

[  775.560388] tm6000: got start stream request tm6000_start_stream

[  775.720044] buf 0xf 0xc

[  775.740535] tm6000: pipe resetted

[  775.740626] tm6000: got start feed request tm6000_start_feed

[  775.740649] tm6000: got start feed request tm6000_start_feed

[  973.510258] tm6000: got stop feed request tm6000_stop_feed

[  973.510263] stream 0x3

[  973.510272] tm6000: got stop feed request tm6000_stop_feed

[  973.510275] stream 0x2

[  973.510281] tm6000: got stop feed request tm6000_stop_feed

[  973.510283] stream 0x1

[  973.510285] stop stream

[  973.510286] urb killing

[  973.510458] urb buffer free

[ 1433.630119] tm6000: got start feed request tm6000_start_feed

[ 1433.630133] tm6000: got start stream request tm6000_start_stream

[ 1433.630523] tm6000: pipe resetted

[ 1433.630555] tm6000: got start feed request tm6000_start_feed

[ 1433.630575] tm6000: got start feed request tm6000_start_feed

[ 1433.664830] tm6000: got stop feed request tm6000_stop_feed

[ 1433.664833] stream 0x3

[ 1433.726612] tm6000: got start feed request tm6000_start_feed

[ 1433.726639] tm6000: got start feed request tm6000_start_feed

[ 1433.726673] tm6000: got start feed request tm6000_start_feed

[ 1433.726695] tm6000: got start feed request tm6000_start_feed

[ 1433.726719] tm6000: got start feed request tm6000_start_feed

[ 1433.726745] tm6000: got start feed request tm6000_start_feed

[ 1433.726749] tm6000: got stop feed request tm6000_stop_feed

[ 1433.726752] stream 0x8

[ 1433.741422] tm6000: got stop feed request tm6000_stop_feed

[ 1433.741426] stream 0x7

[ 1433.761167] tm6000: got stop feed request tm6000_stop_feed

[ 1433.761170] stream 0x6

[ 1433.780916] tm6000: got stop feed request tm6000_stop_feed

[ 1433.780919] stream 0x5

[ 1433.790791] tm6000: got stop feed request tm6000_stop_feed

[ 1433.790794] stream 0x4

[ 1433.810541] tm6000: got stop feed request tm6000_stop_feed

[ 1433.810544] stream 0x3

[ 1433.820417] tm6000: got stop feed request tm6000_stop_feed

[ 1433.820420] stream 0x2

[ 1435.361161] tm6000: got stop feed request tm6000_stop_feed

[ 1435.361165] stream 0x1

[ 1435.361167] stop stream

[ 1435.361169] urb killing

[ 1435.361327] urb buffer free

```

Thanks

----------

## bjlockie

It is possible a more recent build of the media infrastructure will fix the problem.

If you know how to recompile the kernel, disable 'Drivers/Multimedia Support' and compile the latest modules.

http://www.linuxtv.org/wiki/index.php/How_to_Obtain,_Build_and_Install_V4L-DVB_Device_Drivers

Otherwise, I would just wait for the new kernel.

----------

## sebB

I've try with the git version of v4l but it don't work.

I've a Fatal Error when I modprobe tm6000.

That's strange because when I do tzap -c channels.conf TF1 in kernel 3.0.6

```
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'

reading channels from file 'channels.conf'

tuning to 554000000 Hz

video pid 0x0078, audio pid 0x0082

status 00 | signal ac00 | snr 0000 | ber 00000000 | unc 00000000 | 

status 1e | signal 9a18 | snr b9b9 | ber 00000000 | unc 00000000 | FE_HAS_LOCK

status 1e | signal 9a10 | snr bbbb | ber 00000000 | unc 00000000 | FE_HAS_LOCK

status 1e | signal 9a34 | snr b7b7 | ber 00000000 | unc 00000000 | FE_HAS_LOCK

status 1e | signal 9a50 | snr b9b9 | ber 00000000 | unc 00000000 | FE_HAS_LOCK

status 1e | signal 9a58 | snr b9b9 | ber 00000020 | unc 00000000 | FE_HAS_LOCK

status 1e | signal 9a94 | snr b9b9 | ber 00000020 | unc 00000000 | FE_HAS_LOCK
```

It means that The signal is found.

I've try with a live-cd ubuntu 11.04 (kernel 2.6.38) and it works

With ubuntu 11.10 (kernel 3.0) same results that gentoo i.e unable to lock channels.

I suppose, I can exclude my kernel config.

EDIT: With the git kernel source download from v4l same result

I've post a bug #389827

----------

