Hauppauge WinTV-dualHD: Difference between revisions
Connaisseur (talk | contribs) m (Update notification about WinTV-dualHD patches into mainline kernel.) |
|||
(10 intermediate revisions by 4 users not shown) | |||
Line 3: | Line 3: | ||
There are two versions available with the same name that can be distinguished by model number, look and USB device ID: |
There are two versions available with the same name that can be distinguished by model number, look and USB device ID: |
||
* Model 01590: Dual tuner for DVB-C, DVB-T and DVB-T2, has IEC connector, USB device ID 2040:0265 |
* Model 01590: Dual tuner for DVB-C, DVB-T and DVB-T2, has IEC connector, USB device ID 2040:0265 and a newer version USB device ID 2040:8265 |
||
* Model 01595: Dual tuner for ATSC and clear QAM, has F-connector, USB device ID 2040:026d. |
* Model 01595: Dual tuner for ATSC and clear QAM, has F-connector, USB device ID 2040:026d. |
||
Line 13: | Line 13: | ||
* Demodulator: 2*[[Silicon Labs Si2168]]-B40 |
* Demodulator: 2*[[Silicon Labs Si2168]]-B40 |
||
* Tuner: 2*[[Silicon Labs Si2157]]-A30 |
* Tuner: 2*[[Silicon Labs Si2157]]-A30 |
||
===Identification=== |
|||
for the newer version: |
|||
sudo lsusb -v -d 2040:8265 |
|||
Bus 001 Device 003: ID 2040:8265 Hauppauge dualHD |
|||
Device Descriptor: |
|||
bLength 18 |
|||
bDescriptorType 1 |
|||
bcdUSB 2.00 |
|||
bDeviceClass 0 |
|||
bDeviceSubClass 0 |
|||
bDeviceProtocol 0 |
|||
bMaxPacketSize0 64 |
|||
idVendor 0x2040 Hauppauge |
|||
idProduct 0x8265 |
|||
bcdDevice 1.00 |
|||
iManufacturer 3 HCW |
|||
iProduct 1 dualHD |
|||
iSerial 2 0014331610 |
|||
bNumConfigurations 1 |
|||
Configuration Descriptor: |
|||
bLength 9 |
|||
bDescriptorType 2 |
|||
wTotalLength 0x0037 |
|||
bNumInterfaces 1 |
|||
bConfigurationValue 1 |
|||
iConfiguration 0 |
|||
bmAttributes 0x80 |
|||
(Bus Powered) |
|||
MaxPower 500mA |
|||
Interface Descriptor: |
|||
bLength 9 |
|||
bDescriptorType 4 |
|||
bInterfaceNumber 0 |
|||
bAlternateSetting 0 |
|||
bNumEndpoints 2 |
|||
bInterfaceClass 255 Vendor Specific Class |
|||
bInterfaceSubClass 0 |
|||
bInterfaceProtocol 0 |
|||
iInterface 0 |
|||
Endpoint Descriptor: |
|||
bLength 7 |
|||
bDescriptorType 5 |
|||
bEndpointAddress 0x84 EP 4 IN |
|||
bmAttributes 2 |
|||
Transfer Type Bulk |
|||
Synch Type None |
|||
Usage Type Data |
|||
wMaxPacketSize 0x0200 1x 512 bytes |
|||
bInterval 0 |
|||
Endpoint Descriptor: |
|||
bLength 7 |
|||
bDescriptorType 5 |
|||
bEndpointAddress 0x85 EP 5 IN |
|||
bmAttributes 2 |
|||
Transfer Type Bulk |
|||
Synch Type None |
|||
Usage Type Data |
|||
wMaxPacketSize 0x0200 1x 512 bytes |
|||
bInterval 0 |
|||
Interface Descriptor: |
|||
bLength 9 |
|||
bDescriptorType 4 |
|||
bInterfaceNumber 0 |
|||
bAlternateSetting 1 |
|||
bNumEndpoints 2 |
|||
bInterfaceClass 255 Vendor Specific Class |
|||
bInterfaceSubClass 0 |
|||
bInterfaceProtocol 0 |
|||
iInterface 0 |
|||
Endpoint Descriptor: |
|||
bLength 7 |
|||
bDescriptorType 5 |
|||
bEndpointAddress 0x84 EP 4 IN |
|||
bmAttributes 2 |
|||
Transfer Type Bulk |
|||
Synch Type None |
|||
Usage Type Data |
|||
wMaxPacketSize 0x0200 1x 512 bytes |
|||
bInterval 0 |
|||
Endpoint Descriptor: |
|||
bLength 7 |
|||
bDescriptorType 5 |
|||
bEndpointAddress 0x85 EP 5 IN |
|||
bmAttributes 2 |
|||
Transfer Type Bulk |
|||
Synch Type None |
|||
Usage Type Data |
|||
wMaxPacketSize 0x0200 1x 512 bytes |
|||
bInterval 0 |
|||
Device Qualifier (for other device speed): |
|||
bLength 10 |
|||
bDescriptorType 6 |
|||
bcdUSB 2.00 |
|||
bDeviceClass 0 |
|||
bDeviceSubClass 0 |
|||
bDeviceProtocol 0 |
|||
bMaxPacketSize0 64 |
|||
bNumConfigurations 1 |
|||
Device Status: 0x0000 |
|||
(Bus Powered) |
|||
==Model 01595 (USB device ID 2040:026d)== |
==Model 01595 (USB device ID 2040:026d)== |
||
Line 123: | Line 227: | ||
Device Status: 0x0000 |
Device Status: 0x0000 |
||
(Bus Powered) |
(Bus Powered) |
||
=Making it Work= |
=Making it Work= |
||
The following part refers specifically to Model 01590 or Model 01595. |
The following part refers specifically to Model 01590 or Model 01595. |
||
==Firmware== |
==Firmware== |
||
The Model 01590 demodulator needs a firmware which can be found for example at http://palosaari.fi/linux/v4l-dvb/firmware/Si2168/Si2168-B40/4.0.11/dvb-demod-si2168-b40-01.fw |
The Model 01590 demodulator needs a firmware which can be found for example at http://palosaari.fi/linux/v4l-dvb/firmware/Si2168/Si2168-B40/4.0.11/dvb-demod-si2168-b40-01.fw |
||
==Drivers== |
|||
The Model 01590 device is supported since Kernel 4.7 (see commit https://git.linuxtv.org/media_tree.git/commit/drivers/media/usb/em28xx?id=11a2a949d05e9d2d9823f0c45fa476743d9e462b). |
|||
The newer Version needs a different firmware dvb-demod-si2168-d60-01.fw (from https://github.com/CoreELEC/dvb-firmware/blob/master/firmware/dvb-demod-si2168-d60-01.fw) and usually comes already configured to bulk mode (see below) |
|||
The Model 01595 device is supported since Kernel 4.11 (see commit https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=1586342e428d80e53f9a926b2e238d2175b9f5b5). |
|||
==Drivers== |
|||
Currently only the first tuner on Model 01590 and Model 01595 is supported. |
|||
Only the first tuner on Model 01590 device is supported since Kernel 4.7 (see commit https://git.linuxtv.org/media_tree.git/commit/drivers/media/usb/em28xx?id=11a2a949d05e9d2d9823f0c45fa476743d9e462b). |
|||
A kernel patch for the support of both tuners can be found at https://forum.libreelec.tv/thread-2867.html . The thread refers to a patch file for kernel 4.2.5 downloadable at https://www.dropbox.com/s/qkw7fn7y9szdn1r/wintv-dualhd-kernel-4.2.5-2016-08-10.patch.tar.xz?dl=0 |
|||
Another patch for the second tuner for kernel 4.11 and later is linked here: https://www.mail-archive.com/linux-media@vger.kernel.org/msg113120.html |
|||
patches may be found at https://patchwork.kernel.org/project/linux-media/list/?submitter=174585 |
|||
'''Update as of 2017-11-22''': |
|||
Brad told me in an e-mail after asking him for the current state: |
|||
I've been super side tracked for months now with other work, but I've started getting everything to pass checkpatch and intend on sending this dualHD and more to the mailing list soon. |
|||
👍 |
|||
'''Update as of 2018-04-16''': |
|||
Brad Love's WinTV-dualHD patches made it into mainline kernel 4.17-rc1. Finally. Stay tuned... |
|||
Only the first tuner on Model 01595 device is supported since Kernel 4.11 (see commit https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=1586342e428d80e53f9a926b2e238d2175b9f5b5). |
|||
Both tuners on Model 01590 device and Model 01595 device are supported since Kernel 4.17 (see commit https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/diff/?id=be7fd3c3a8c5e9acbc69f887ca961df5e68cf6f0). |
|||
==Setting Transfer Mode to bulk== |
|||
The stick supports two transfer modes: isochronous and bulk, whereas most revisions use the isochronous mode by default. This often leads to artifacts being shown in the video stream when both tuners are active (e.g. when a EPG scan is running in the background). This problem has been confirmed by many users of the VDR (German language, https://www.vdr-portal.de/forum/index.php?thread/133363-gel%C3%B6st-wintv-dualhd-moduloption-um-nur-einen-tuner-zu-nutzen/), but is very likely to occurr with other software as well. You can check the mode your stick is using with dmesg. When the stick is detected there is a line that reads "dvb set to isoc mode" when in isochronous mode, when bulk mode is active, an analogous message is shown. Currently there is no known way to change that mode using a linux command or passing options to the kernel module. The only way to change it is to use a free windows tool provided by the manufacturer Hauppauge: https://www.hauppauge.de/site/support/support_faq.php?n=FAQ.BulkOrIso Please install the windows driver for the stick first, because they need to be installed before running the tool. After changing the mode to "bulk" using this tool, please check the dmesg messages again and verify that it now states "dvb set to bulk mode". |
|||
==Sample Kernel Output (first tuner only)== |
==Sample Kernel Output (first tuner only)== |
||
<pre> |
<pre> |
||
Line 190: | Line 282: | ||
[557.919622] si2157 12-0060: found a 'Silicon Labs Si2157-A30' |
[557.919622] si2157 12-0060: found a 'Silicon Labs Si2157-A30' |
||
[557.968069] si2157 12-0060: firmware version: 3.0.5 |
[557.968069] si2157 12-0060: firmware version: 3.0.5 |
||
</pre> |
|||
==Sample Kernel Output (both tuners; Linux 4.17-rc1, Model 01590, USB device ID 2040:0265)== |
|||
<pre> |
|||
[ 55.197109] tveeprom: tuner model is SiLabs Si2157 (idx 186, type 4) |
|||
[ 55.197112] tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc) |
|||
[ 55.197113] tveeprom: audio processor is None (idx 0) |
|||
[ 55.197115] tveeprom: has no radio, has IR receiver, has no IR transmitter |
|||
[ 55.197122] em28xx 3-1.2:1.0: dvb set to isoc mode. |
|||
[ 55.254525] em28xx 3-1.2:1.0: chip ID is em28174 |
|||
[ 56.418899] em28xx 3-1.2:1.0: EEPROM ID = 26 00 01 00, EEPROM hash = 0xece4c7c8 |
|||
[ 56.418904] em28xx 3-1.2:1.0: EEPROM info: |
|||
[ 56.418907] em28xx 3-1.2:1.0: microcode start address = 0x0004, boot configuration = 0x01 |
|||
[ 56.427984] em28xx 3-1.2:1.0: AC97 audio (5 sample rates) |
|||
[ 56.427989] em28xx 3-1.2:1.0: 500mA max power |
|||
[ 56.427993] em28xx 3-1.2:1.0: Table at offset 0x27, strings=0x0e6a, 0x1888, 0x087e |
|||
[ 56.482062] em28xx 3-1.2:1.0: Identified as Hauppauge WinTV-dualHD DVB (card=99) |
|||
[ 56.484086] tveeprom: Hauppauge model 204109, rev B3I6, serial# 13886818 |
|||
[ 56.484090] tveeprom: tuner model is SiLabs Si2157 (idx 186, type 4) |
|||
[ 56.484092] tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc) |
|||
[ 56.484094] tveeprom: audio processor is None (idx 0) |
|||
[ 56.484096] tveeprom: has no radio, has IR receiver, has no IR transmitter |
|||
[ 56.484102] em28xx 3-1.2:1.0: dvb ts2 set to isoc mode. |
|||
[ 56.684816] usbcore: registered new interface driver em28xx |
|||
[ 56.727880] em28xx 3-1.2:1.0: Binding DVB extension |
|||
[ 56.751607] i2c i2c-23: Added multiplexed i2c bus 26 |
|||
[ 56.751611] si2168 23-0064: Silicon Labs Si2168-B40 successfully identified |
|||
[ 56.751613] si2168 23-0064: firmware version: B 4.0.2 |
|||
[ 56.765538] si2157 26-0060: Silicon Labs Si2147/2148/2157/2158 successfully attached |
|||
[ 56.765572] dvbdev: DVB: registering new adapter (3-1.2:1.0) |
|||
[ 56.765576] em28xx 3-1.2:1.0: DVB: registering adapter 0 frontend 0 (Silicon Labs Si2168)... |
|||
[ 56.766241] em28xx 3-1.2:1.0: DVB extension successfully initialized |
|||
[ 56.766245] em28xx 3-1.2:1.0: Binding DVB extension |
|||
[ 56.772265] i2c i2c-25: Added multiplexed i2c bus 27 |
|||
[ 56.772270] si2168 25-0067: Silicon Labs Si2168-B40 successfully identified |
|||
[ 56.772273] si2168 25-0067: firmware version: B 4.0.2 |
|||
[ 56.775424] si2157 27-0063: Silicon Labs Si2147/2148/2157/2158 successfully attached |
|||
[ 56.775466] dvbdev: DVB: registering new adapter (3-1.2:1.0) |
|||
[ 56.775470] em28xx 3-1.2:1.0: DVB: registering adapter 1 frontend 0 (Silicon Labs Si2168)... |
|||
[ 56.776032] em28xx 3-1.2:1.0: DVB extension successfully initialized |
|||
[ 56.776035] em28xx: Registered (Em28xx dvb Extension) extension |
|||
[ 56.794955] em28xx 3-1.2:1.0: Registering input extension |
|||
[ 56.827291] Registered IR keymap rc-hauppauge |
|||
[ 56.828225] rc rc0: 3-1.2:1.0 IR as /devices/pci0000:00/0000:00:1a.0/usb3/3-1/3-1.2/3-1.2:1.0/rc/rc0 |
|||
[ 56.828314] input: 3-1.2:1.0 IR as /devices/pci0000:00/0000:00:1a.0/usb3/3-1/3-1.2/3-1.2:1.0/rc/rc0/input23 |
|||
[ 56.890025] em28xx 3-1.2:1.0: Input extension successfully initialized |
|||
[ 56.890031] em28xx 3-1.2:1.0: Remote control support is not available for this card. |
|||
[ 56.890033] em28xx: Registered (Em28xx Input Extension) extension |
|||
</pre> |
</pre> |
||
==Remote Control Support== |
==Remote Control Support== |
Latest revision as of 09:52, 21 November 2023
Overview/Features
A combined DVB-C, DVB-T and DVB-T2 USB 2.0 device from Hauppauge with two tuners. Similiar to Hauppauge_WinTV-soloHD.
There are two versions available with the same name that can be distinguished by model number, look and USB device ID:
- Model 01590: Dual tuner for DVB-C, DVB-T and DVB-T2, has IEC connector, USB device ID 2040:0265 and a newer version USB device ID 2040:8265
- Model 01595: Dual tuner for ATSC and clear QAM, has F-connector, USB device ID 2040:026d.
Model 01590 (USB device ID 2040:0265)
Components Used
- USB interface: Empia EM28274
- Demodulator: 2*Silicon Labs Si2168-B40
- Tuner: 2*Silicon Labs Si2157-A30
Identification
for the newer version:
sudo lsusb -v -d 2040:8265
Bus 001 Device 003: ID 2040:8265 Hauppauge dualHD Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x2040 Hauppauge idProduct 0x8265 bcdDevice 1.00 iManufacturer 3 HCW iProduct 1 dualHD iSerial 2 0014331610 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 0x0037 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 500mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 0 bInterfaceProtocol 0 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x84 EP 4 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x85 EP 5 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 1 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 0 bInterfaceProtocol 0 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x84 EP 4 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x85 EP 5 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Device Qualifier (for other device speed): bLength 10 bDescriptorType 6 bcdUSB 2.00 bDeviceClass 0 bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 bNumConfigurations 1 Device Status: 0x0000 (Bus Powered)
Model 01595 (USB device ID 2040:026d)
Components Used
- USB interface: Empia EM28274
- Demodulators: LG LGDT3306a
- Tuners: Silicon Labs Si2157
This version of the board is like a USB version of the Hauppauge WinTV-HVR-2255 PCIe card.
Identification
sudo lsusb -v -d 2040:026d
Bus 001 Device 006: ID 2040:026d Hauppauge Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x2040 Hauppauge idProduct 0x026d bcdDevice 1.00 iManufacturer 3 HCW iProduct 1 955D iSerial 2 0011511574 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 55 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 500mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 0 bInterfaceProtocol 0 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x84 EP 4 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0000 1x 0 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x85 EP 5 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x0000 1x 0 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 1 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 0 bInterfaceProtocol 0 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x84 EP 4 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x03ac 1x 940 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x85 EP 5 IN bmAttributes 1 Transfer Type Isochronous Synch Type None Usage Type Data wMaxPacketSize 0x03ac 1x 940 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)
Making it Work
The following part refers specifically to Model 01590 or Model 01595.
Firmware
The Model 01590 demodulator needs a firmware which can be found for example at http://palosaari.fi/linux/v4l-dvb/firmware/Si2168/Si2168-B40/4.0.11/dvb-demod-si2168-b40-01.fw
The newer Version needs a different firmware dvb-demod-si2168-d60-01.fw (from https://github.com/CoreELEC/dvb-firmware/blob/master/firmware/dvb-demod-si2168-d60-01.fw) and usually comes already configured to bulk mode (see below)
Drivers
Only the first tuner on Model 01590 device is supported since Kernel 4.7 (see commit https://git.linuxtv.org/media_tree.git/commit/drivers/media/usb/em28xx?id=11a2a949d05e9d2d9823f0c45fa476743d9e462b).
Only the first tuner on Model 01595 device is supported since Kernel 4.11 (see commit https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=1586342e428d80e53f9a926b2e238d2175b9f5b5).
Both tuners on Model 01590 device and Model 01595 device are supported since Kernel 4.17 (see commit https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/diff/?id=be7fd3c3a8c5e9acbc69f887ca961df5e68cf6f0).
Setting Transfer Mode to bulk
The stick supports two transfer modes: isochronous and bulk, whereas most revisions use the isochronous mode by default. This often leads to artifacts being shown in the video stream when both tuners are active (e.g. when a EPG scan is running in the background). This problem has been confirmed by many users of the VDR (German language, https://www.vdr-portal.de/forum/index.php?thread/133363-gel%C3%B6st-wintv-dualhd-moduloption-um-nur-einen-tuner-zu-nutzen/), but is very likely to occurr with other software as well. You can check the mode your stick is using with dmesg. When the stick is detected there is a line that reads "dvb set to isoc mode" when in isochronous mode, when bulk mode is active, an analogous message is shown. Currently there is no known way to change that mode using a linux command or passing options to the kernel module. The only way to change it is to use a free windows tool provided by the manufacturer Hauppauge: https://www.hauppauge.de/site/support/support_faq.php?n=FAQ.BulkOrIso Please install the windows driver for the stick first, because they need to be installed before running the tool. After changing the mode to "bulk" using this tool, please check the dmesg messages again and verify that it now states "dvb set to bulk mode".
Sample Kernel Output (first tuner only)
[370.466385] usb 1-1: new high-speed USB device number 6 using xhci_hcd [370.607770] usb 1-1: New USB device found, idVendor=2040, idProduct=0265 [370.607777] usb 1-1: New USB device strings: Mfr=3, Product=1, SerialNumber=2 [370.607780] usb 1-1: Product: dualHD [370.607783] usb 1-1: Manufacturer: HCW [370.607786] usb 1-1: SerialNumber: 0011501234 [370.670696] Linux video capture interface: v2.00 [370.672517] em28xx: New device HCW dualHD @ 480 Mbps (2040:0265, interface 0, class 0) [370.672525] em28xx: DVB interface 0 found: isoc [370.672586] em28xx: chip ID is em28174 [371.903330] em28174 #0: EEPROM ID = 26 00 01 00, EEPROM hash = 0x7addc1c8 [371.903335] em28174 #0: EEPROM info: [371.903338] em28174 #0: microcode start address = 0x0004, boot configuration = 0x01 [371.909585] em28174 #0: AC97 audio (5 sample rates) [371.909588] em28174 #0: 500mA max power [371.909592] em28174 #0: Table at offset 0x27, strings=0x0e6a, 0x1888, 0x087e [371.909696] em28174 #0: Identified as Hauppauge WinTV-dualHD DVB (card=99) [371.911890] tveeprom 11-0050: Hauppauge model 204109, rev B2I6, serial# 11501234 [371.911894] tveeprom 11-0050: tuner model is SiLabs Si2157 (idx 186, type 4) [371.911896] tveeprom 11-0050: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc) [371.911898] tveeprom 11-0050: audio processor is None (idx 0) [371.911900] tveeprom 11-0050: has no radio, has IR receiver, has no IR transmitter [371.911903] em28174 #0: dvb set to isoc mode. [371.911973] usbcore: registered new interface driver em28xx [371.915988] em28174 #0: Binding DVB extension [371.919830] i2c i2c-11: Added multiplexed i2c bus 12 [371.919835] si2168 11-0064: Silicon Labs Si2168 successfully attached [371.923717] si2157 12-0060: Silicon Labs Si2147/2148/2157/2158 successfully attached [371.923747] DVB: registering new adapter (em28174 #0) [371.923758] usb 1-1: DVB: registering adapter 0 frontend 0 (Silicon Labs Si2168)... [371.925138] em28174 #0: DVB extension successfully initialized [371.925145] em28xx: Registered (Em28xx dvb Extension) extension [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
Sample Kernel Output (both tuners; Linux 4.17-rc1, Model 01590, USB device ID 2040:0265)
[ 55.197109] tveeprom: tuner model is SiLabs Si2157 (idx 186, type 4) [ 55.197112] tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc) [ 55.197113] tveeprom: audio processor is None (idx 0) [ 55.197115] tveeprom: has no radio, has IR receiver, has no IR transmitter [ 55.197122] em28xx 3-1.2:1.0: dvb set to isoc mode. [ 55.254525] em28xx 3-1.2:1.0: chip ID is em28174 [ 56.418899] em28xx 3-1.2:1.0: EEPROM ID = 26 00 01 00, EEPROM hash = 0xece4c7c8 [ 56.418904] em28xx 3-1.2:1.0: EEPROM info: [ 56.418907] em28xx 3-1.2:1.0: microcode start address = 0x0004, boot configuration = 0x01 [ 56.427984] em28xx 3-1.2:1.0: AC97 audio (5 sample rates) [ 56.427989] em28xx 3-1.2:1.0: 500mA max power [ 56.427993] em28xx 3-1.2:1.0: Table at offset 0x27, strings=0x0e6a, 0x1888, 0x087e [ 56.482062] em28xx 3-1.2:1.0: Identified as Hauppauge WinTV-dualHD DVB (card=99) [ 56.484086] tveeprom: Hauppauge model 204109, rev B3I6, serial# 13886818 [ 56.484090] tveeprom: tuner model is SiLabs Si2157 (idx 186, type 4) [ 56.484092] tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc) [ 56.484094] tveeprom: audio processor is None (idx 0) [ 56.484096] tveeprom: has no radio, has IR receiver, has no IR transmitter [ 56.484102] em28xx 3-1.2:1.0: dvb ts2 set to isoc mode. [ 56.684816] usbcore: registered new interface driver em28xx [ 56.727880] em28xx 3-1.2:1.0: Binding DVB extension [ 56.751607] i2c i2c-23: Added multiplexed i2c bus 26 [ 56.751611] si2168 23-0064: Silicon Labs Si2168-B40 successfully identified [ 56.751613] si2168 23-0064: firmware version: B 4.0.2 [ 56.765538] si2157 26-0060: Silicon Labs Si2147/2148/2157/2158 successfully attached [ 56.765572] dvbdev: DVB: registering new adapter (3-1.2:1.0) [ 56.765576] em28xx 3-1.2:1.0: DVB: registering adapter 0 frontend 0 (Silicon Labs Si2168)... [ 56.766241] em28xx 3-1.2:1.0: DVB extension successfully initialized [ 56.766245] em28xx 3-1.2:1.0: Binding DVB extension [ 56.772265] i2c i2c-25: Added multiplexed i2c bus 27 [ 56.772270] si2168 25-0067: Silicon Labs Si2168-B40 successfully identified [ 56.772273] si2168 25-0067: firmware version: B 4.0.2 [ 56.775424] si2157 27-0063: Silicon Labs Si2147/2148/2157/2158 successfully attached [ 56.775466] dvbdev: DVB: registering new adapter (3-1.2:1.0) [ 56.775470] em28xx 3-1.2:1.0: DVB: registering adapter 1 frontend 0 (Silicon Labs Si2168)... [ 56.776032] em28xx 3-1.2:1.0: DVB extension successfully initialized [ 56.776035] em28xx: Registered (Em28xx dvb Extension) extension [ 56.794955] em28xx 3-1.2:1.0: Registering input extension [ 56.827291] Registered IR keymap rc-hauppauge [ 56.828225] rc rc0: 3-1.2:1.0 IR as /devices/pci0000:00/0000:00:1a.0/usb3/3-1/3-1.2/3-1.2:1.0/rc/rc0 [ 56.828314] input: 3-1.2:1.0 IR as /devices/pci0000:00/0000:00:1a.0/usb3/3-1/3-1.2/3-1.2:1.0/rc/rc0/input23 [ 56.890025] em28xx 3-1.2:1.0: Input extension successfully initialized [ 56.890031] em28xx 3-1.2:1.0: Remote control support is not available for this card. [ 56.890033] em28xx: Registered (Em28xx Input Extension) extension
Remote Control Support
Untested.