DVB-C USB Stick (Hauppauge WinTV-dualHD) under OS 4.0 driver issues

Dear Community ,

I have problems initializing the driver for my DVB-C TV-Stick under OS 4.0

I am using:

  • Hauppauge WinTV-dualHD (Model 01590)
  • Omnia Turris 4.0.1
  • Tvheadend 4.2.8



I see: Bus 002 Device 003: ID 2040:0265 Hauppauge

I placed the Firmware under

root@turris:/lib/firmware# ls
ath10k                      dvb-demod-si2168-b40-01.fw  regulatory.db 

But I don’t see the TV-Stick in Tvheadend

Kernel-Log says:

1360.009499] usb 4-1: new high-speed USB device number 2 using xhci-hcd
[ 1360.309465] usb 4-1: new full-speed USB device number 3 using xhci-hcd
[ 1370.538423] usb 4-1: device descriptor read/64, error -110
[ 1389.336539] usb 2-1: new high-speed USB device number 3 using xhci-hcd

Can anyone help me out? I have no idea …

You need to install some kernel modules with opkg. Like at least kmod-video-em28xx, kmod-dvb-si2168 and/or kmod-media-tuner-si2157.

Thank you for your fast answer. I installed all of them, but no difference.

/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
|__ Port 1: Dev 2, If 0, Class=Vendor Specific Class, Driver=, 480M

I think your problem is rather in relation with this line in the kernel log:

device descriptor read/64, error -110

It seems to indicate that the router is unable to provide enough power to the stick.

1 Like

That was helpful information!
I removed the cableextension and pluged the stick directly. Now I see:

[  345.720643] usb 4-1: new high-speed USB device number 2 using xhci-hcd

But no futher difference. No loaded driver …

Try to manually load the module:

modprobe em28xx

Yes! Thats works …

[ 1549.408234] em28xx 4-1:1.0: New device HCW dualHD @ 480 Mbps (2040:0265, interface 0, class 0)
[ 1549.416904] em28xx 4-1:1.0: DVB interface 0 found: isoc
[ 1549.422181] em28xx 4-1:1.0: chip ID is em28174
[ 1550.779321] em28xx 4-1:1.0: EEPROM ID = 26 00 01 00, EEPROM hash = 0x52e0cdc8
[ 1550.786496] em28xx 4-1:1.0: EEPROM info:
[ 1550.790427] em28xx 4-1:1.0: 	microcode start address = 0x0004, boot configuration = 0x01
[ 1550.804526] em28xx 4-1:1.0: 	AC97 audio (5 sample rates)
[ 1550.809857] em28xx 4-1:1.0: 	500mA max power
[ 1550.814149] em28xx 4-1:1.0: 	Table at offset 0x27, strings=0x0e6a, 0x1888, 0x087e
[ 1550.821789] em28xx 4-1:1.0: Identified as Hauppauge WinTV-dualHD DVB (card=99)
[ 1550.839505] tveeprom: Hauppauge model 204109, rev C2I6, serial# 14050052
[ 1550.846253] tveeprom: tuner model is SiLabs Si2157 (idx 186, type 4)
[ 1550.852622] tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc)
[ 1550.862928] tveeprom: audio processor is None (idx 0)
[ 1550.867997] tveeprom: has no radio, has IR receiver, has no IR transmitter
[ 1550.874896] em28xx 4-1:1.0: dvb set to isoc mode.
[ 1550.879691] usbcore: registered new interface driver em28xx

But when I start tvheadend I still get no device listed …

The boot up is not complete. I don’t know, try to load the other modules :stuck_out_tongue:

modprobe si2157
modprobe si2168

root@turris:~# modprobe si2157
si2157 is already loaded
root@turris:~# modprobe si2168
si2168 is already loaded

The Firmware is missing in the kernel log: (Copy from linuxtv.org)

[557.706723] si2168 11-0064: found a 'Silicon Labs Si2168-B40'
[557.706770] si2168 11-0064: downloading firmware from file 'dvb-demod-si2168-b40-01.fw'
[557.915917] si2168 11-0064: firmware version: 4.0.11
[557.919622] si2157 12-0060: found a 'Silicon Labs Si2157-A30'
[557.968069] si2157 12-0060: firmware version: 3.0.5

It’s because the si2168/si2157 modules are not attached to the em28xx driver, so the firmware uploading is not even attempted. I don’t know, maybe a more recent kernel is needed on Turris OS.

I found that over google :

modprobe em28xx card=94
echo "2040 8268" > /sys/bus/usb/drivers/em28xx/new_id
The first command loads the em28xx driver and forces it to treat all cards as card "94", which is the equivalent to the 0264 stick.
The second command forces all devices with vendorID 2040 and productID 8268 to be "attached" to the em28xx driver.

For Hauppauge WinTV-dualHD (Model 01590) should it be:

modprobe em28xx card=94
echo "2040 0265" > /sys/bus/usb/drivers/em28xx/new_id

But the driver folder is probably different. Do you know the right folder? And does it make sence?

You can always try :stuck_out_tongue:
But I think your card number is 99, not 94.

No, it makes no difference. Still some parts get not loaded.
Besides that I found out, when I use the USB-Port at the backside of the router, my 5Ghz Wlan stops working. Too many problems in the moment - I am losing my focus …


I have the same issue on TOS5, have you managed to solve it?

No, I gave up, because I found out that the kernel was too old. (At this time!) . Maybe I give it another try …

I have also found there is a gitlab ticket about it:

not sure though if the mentioned em28xx_dvb module is enough though.

1 Like

and as I have mentioned in the ticket dual tuner is only supported from kernel 4.17 until then only 1 tuner is supported theoretically