DVB via USB: Difference between revisions

From LinuxTVWiki
Jump to navigation Jump to search
m (Link & /lib/firmware tidying.)
 
(21 intermediate revisions by 8 users not shown)
Line 1: Line 1:
For information about supported USB devices, see the appropriate device category: <BR>
Here is an (non-exhaustive) overview of DVB/ATSC USB devices sorted by their required LinuxTV driver (if supported - and yes - most of them are). Generally, when it comes to support for USB devices, it is a good idea to try the [http://linuxtv.org/repo/ current Hg sources] because some device drivers can be very new and thus may have not made their way into the mainstream kernel.
* [[ATSC USB Devices]]

* [[DVB-C USB Devices]]
Please help to keep this list up-to-date so that it is useful for everyone!
* [[DVB-S USB Devices]]
* [[DVB-S2 USB Devices]]
* [[DVB-T USB Devices]]
* [[DVB-T2 USB Devices]]
<BR>


__TOC__
__TOC__
==Introduction==
'''For all DVB USB devices you will need to load (if not compiled into the kernel):'''
* i2c-core
* crc32
* firmware_class
* dvb-core.ko
* dvb-pll.ko
and maybe others too. If the loading fails for any particular module you'll get a "unknown symbol" message. Then have a look at dmesg to find out, which symbols (functions) are missing. After you've found out which module was absent, please come back here and add it to the list/device-entry.


The ''Type'' field specifies the USB standard(s) supported by the device.
==Introduction==
'''For all devices shown below you need to load (if not compiled into the kernel):'''
- i2c-core
- crc32
- firmware_class
- dvb-core.ko
- dvb-pll.ko
and maybe others too. If the loading fails for any particular module you'll get a "unknown symbol"-message. Then take a look at dmesg to find out, which symbols (functions) are missing. After you've found out which module was absent, please come back here and add it to the list/device-entry.


; USB1.1
'''Legend:''' the field type specifies the real USB-standard of the device
: The device supports USB 1.1 only, and will work at 1.1 speeds when attached to a USB 2.0 port.
- '''USB1.1''': the device can be run on the USB1.1 and on the USB2.0 bus but only with USB1.1-speed.
; USB2.0
- '''USB2.0''': the device can only be connected to a real USB2.0 port and runs with USB2.0-speed.
(delivering the complete [[TS|Transport Stream]] to the software demuxer.)
: The device supports USB 2.0 only, and will not work when attached to a USB 1.1-only port. Such devices are normally capable of delivering the complete [[TS|Transport Stream]] to the software demuxer.
; USB2.0, USB1.1
- '''USB2.0/USB1.1''': the device is actually USB2.0, but can also be driven on a USB1.1 port. (if not
mentioned elsewhere, these boxes can deliver the complete [[TS|Transport Stream]] when running in USB2.0 mode)
: The device supports USB 1.1 and USB 2.0, and will work at any speed supported by 1.1 or 2.0. When running in USB 2.0 mode, such devices can deliver the complete [[TS|Transport Stream]] (unless specified otherwise).


== Firmware ==
== Firmware ==


Most of the USB devices need firmware to run. Some of the firmware files can be downloaded from [http://www.linuxtv.org/downloads/firmware/ here] or [http://www.thadathil.net/dvb/fw/ here].
Most of the USB devices need firmware to run. Some of the firmware files can be downloaded from [http://www.linuxtv.org/downloads/firmware/ here].


You need to copy the firmware to the correct place on your system. This will normally be /lib/firmware or a folder below it. Here is an example:
You need to copy the firmware to the correct place on your system. This will normally be /lib/firmware or a folder below it. Here is an example:
Line 36: Line 42:
- $ dmesg
- $ dmesg
- < ...... lines cut for clarity ..... >
- < ...... lines cut for clarity ..... >
- [ 4046.455924] usb 5-2: USB disconnect, address 3
- usb 5-2: USB disconnect, address 3
- [ 4066.407381] usb 5-2: new high speed USB device using ehci_hcd and address 8
- usb 5-2: new high speed USB device using ehci_hcd and address 8
- [ 4066.521806] dvb-usb: found a 'Hanftek UMT-010 DVB-T USB2.0' in cold state, will try to load a firmware
- dvb-usb: found a 'Hanftek UMT-010 DVB-T USB2.0' in cold state, will try to load a firmware
- [ 4066.539796] dvb-usb: downloading firmware from file 'dvb-usb-umt-010-02.fw' to the 'Cypress FX2'
- dvb-usb: downloading firmware from file 'dvb-usb-umt-010-02.fw' to the 'Cypress FX2'
- [ 4066.571666] dvb-usb: Hanftek UMT-010 DVB-T USB2.0 successfully initialized and connected.
- dvb-usb: Hanftek UMT-010 DVB-T USB2.0 successfully initialized and connected.
- [ 4066.701374] usb 5-2: USB disconnect, address 8
- usb 5-2: USB disconnect, address 8
- [ 4066.701404] dvb-usb: generic DVB-USB module successfully deinitialized and disconnected.
- dvb-usb: generic DVB-USB module successfully deinitialized and disconnected.


In this case, I have success, because the firmware was loaded.
In this case, I have success, because the firmware was loaded.


Remember that on some system the firmware is loaded by udev, so if for some reason the firmware is not loaded you may check that
== Additional technical information ==
udev is acutally running.
To check you could for example issue the command:
- $ ps -e | grep udev

If the output is empty, then you have to restart the udev daemon. For example in a Debian based system you may try with:
- $ sudo /etc/init.d/udev restart

then try again, removing and inserting the module again with modprobe.

== Additional Technical Information ==


This section starts describing devices which hit the market beginning of spring 2004. It does not cover TTUSB-based devices.
This section starts describing devices which hit the market beginning of spring 2004. It does not cover TTUSB-based devices.


=== DVB-USB devices host-controlled ===
=== Host Controlled DVB USB Devices ===


When first AC-Adapter-free USB devices (with the capability of receiving DVB Signals) hit the market, every vendor was using the generic USB-device-controller from Cypress (FX1 (AN2135/AN2235), FX2) as an interface between the DVB-hardware and the host.
When first AC-Adapter-free USB devices (with the capability of receiving DVB Signals) hit the market, every vendor was using the generic USB-device-controller from Cypress (FX1 (AN2135/AN2235), FX2) as an interface between the DVB-hardware and the host.
Line 56: Line 72:
As those controllers are very generic, one has to create (and download) an (small or not so small) embedded software to those controller to give vendor-specific and the wanted functionality. After downloading the so-called firmware vendors used the reboot-feature of the controller to re-enumerate with new USB Vendor/Product-IDs and a new USB-layout. On the host this looks like a normal disconnect and connect of an USB device.
As those controllers are very generic, one has to create (and download) an (small or not so small) embedded software to those controller to give vendor-specific and the wanted functionality. After downloading the so-called firmware vendors used the reboot-feature of the controller to re-enumerate with new USB Vendor/Product-IDs and a new USB-layout. On the host this looks like a normal disconnect and connect of an USB device.


Because the memory for storing the firmware was limited, vendors decided not to put any DVB-demodulator and RF-tuner specific code into the firmware, but only to implement interface functionality. At that time, the common way to control other components was [[I2C]]. The other necessary feature was data-streaming. With such a firmware, every functionality is done from the host - mainly the driving of the demodulator and the tuner.
Because the memory for storing the firmware was limited, vendors decided not to put any DVB-demodulator and RF-tuner specific code into the firmware, but only to implement interface functionality. At that time, the common way to control other components was [[I²C Protocol|I²C]]. The other necessary feature was data-streaming. With such a firmware, every functionality is done from the host - mainly the driving of the demodulator and the tuner.


Host-controlled devices are the ones based on DiBcom (dibusb, dib0700), Nebula (DigiTV), Hanftek and others. (see below)
Host-controlled devices are the ones based on DiBcom (dibusb, dib0700), Nebula (DigiTV), Hanftek and others. (see below)


=== Firmware Controlled DVB USB Devices===
=== DVB-USB device firmware-controlled ===


Another approach was coming later: When it started, that putting more memory on a board/into an IC with almost no increase of the [[BOM]]. Vendors started to put the demodulator and tuner-driver into the firmware. This was simplifying the host-part dramatically, because if you have a new hardware, you just need to modify the (platform-independent) firmware part and, as long as the firmware-interface is not changing, the host-driver stays the same.
Another approach was coming later: When it started, that putting more memory on a board/into an IC with almost no increase of the [[BOM]]. Vendors started to put the demodulator and tuner-driver into the firmware. This was simplifying the host-part dramatically, because if you have a new hardware, you just need to modify the (platform-independent) firmware part and, as long as the firmware-interface is not changing, the host-driver stays the same.
Line 66: Line 82:
Firmware-controlled devices: Twinhan VP7045/VP7021, Terratec Cinergy T2, Wideview and others.
Firmware-controlled devices: Twinhan VP7045/VP7021, Terratec Cinergy T2, Wideview and others.


To be continued.
To be continued ...

== DVB-T ==

=== Afatech AF9005 ===

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:
- dvb-usb-af9005.ko
- dvb-usb.ko
<!--
These [[frontend|frontend(s)]]/[[demodulator|demodulator(s)]] can be found in various revisions of this device:
- [[Allnet all2006 USB DVB-T Stick]]
- [[Delock USB2.0 DVB-T Stick]]
-->
{{DvbDeviceList
|content={{DvbDeviceCommented
|device=Allnet all2006 USB DVB-T Stick
|type=USB1.1
|fw=af9005.fw
|pic=[http://www.allnet.de/product_info_allnet.php?cPath=_&products_id=99975]
|comment=The tuner sensitivity is less than impressive. The driver has trouble scanning channel lists with Kaffeine. If you use a channel list made with another DVB-T device, watching the channels isn't really a big problem (a few blocks are shown though). This could be a timeout problem.
}}
{{DvbDeviceCommented
|device=Delock USB2.0 DVB-T Stick
|type=USB2.0/USB1.1
|fw=af9005.fw
|pic=[http://delock.de/produkte/gruppen/Multimedia/USB20_DVB-T_Empfnger_93168.html]
|comment=The case is insufficiently shielded.
}}
{{DvbDevice
|device=Ridata USB DVB-T Stick T100
|type=USB2.0/USB1.1
|fw=[http://ventoso.org/luca/af9005/af9005.fw af9005.fw]
}}
}}

''Clarification/update needed for the following comments.''

'''Comment:''' Not working at the moment: VT

'''Comment:''' Working but not in kernel yet, get CVS/Mercurial sources from linuxtv.org.

=== AVerMedia AVerTV A800 ===

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:
- dib3000-common.ko
- dib3000mc.ko
- dvb-usb.ko
- dvb-usb-dibusb-common.ko
- dvb-usb-a800.ko

These devices are clones of a DVB-T USB2.0 reference design made by [[DiBcom]].

{{DvbDeviceList
|content=
{{DvbDeviceCommented
| device=AVerMedia AVerTV DVB-T USB 2.0
| type=USB2.0/USB1.1
| fw=dvb-usb-avertv-a800-02.fw
| hw=[[DiB3000P|DiBcom 3000P]]
| comment=Remote control handling is different to the one used in the other DiBusb clones and many essential keys do not work at all (with X.org and linux kernels 2.6.17 and 2.6.18).
| pic=[http://www.avermedia.com/cgi-bin/products_digitvtuner_dvbtusb2.asp?show=2]
}}
}}

=== DiBcom DVB-T ===

==== [[DiB3000M-B]] USB1.1 DVB-T devices ====

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:
- dib3000-common.ko
- dib3000mb.ko
- dvb-usb.ko
- dvb-usb-dibusb-common.ko
- dvb-usb-dibusb-mb.ko

Most of these devices are (sometimes slightly modified) clones of a DVB-T USB1.1 reference design made by [[DiBcom]].

{{DvbDeviceList
|content=
{{DvbDevice
| device=AVerMedia AVerTV DVBT USB
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| pic=[http://www.avermedia.com/cgi-bin/products_digitvtuner_dvbtusb.asp?show=2]
}}
{{DvbDevice
| device=ADSTech Instant TV DVB-T USB
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| pic=[http://www.adstech.com/products/PTV-333/intro/PTV-333_intro.asp?pid=PTV-333]
}}
{{DvbDeviceCommented
| device=ADSTech Instant TV DVB-T USB2.0
| type=USB2.0, USB1.1
| fw=dvb-usb-adstech-usb2-02.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| comment=This device is dark blue.
| pic=[http://www.adstech.com/products/PTV-333/intro/PTV-333_intro.asp?pid=PTV-333]
}}
{{DvbDevice
| device=Artec T1 USB2.0
| type=USB2.0, USB1.1
| fw=dvb-usb-dibusb-6.0.0.8.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| pic=[http://www.ultima-elec.nl/]
}}
{{DvbDevice
| device=Compro Videomate DVB-U2000
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| pic=[http://www.comprousa.com/products/vmu2000.htm]
}}
{{DvbDevice
| device=CTS Portable (Chinese Television System)
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| pic=[http://www.2cts.tv/ctsportable/]
}}
{{DvbDevice
| device=DigitalRise DVB-T USB 1.1 Ter
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| pic=[http://www.digitalrise.biz/products/dtv-t7045/]
}}
{{DvbDevice
| device=Grandtec DVB-T USB1.1
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| pic=[http://www.grand.com.tw/en/product_form.asp?lwk_series=54&lwk_product=h-030&lwk_page=]
}}
{{DvbDevice
| device=HAMA DVB-T USB1.1 device
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| pic=[http://www.hama.de/bilder/00049/abb/00049021abb.jpg]
}}
{{DvbDevice
| device=JetWay DTV DVB-T USB
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| pic=[http://www.jetway.com.tw/evisn/product/lcd-tv/DVT-USB/dtv-usb.htm]
}}
{{DvbDevice
| device=KWorld V-Stream XPERT DTV DVB-T USB
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| pic=[http://www.kworld.com.tw/en/product/DVBT-USB/DVBT-USB.html]
}}
{{DvbDeviceCommented
| device=TwinhanDTV USB-Ter (VP7041)
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| comment=First DVB-T USB box on the market with DiB3000M-B built-in.
| pic=[http://www.twinhan.com/product_terrestrial_3.asp]
}}
{{DvbDevice
| device=TwinhanDTV Magic Box (VP7041e)
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| pic=[http://www.twinhan.com/product_terrestrial_5.asp]
}}
{{DvbDeviceCommented
| device=Ultima Electronic/Artec T1 USB TVBOX
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw or dvb-usb-dibusb-an2235-01.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]], variable
| comment=There are several clones of this device: some have the AN2235 USB controller instead of the AN2135; some use a Panasonic tuner instead of the default Thomson Cable tuner. Most of the Boxes have standard Cypress USB IDs which makes it very hard to identify them. A HOWTO for this devices can be found [[Artec T1 USB TV Box|here]].
| pic=[http://www.ultima-elec.nl/]
}}
{{DvbDevice
| device=VideoWalker DVB-T USB
| type=USB1.1
| fw=dvb-usb-dibusb-5.0.0.11.fw
| hw=[[DiB3000M-B|DiBcom 3000M-B]]
| pic=[http://www.geniusnet.com.tw/product/product-1.asp?pdtno=541]
}}
}}

==== [[DiB3000M-C/P]] USB2.0 DVB-T devices ====

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:
- dib3000-common.ko
- dib3000mc.ko
- mt2060.ko
- dvb-usb.ko
- dvb-usb-dibusb-common.ko
- dvb-usb-dibusb-mc.ko

These [[frontend|frontend(s)]]/[[demodulator|demodulator(s)]] can be found in various revisions of this device:
- [[DiB3000M-C|DiBcom 3000M-C]]
- [[DiB3000P|DiBcom 3000P]]

&#91;FIXME: which for which devices?&#93;

These devices are clones of DVB-T USB2.0 reference designs made by [[DiBcom]]. MOD3000P1 (FX2), MOD3000P1.2 (FX2-LP) and STK3000P.

{{DvbDeviceList
| content =
{{DvbDevice
| device=Artec T14
| type=USB2.0/USB1.1
| fw=dvb-usb-dibusb-6.0.0.8.fw
| hw=MT2060 silicon tuner
| pic=[http://www.artec.com.tw/ehtm/be122.htm]
}}
{{DvbDevice
| device=Grand DVB-T Pen USB 2.0
| type=USB2.0, USB1.1
| fw=dvb-usb-dibusb-6.0.0.8.fw
| hw=MT2060 silicon tuner
| pic=[http://www.grand.com.tw/en/product_form.asp?lwk_series=54&lwk_product=h-005&lwk_page=1]
}}
{{DvbDevice
| device=LiteOn USB DVB-T TV Tuner
| type=USB2.0, USB1.1
| fw=dvb-usb-dibusb-6.0.0.8.fw
| hw=MT2060 silicon tuner
| pic=[http://www.liteon.com/Page.aspx?id=4ad86a20-1897-4b8a-849e-c15ddadeb503]
}}
{{DvbDevice
| device=Leadtek WinFast DTV Dongle
| type=USB2.0/USB1.1
| fw=dvb-usb-dibusb-6.0.0.8.fw
| hw=MT2060 silicon tuner
| pic=[http://www.leadtek.com.tw/eng/tv_tuner/overview.asp?lineid=6&pronameid=231]
}}
{{DvbDevice
| device=MSI Digivox Mini SL
| type=USB2.0
| fw=dvb-usb-dibusb-6.0.0.8.fw
| hw=MT2060 silicon tuner
| pic=[http://www1.conrad.de/xl/9000_9999/9900/9940/9949/994904_BB_00_FB.EPS.jpg]
}}
{{DvbDeviceCommented
| device=Typhoon TV Movie Stick
| type=USB2.0, (USB1.1?)
| fw=dvb-usb-dibusb-6.0.0.8.fw
| hw=MT2060 silicon tuner
| pic=[http://www.typhoon.de/en/art.php?p=826&c=]
| comment="Art. 50506"
}}
{{DvbDevice
| device=YUAN PD300 DVB-T mobility
| type=USB2.0, USB1.1
| fw=dvb-usb-dibusb-6.0.0.8.fw
| hw=MT2060 silicon tuner
| pic=[http://www.yuan.com.tw/en/products/vdo_pd300mini.htm]
}}
}}

==== [[DiB0700]] USB2.0 DVB-T devices ====

{{Note| Currently, at least two dib0700-based devices are known to have problems. The Nova-T 500 suffers from random disconnects after a few hours or days, and the Nova-T Stick, and possibly others using the same hardware, suffer from I2C errors. Updating to [http://linuxtv.org/hg/v4l-dvb current Hg drivers] and using [http://www.wi-bw.tfh-wildau.de/~pboettch/home/linux-dvb-firmware/dvb-usb-dib0700-03-pre1.fw new firmware] should cure these.}}

All devices below will be fully supported by the LinuxTV drivers very soon. The following modules are needed for these devices:
- dib7000m.ko
- dib7000p.ko
- dib3000mc.ko
- mt2060.ko
- dvb-usb.ko
- dvb-usb-dib0700.ko

These [[frontend|frontend(s)]]/[[demodulator|demodulator(s)]] can be found in various revisions of this device:
- DiBcom DiB7000P, DiBcom DiB7000PC

'''Comment:''' In case someone is opening the device, one can find the DiB7700-chips (B/C/D), which is demodulator and USB in one silicon. The USB firmware used is the same for all devices.

The dvb-usb-dib0700 module has a parameter which forces the activation of LNAs (Low Noise Amplifier). If you have reception problems you can try to load the module with force_lna_activation=1 and see if it works better. Normally the LNA is controlled automatically by software so, in general, there should be no need to force activation. If a device has an LNA, it is shown in the table below; for those which have no LNA, this parameter has no meaning.

{{DvbDeviceList
| content=
{{DvbDevice
| device=AVerMedia AVerTV DVB-T Volar
| type=USB2.0
| fw=dvb-usb-dib0700-xx.fw
| hw=DiB7700P, MT2060
| pic=[http://www.avermedia.com/cgi-bin/products_digitvtuner_dvbtvolar.asp?show=1]
}}
{{DvbDevice
| device=Compro Videomate U500
| type=USB2.0
| fw=dvb-usb-dib0700-xx.fw
| hw=DiB7700P, MT2060
| pic=[http://www.comprousa.com/New/en/product/u500/u500.html]
}}
{{DvbDeviceCommented
| device=Hauppauge Nova-T 500 Dual
| type=PCI with embedded USB2.0
| fw=dvb-usb-dib0700-xx.fw
| hw=2&times;DiB3000P, 2&times;MT2060, LNA
| comment=A.K.A. "Bristol". The LNA needs manual activation.
| pic=[http://www.hauppauge.co.uk/pages/products/data_novat500.html]
}}
{{DvbDeviceCommented
| device=[[Hauppauge WinTV-NOVA-T-Stick|Hauppauge Nova-T Stick]]
| type=USB2.0
| fw=dvb-usb-dib0700-xx.fw
| hw=DiB7700M or DiB7700P, MT2060
| comment=Identical to the USB Stick Elgato is selling.
There are two known variants; see the [[Hauppauge WinTV-NOVA-T-Stick|main page for this device]] for identification and support details.
| pic=[http://www.hauppauge.co.uk/pages/products/data_novatstick.html]
}}
{{DvbDeviceCommented
| device=Leadtek WinFast DTV Dongle
| type=USB2.0
| fw=dvb-usb-dib0700-xx.fw
| hw=DiB7700P, MT2060
| comment=There exists another device with the same design and name but different internals. Both are supported by linuxtv.org.
}}
}}

=== HanfTek UMT-010 ===

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:
- mt352.ko
- dvb-usb.ko
- dvb-usb-dibusb-common.ko
- dvb-usb-umt-010.ko

The USB protocol which is used by this device is equal to the one used in DiBcom USB2.0 reference design. Thanks to Hanftek who especially wrote a firmware for easy Linux-Support.

{{DvbDeviceList
| content=
{{DvbDeviceCommented
| device=Hanftek UMT-010
| type=USB2.0
| fw=dvb-usb-umt-010-02.fw
| hw=[[Zarlink MT352]]
| comment=Stick-sized. Different colours (blue, grey, red).
| pic=[http://www.hanftek.com/]
}}
}}

=== Hauppauge WinTV-NOVA-T usb2 ===

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:
- dib3000-common.ko
- dib3000mc.ko
- dvb-usb.ko
- dvb-usb-dibusb-common.ko
- dvb-usb-nova-t-usb2.ko

These devices are clones of a DVB-T USB2.0 reference design made by [[DiBcom]].

{{DvbDeviceList
| content=
{{DvbDeviceCommented
| device=Hauppauge WinTV NOVA-T USB2
| type=USB2.0, USB1.1
| fw=dvb-usb-nova-t-usb2-01.fw
| hw=[[DiB3000P|DiBcom 3000P]]
| comment=It has a MAC address.
| pic=[http://www.hauppauge.de/pages/products/data_novatusb2.html]
}}
}}

=== LifeView ===

Devices are starting to be supported.

See http://linuxtv.org/v4lwiki/index.php/LifeView

==== LifeView TV Walker Twin ====

Works well (two tuners).

The TV Walker twin contains a ULi M9206, which is, according to the website, a "versatile digital audio/video controller for various digital TV standards such as DVB and ATSC. M9206 supports Microsoft's latest Broadcast Driver Architecture (BDA), which offer customers design flexibility and broad market coverage to both DVB and ATSC standards." A pair of TDA10046A OFDM channel demodulators and TDA8275A Silicon Tuners provide the DVB-T functionality. There is also an IR receiver which is presumably controlled by the M9206. Note: this device's USB cable comes with 2 USB plugs. This is not one plug per tuner; plug in both of them together to supply adequate power to the device.

=== Nebula DigiTV USB version - DVB-T ===

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:
- mt352.ko
- nxt6000.ko
- dvb-usb.ko
- dvb-usb-digitv.ko

{{DvbDeviceList
| content=
{{DvbDeviceCommented
| device=Nebula DigiTV USB
| type=USB2.0
| fw=dvb-usb-digitv-01.fw
| hw=[[Zarlink MT352]] or [[NXT6000|NxtWave Nxt6000]]
| comment=There is an SDK for download on the Nebula WebSite, which was used to improve the driver's quality. Was the first USB2.0 box on the market (late 2003/early 2004).
| pic=[http://www.nebula-electronics.com/information/info.asp?Code=0003]
}}
}}

=== TerraTec Cinergy T² ===

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:
- cinergyT2.ko

{{DvbDeviceList
| content=
{{DvbDeviceCommented
| device=[[TerraTec]] [[TerraTec_Cinergy_T2|Cinergy T²]]
| type=USB2.0
| hw=[[Zarlink MT352]]
| pic=[http://tvde.terratec.net/modules.php?op=modload&name=News&file=article&sid=238]
| comment=The programming of the MT352 is hidden behind the USB protocol defined within the firmware.
}}
}}

=== Twinhan DVB-T USB2.0 ===

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:
- dvb-usb.ko
- dvb-usb-vp7045.ko

{{DvbDeviceList
| content=
{{DvbDevice
| device=DigitalNow TinyUSB 2 DVB-t
| type=USB2.0
| fw=dvb-usb-vp7045-01.fw
| hw=[[Zarlink MT352]]
| pic=[http://www.digitalnow.com.au/product_pages/tinyusb2.html]
}}
{{DvbDevice
| device=DigitalRise DVB-T USB 2.0 Ter Beetle
| type=USB2.0
| fw=dvb-usb-vp7045-01.fw
| hw=[[Zarlink MT352]]
| pic=[http://www.digitalrise.biz/products/dtv-t7045/]
}}
{{DvbDevice
| device=dnt EuroMini 100
| type=USB2.0
| fw=dvb-usb-vp7045-01.fw
| hw=[[Zarlink MT352]]
| pic=[http://www.dnt.de/index.php?dir=produkte/detail&id=20203]
}}
{{DvbDevice
| device=Fujitsu-Siemens DVB-T Mobile TV Tuner
| type=USB2.0
| fw=dvb-usb-vp7045-01.fw
| hw=[[Zarlink MT352]]
| pic=[http://www.fujitsu-siemens.de/home/products/accessories/others/dvb_t_mobile.html de] [http://www.fujitsu-siemens.com/home/products/others/dvb_t_mobile.html en]
}}
{{DvbDeviceCommented
| device=TwinhanDTV Alpha
| type=USB2.0
| fw=dvb-usb-vp7045-01.fw
| hw=[[Zarlink MT352]]
| comment='''It seems that some TwinhanDTV Alphas need newer firmware.''' The symptoms are that they can not find any channels. Consequently, they are unusable at the moment. See these posts for more details: [http://www.linuxtv.org/pipermail/linux-dvb/2006-November/014202.html][http://www.linuxtv.org/pipermail/linux-dvb/2006-November/014226.html][http://www.linuxtv.org/pipermail/linux-dvb/2007-January/015145.html][http://www.linuxtv.org/pipermail/linux-dvb/2007-January/015222.html]
| pic=[http://www.twinhan.com/product_terrestrial_7.asp]
}}
{{DvbDevice
| device=TwinhanDTV MagicBoxII
| type=USB2.0
| fw=dvb-usb-vp7045-01.fw
| hw=[[Zarlink MT352]]
| pic=[http://www.twinhan.com/product_terrestrial_6.asp]
}}
}}

The programming of the MT352 is hidden behind the USB protocol defined within the firmware.

=== WideView/Yakumo/Hama/Typhoon/Yuan Boxes and Pens ===

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:
- dvb-usb.ko
- dvb-usb-dtt200u.ko

These [[frontend|frontend(s)]]/[[demodulator|demodulator(s)]] can be found in various revisions of this device:
- [[Zarlink MT352]]
- The new units use the Zarlink ZL10353 instead of MT352
- for pentype design it is unknown (but it doesn't matter at all)

The programming of the MT352 is hidden behind the USB protocol defined within the firmware. These boxes can only deliver part of the [[TS|Transport Stream]] (using a hardware PID filter); it is not known how to deactivate this. (The driver was completely [[reverse-engineering|reverse-engineered]] without the help of its real vendor (assuming WideView is the manufacturer). '''UPDATE:''' the vendor was so kind to provide information about unknown commands, hence the driver is complete.

There is apparently another Yakumo model not covered:

<blockquote>Hi, I've purchased a "Yakumo Quickstick TV easy" and it doesn't work after compiling and installing the modules. Its vendor and product id ara 0x14aa and 0x620, and it does not appear in modules.usbmap. So I think it's not defined... ßingen.</blockquote>

'''Firmware:''' The firmware for the new rev Freecom sticks (dvb-usb-wt220u-fc03.fw) can be obtained from here [http://home.arcor.de/efocht/dvb-usb-wt220u-fc03.fw]

'''Warning:''' When checking the table below, check the USB ID to see if you have an old or new revision of the firmware.

{{DvbDeviceList
| content=
{{DvbDeviceCommented
| device=Yakumo DVB-T mobile USB
| type=USB2.0, USB1.1
| fw=dvb-usb-dtt200u-01.fw
| comment=A.K.A DTT200U
| pic=[http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T]
}}
{{DvbDeviceCommented
| device=Yakumo QuickStick DVB-T USB
| type=USB2.0, USB1.1
| fw=dvb-usb-wt220u-01.fw
| comment=Pen-sized
| pic=[http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T]
}}
{{DvbDeviceCommented
| device=Yakumo QuickStick Basic DVB-T USB
| type=USB2.0, USB1.1
| fw=dvb-usb-wt220u-zl0353-01.fw
| comment=Pen-sized
| pic=[http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T]
}}
{{DvbDeviceCommented
| device=Yakumo QuickStick Basic DVB-T USB
| type=USB2.0
| fw=dvb-usb-wt220u-fc03.fw
| comment=Pen-sized.<br />USB ID 14aa:0225 (cold state, before firmware).<br />USB ID 14aa:0226 (warm state, after firmware).
| pic=[http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T]
}}
{{DvbDevice
| device=Yuan DVB2GO UB300
| type=USB2.0, USB1.1
| fw=dvb-usb-dtt200u-01.fw
| pic=[http://www.yuan.com.tw/en/products/vdo_ub300.html]
}}
{{DvbDevice
| device=Yuan PD300 DVB-T mini
| type=USB2.0, USB1.1
| fw=dvb-usb-wt220u-01.fw
| hw=MT2060 silicon tuner?
| pic=[http://www.yuan.com.tw/en/products/vdo_pd300.html]
}}
{{DvbDevice
| device=Hama DVB-T Box
| type=USB2.0, USB1.1
| fw=dvb-usb-wt220u-02.fw
| pic=[http://www.hama.de/portal/articleId*114663/action*2563]
}}
{{DvbDevice
| device=Typhoon USB2.0 DVB-T Box
| type=USB2.0, USB1.1
| fw=dvb-usb-dtt200u-01.fw
}}
{{DvbDeviceCommented
| device=Typhoon DVB-T USB Drive
| type=USB2.0, USB1.1
| fw=dvb-usb-wt220u-01.fw
| comment=Pen-sized.
| pic=[http://www.typhoon.de/de/art.php?p=826&c=]
}}
{{DvbDevice
| device=WideView USB2.0 DVB-T Receiver
| type=USB2.0, USB1.1
| fw=dvb-usb-dtt200u-01.fw
| pic=[http://www.wv.com.tw/]
}}
{{DvbDeviceCommented
| device=WideView Pentype DVB-T-Receiver (WT-220U)
| type=USB2.0, USB1.1
| fw=dvb-usb-wt220u-01.fw
| comment=Pen-sized.
| pic=[http://www.wv.com.tw/]
}}
{{DvbDeviceCommented
| device=Freecom DVB-T USB Stick
| type=USB2.0, USB1.1
| fw=dvb-usb-wt220u-01.fw
| comment=Pen-sized.
| pic=[http://www.freecom.com/ecProduct_detail.asp?ID=2234]
}}
{{DvbDeviceCommented
| device=Freecom DVB-T USB Stick (25451 rev3)
| type=USB2.0
| fw=dvb-usb-wt220u-fc03.fw
| comment=Pen-sized.<br />USB ID (before firmware): 14aa:0225
| pic=[http://www.freecom.com/ecProduct_detail.asp?ID=2234]
}}
{{DvbDeviceCommented
| device=V-Gear PocketDTV USB2.0 DVB-T TVBox
| type=USB2.0, USB1.1
| fw=dvb-usb-dtt200u-01.fw
| comment=Small container.
| pic=[http://www.vgear.com/products/list1.asp?ProdID=AMVG1-016-001&SUB_NUM=1998/]
}}
{{DvbDeviceCommented
| device=V-Gear MobiDTV
| type=USB2.0, USB1.1
| fw=dvb-usb-wt220u-01.fw or dvb-usb-wt220u-02.fw
| comment=Pen-sized.
| pic=[http://www.vgear.com/products/list.asp?ProdID=AMVG1-016-002]
}}
{{DvbDeviceCommented
| device=dnt EuroStick USB-Stick DVB-T Receiver
| type=USB2.0, USB1.1
| fw=dvb-usb-wt220u-01.fw
| comment=Pen-sized.
| pic=[http://www.dnt.de/index.php?dir=details&pid=20201&cat=dvbt&m_id=dvbt&h_curr=]
}}
{{DvbDeviceCommented
| device=Redbell DVB-T USB Stick (TDT-2GO)
| type=USB2.0, USB1.1
| fw=dvb-usb-wt220u-01.fw or dvb-usb-wt220u-fc03.fw or dvb-usb-wt220u-zl0353-01.fw
| comment=Pen-sized. Valid for PCMCIA version.
| pic=[http://www.redbell.es/products/show_item/RB-TDTUSB2] [http://www.redbell.es/products/show_item/RB-TDTCBUS] [http://www.umdonline.com/guest/showitem?no_=RB-TDTUSB2]
}}
{{DvbDeviceCommented
| device=New revision of those devices with ZL0353 inside
| type=USB2.0, USB1.1
| fw=dvb-usb-wt220u-zl0353-01.fw
| comment=Pen-sized.<br />USB ID (before firmware): 14aa:022a.
[mailto:david@myforest.com Someone] has three of these running just fine in parallel; USB IDs 14aa:0221 and 14aa:022b.
| pic=[http://www.amazon.co.uk/gp/product/B000ALAWQ6/026-5347660-4657208?v=glance&n=560798]
}}
{{DvbDeviceCommented
| device=Club 3D ZAP-TV250mini
| type=USB2.0, USB1.1
| fw=dvb-usb-wt220u-02.fw (dvb-usb-wt220u-01.fw untested)
| hw=MT2060 silicon tuner
| comment=USB ID (before firmware): 14aa:0220
| pic=[http://www.club-3d.nl/productshow_zaptv.php?ordercode=ZAP-TV250M&show=&p=&l=en]
}}
{{DvbDeviceCommented
| device=Gainward DVB2go
| type=USB2.0
| fw=dvb-usb-wt220u-01.fw or dvb-usb-wt220u-02.fw
| comment=Clone of YUAN PD300.
}}
{{DvbDeviceCommented
| device=Bestbuy Easy TV
| type=USB2.0
| fw=dvb-usb-wt220u-02.fw
| comment=This is a WideView WT-220U PenType Receiver (Typhoon/Freecom). It works with newest linuxtv driver version.
}}
}}

=== Supported Em2880/Em2870 Based USB DVB-T devices ===

Official project site: [http://www.linuxtv.org/v4lwiki/index.php/Em2880 Em2880]

{{DvbDeviceList
| content=
{{DvbDevice
| device=Kworld 350 U DVB-T
| type=USB
}}
{{DvbDevice
| device=MSI DigiVox A/D
| type=USB2.0
| pic=[http://www.msi.com.tw/program/products/multimedia/mut/pro_mut_detail.php?UID=612]
}}
{{DvbDevice
| device=Hauppauge WinTV HVR 900 (rev. 1.0)
| type=USB
| pic=[http://www.hauppauge.co.uk/pages/products/data_hvr900.html]
}}
{{DvbDevice
| device=Terratec Cinergy Hybrid T XS
| type=USB
| hw=ZL10353
| pic=[http://tvde.terratec.net/modules.php?op=modload&name=News&file=article&sid=249]
}}
{{DvbDevice
| device=Terratec Cinergy Hybrid T XS
| type=USB
| hw=MT352
| pic=[http://tvde.terratec.net/modules.php?op=modload&name=News&file=article&sid=249]
}}
{{DvbDevice
| device=Terratec Cinergy Hybrid T XS France}
| type=USB
}}
{{DvbDevice
| device=Terratec Prodigy Hybrid T XS
| type=USB
| pic=[http://tvde.terratec.net/modules.php?op=modload&name=News&file=article&sid=249]
}}
{{DvbDevice
| device=Terratec Cinergy T XS
| type=USB
| hw=XC3028
| pic=[http://tvde.terratec.net/modules.php?op=modload&name=News&file=article&sid=253]
}}
{{DvbDevice
| device=Terratec Cinergy T XS
| type=USB
| hw=MT2060
}}
{{DvbDevice
| device=Pinnacle PCTV USB Stick
| type=USB
| pic=[http://linuxtv.org/v4lwiki/index.php/Em2880/PinnaclePCTV Device notes] [http://www.pinnaclesys.com/PublicSite/uk/Products/Consumer+Products/PCTV+Tuners/PCTV+Digital+PVR+(DVB-S_DVB-T)/PCTV+USB+Stick.htm]
}}
{{DvbDevice
| device=DNT DA2 Hybrid
| type=USB
| pic=[http://www.dnt.de/index.php?dir=produkte/detail&id=20205]
}}
{{DvbDevice
| device=Pinnacle PCTV Hybrid Pro Stick
| type=USB
| pic=[http://www.pinnaclesys.com/PublicSite/de/Products/Consumer+Products/PCTV+Tuners/PCTV+Analog_Digital+PVR/PCTV+Hybrid+Pro+Stick+(320e)]
}}
{{DvbDevice
| device=Empire USB 2.0 Pen Dual TV
| type=USB
| pic=[http://www.empiremedia.it/site/prodotto.asp?idprodotto=231]
}}
{{DvbDeviceCommented
| device=BestBuy Easy TV USB hybrid
| type=USB
| comment=USB ID EB1A:2881
}}
{{DvbDeviceCommented
| device=Dazzle TV Hybrid Stick
| type=USB
| comment=USB ID EB1A:2881
| pic=[http://doc.ubuntu-fr.org/pctv_hybrid_pro_stick?s=tnt]
}}
}}

== DVB-C ==

=== Technotrend TT-Connect C-1100 USB ===

Reported as working since long time. ALPS TDBE2(sp5659) tuner, ves1820 modulator.
- dvb-ttusb-budget.ko
- ves1820.ko
- etc.

=== Technotrend TT-Connect C-1200 USB ===

Reports say it works in Linux; stv0297 + Philips tdm1316; [http://www.linuxtv.org/pipermail/linux-dvb/2006-April/009711.html details here].
Possibly has some frame-dropping issues? (See [http://www.linuxtv.org/pipermail/linux-dvb/2007-February/015799.html], though works somehow despite the warning in [http://www.mail-archive.com/linux-dvb@linuxtv.org/msg23180.html] so maybe the first is just missing firmware file or something else.)

As a side note, the Techno-trend USB IR works [http://www.google.com/search?&q=technotrend+usb+ir+patch with patches] (support for ttusbir included in lirc 0.8.2pre3).

== DVB-S ==

=== SIEMSSEN & CO. - Opera S1 ===

A similar device to the DVBWorld. Seems to be sold in Germany by one of the well-known discounters. Its German distributor is [http://www.siemssen.de/ Siemssen] under the name Opera DVB-S1.
The card contains a Cypress CY7C68013A-56PCX to manage the USB part, which seems to control a Xilinx Spartan(R) XC3850 FPGA. The tuner box reads Sharp, but I cannot find out more about it.

I'm able to upload the firmware to turn the device from cold mode to warm USB ID but programming the FPGA still fails.
For my card/driver:
The cold USB ID is: VID 0x04b4 (CYPRESS) PID: 0x2830
The warm USB ID is: VID 0x695C (???????) PID: 0x3829


DVB-S cards in similar cases can be found on different Asian sites:
[http://www.dvb-device.com/ace42sc.htm]
[http://www.szforwardvideo.com/en/manager/product_read.asp?ID=96]

Despite the fact that all those devices look quite similar and have similar hardware, Siemssen still claims that they are built completely differently and their drivers are not interchangeable.

A driver fully supporting this device is available in 2.6.22 and later kernels.

=== TwinhanDTV StarBox II - DVB-S (7021A)===

The following modules are necessary in order to get this device running:
- dvb-usb.ko
- dvb-usb-vp702x.ko

The driver is still a little work-in-progress. If you want to help the development, please consult the [[linux-dvb-ml|linux-dvb Mailing list]]. The front-end part of the DST driver could be rewritten to be used by the USB driver. Currently it is hard-wired to the PCI cards.

{{DvbDeviceList
| content=
{{DvbDevice
| device=DigitalRise DVB-S USB Sat Starbox
| type=USB2.0, USB1.1
| fw=dvb-usb-vp702x-01.fw
| hw=[[DST]]
| pic=[http://www.digitalrise.biz/products/dtv-s7021/]
}}
{{DvbDevice
| device=TwinhanDTV StarBox
| type=USB2.0, USB1.1
| fw=dvb-usb-vp702x-01.fw
| hw=[[DST]]
| pic=[http://www.twinhan.com/product_satellite_5.asp]
}}
{{DvbDevice
| device=Typhoon DVB-S USB 2.0 Box
| type=USB2.0, USB1.1
| fw=dvb-usb-vp702x-01.fw
| hw=[[DST]]
| pic=[http://www.typhoon.de/de/art.php?p=822&c=]
}}
}}

=== Pinnacle PCTV 400e USB2.0 DVB-S ===

This driver is pre-Work-In-Progress. The following drivers are needed for these devices:
- tda10086.ko
- lnbp21.ko
- tda826x.ko
- dvb-usb.ko
- dvb-usb-ttusb2.ko

It uses (an extension of) the TTUSB-USB-protocol.

{{DvbDeviceList
| content=
{{DvbDeviceCommented
| device=Pinnacle PCTV 400e USB - DVB-S
| type=USB2.0
| fw=dvb-usb-pctv-400e-01.fw
| hw=[[Philips TDA10086|Philips TDA10086/93]], TDA8263 tuner, ST lnbp21
| comment=This device uses isochronous data transfer.
| pic=[http://www.pinnaclesys.com/ProductPage_n.asp?Product_ID=2659&Langue_ID=4]
}}
}}

=== Pinnacle PCTV Sat Pro USB DVB-S (PCTV450e)===
USB ID : 2304:0222

Status : unknown

chips : TDA10086, LNBP21, Cypress µC CY7C68013,... (doc says it uses the TDA8263HN; ?no difference with 400e?)

[http://www.pinnaclesys.com/PublicSite/fr/Products/Consumer+Products/PCTV+Tuners/PCTV+Digital+PVR+(DVB-S_DVB-T)/PCTV+Sat+Pro+USB.htm photo]

== DVB-S2 ==

=== [http://www.pinnaclesys.com/PublicSite/de/Products/Consumer%2BProducts/PCTV%2BTuners/PCTV%2BDigital%2BPVR%2B%28DVB-S_DVB-T%29/PCTV%2BSat%2BHDTV%2BPro%2BUSB.htm PCTV Sat HDTV Pro USB (PCTV452e)] ===

see [[#PCTV_Sat_HDTV_Pro_USB_.28PCTV452e.29_2]]

== ATSC ==

== Multi-purpose DVB/ATSC ==

=== [[Technotrend]] Budget USB1.1 (DVB-S/T/C) ===

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:
- stv0299.ko
- cx22700.ko
- tda1004x.ko
- tda8083.ko
- ves1820.ko
- dvb-ttusb-budget.ko

These [[frontend|frontend(s)]]/[[demodulator|demodulator(s)]] can be found in various revisions of this device:
- [[STMicroelectronics]] [[STMicroelectronics STV0299|STV0299]]
- [[Conexant]] [[Conexant CX22700|CX22700]]
- [[Philips]] [[Philips TDA10046|TDA10046]]
- [[Philips]] [[Philips TDA8083|TDA8083]]
- [[VLSI]] [[VES1820]]

{{DvbDeviceList
| content=
{{DvbDevice
| device=[[Hauppauge]] [[Hauppauge WinTV-NOVA-S USB|WinTV-NOVA-S USB]]
| type=USB1.1
| pic=[http://www.hauppauge.de/pages/products/data_nova-s-usb.html]
}}
{{DvbDevice
| device=[[Hauppauge]] [[Hauppauge WinTV-NOVA-T USB|WinTV-NOVA-T USB]]
| type=USB1.1
| fw=dvb-fe-tda10046.fw
| hw=[[Philips]] [[Philips TDA10046|TDA10046]]
| pic=[http://www.hauppauge.de/pages/products/data_nova-t-usb.html]
}}
{{DvbDevice
| device=Satelco USB-Box DVB-S/T/C
| type=USB1.1
| fw=dvb-fe-tda10046.fw
| hw=[[Philips]] [[Philips TDA10046|TDA10046]]
| pic=[http://www.satelco.de/htm/shop/boxen/index.htm]
}}
{{DvbDevice
| device=Technotrend TT-PCline USB family DVB-S/T/C
| type=USB1.1
| fw=dvb-fe-tda10046.fw
| hw=[[Philips]] [[Philips TDA10046|TDA10046]]
| pic=[http://www.technotrend.de/english/download/download.html]
}}
}}

=== [[Technotrend]] DEC Budget USB1.1 (DVB-S/T) ===

All devices below (except the DEC1100-T) are supported by the LinuxTV driver. The following drivers are needed for these devices:
- ttusbdecfe.ko
- ttusb_dec.ko

The DECs are set-top boxes equipped with a USB port and can be used without a PC. The TV-Out can't be used for PC output.

{{DvbDeviceList
| content=
{{DvbDevice
| device=[[Hauppauge]] [[Hauppauge DEC3000-S USB|DEC3000-S USB]] (DVB-S)
| type=USB1.1
| fw=dvb-ttusb-dec-3000s.fw
| hw=DEC-specific
| pic=[http://www.hauppauge.de/pages/products/data_dec3000s.html]
}}
{{DvbDevice
| device=[[Hauppauge]] [[Hauppauge DEC2000-T USB|DEC2000-T USB]] (DVB-T)
| type=USB1.1
| fw=dvb-ttusb-dec-2000t.fw
| hw=DEC-specific
| pic=[http://www.hauppauge.de/pages/products/data_dec2000t.html]
}}
{{DvbDeviceCommented
| device=[[Hauppauge]] [[Hauppauge DEC1100-T|DEC1100-T]] (DVB-T)
| type=USB1.1
| hw=DEC-specific
| comment=TV set-top box only - no PC output
| pic=[http://www.hauppauge.de/pages/products/data_dec1100t.html]
}}
{{ DvbDeviceCommented
| device=[[Hauppauge]] [[Hauppauge DEC2540-T USB|DEC2540-T USB]] (DVB-T)
| type=USB1.1
| hw=DEC-specific
| comment=Similar to DEC2000-T but with Conax(?) decrypt card slot. Decryption is not supported under GNU/Linux. Only sold in the Netherlands.
}}
}}

=== [[TechniSat]]/[[B2C2]] Sky/Air/Cable2PC USB ([[Flexcop]]-based) (DVB-S/T/C / ATSC) ===

Most devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:
- stv0299.ko
- stv0297.ko
- mt352.ko
- mt312.ko
- nxt2002.ko
- bcm3510.ko
- b2c2-flexcop.ko
- b2c2-flexcop-usb.ko

These [[frontend|frontend(s)]]/[[demodulator|demodulator(s)]] can be found in various revisions of this device:
- [[STMicroelectronics STV0299]]
- [[STMicroelectronics STV0297]]
- [[Zarlink MT312]]
- [[Zarlink MT352]]
- [[NXT2002|NxtWave Nxt2002]]
- [[BCM3510|Broadcom BCM3510]]

{{DvbDeviceList
| content=
{{DvbDevice
| device=TechniSat/B2C2 SkyStar USB
| type=USB1.1
| pic=[http://www.technisat.de/?site=produkte/produkteview.php&kid=1,29&pid=1476]
}}
{{DvbDevice
| device=TechniSat/B2C2 SkyStar USB Plus
| type=USB2.0
| comment='''''Linux support unknown'''''
| pic=[http://www.technisat.de/?site=produkte/produkteview.php&kid=29,100&pid=1748&reload]
}}
{{DvbDeviceCommented
| device=TechniSat/B2C2 AirStar USB DVB-T
| type=USB1.1
| comment='''''Not supported?'''''
W3ird_N3rd says that "it is detected perfectly but it is not capable of locking onto any channel, 0 channels are found. My antenna is fine and the device does work on Windows, so somehow support for this device is broken. Don't buy it till it's fixed."
| pic=[http://www.technisat.de/de/produkte/produkteview.php?kid=1,29&pid=1477]
}}
{{DvbDevice
| device=TechniSat/B2C2 AirStar USB ATSC
| type=USB1.1
| fw=dvb-fe-bcm3510-01.fw
| hw=[[BCM3510|Broadcom BCM3510]]
| pic=[http://www.bbti.us/products_air2pc_atsc_usb.htm]
}}
{{DvbDeviceCommented
| device=TechniSat/B2C2 CableStar USB
| type=USB1.1
| comment=Discontinued
}}
}}

== Hybrid (DVB/Analogue) ==

Hybrid devices have a DVB-demodulator and a analogue capturing chip. Normally they share a tuner.

=== Medion MD95700 (DVB-T) ===

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:

- cx22702.ko
- dvb-usb.ko
- dvb-usb-cxusb.ko

The analogue part (handled by a Conexant CX25842) is not supported yet. The cx25840 driver from ivtv can be used to implement support.

{{DvbDeviceList
| content=
{{DvbDeviceCommented
| device=Medion MD 95700 4in1
| type=USB2.0
| hw=[[CX22702|Conexant CX22702]]
| comment=The box also has a X10 remote control. This is radio, not IR, and is supported by the atiremote driver. It also has a USB2.0 hub (Tetrahub) with one additional USB port. Both of them are working without mains power.
}}
}}

There is a new firmware, version 1.0.2.14, for the MD 95700 from Medion.
You can download it directly: [http://www1.medion.de/downloads/index.pl?op=detail&id=2804&type=treiber&lang=de] (in German). '''Please read the Readme''' before you flash the box.

This update fixes some video problems, but it is incompatible with the old dvb-usb drivers (i.e. kernels from 2005). If you use your box under Windows, don't forget to ensure that the Windows drivers are up to date too.

Suse 10.1 users might also want to see the distro-specific notes in the [[Medion MD95700 (DVB-T)]] article.

=== DViCO FusionHDTV USB ===

This class of usb devices is codenamed, Bluebird.

All devices below are fully supported by the LinuxTV driver. The following drivers are needed for these devices:

- lgdt330x.ko
- mt352.ko
- zl10353.ko
- dvb-usb.ko
- dvb-usb-cxusb.ko

These [[frontend|frontend(s)]]/[[demodulator|demodulator(s)]] can be found in various revisions of this device:
- [[LGDT3303|LG Electronics DT3303]]
- [[Zarlink MT352]]
- [[ZL10353|Zarlink ZL10353]]


{{DvbDeviceList
| content=
{{DvbDevice
| device=DViCO FusionHDTV 5 USB Gold
| type=USB2.0
| fw=dvb-usb-bluebird-01.fw
| pic=[http://www.fusionhdtv.co.kr/eng/Products/HDTV5usb.aspx]
}}
{{DvbDeviceCommented
| device=DViCO FusionHDTV USB DVB-T
| type=USB2.0
| fw=dvb-usb-bluebird-01.fw
| comment=There is a working Mac driver written by John Dalgliesh. http://www.defyne.org
| pic=[http://www.fusionhdtv.co.kr/eng/Products/DVBTUSB.aspx]
}}
{{DvbDevice
| device=DViCO FusionHDTV DVB-T Dual USB
| type=USB2.0
| fw=dvb-usb-bluebird-01.fw
| pic=[http://www.fusionhdtv.co.kr/ENG/Products/DualDigital.aspx]
}}
}}

== Work-In-Progress ==

=== [[Pinnacle PCTV 200e | Pinnacle PCTV 200e USB - DVB-T]] ===

This driver is in beta stage, soon available for testing. The following drivers are needed for these devices:
- dvb-usb.ko
- pctv200e.ko

The driver is almost written. There is a version that has started to work, which we hope to release for testing soon. If you want to help to test the driver, or you want to help to develop the driver, please consult the [[linux-dvb-ml|linux-dvb Mailing list]].

What we know:
- MT352-frontend (i2c addr: 0x3e)
- Microtune MT2060 tuner (i2c addr: 0xC0)
- has a pid filter
- no firmware needed
- implements a I2CoverUSB bus
- USB protocol is invented by Pinnacle

{{DvbDeviceList
| content=
{{DvbDevice
| device=Pinnacle PCTV 200e USB - DVB-T
| type=USB2.0, USB1.1
| fw=(none)
| hw=[[Zarlink MT352]]
| pic=[http://www.pinnaclesys.com/ProductPage_n.asp?Product_ID=2657&Langue_ID=4]
}}
}}

=== Pinnacle PCTV Dual DVB-T Diversity (PCTV 2000e USB) - DVB-T ===
( idVendor = 2304 idProduct = 022c )
=== Terratec Cinergy DT XS Diversity ===
( idVendor =0ccd idProduct = 005a )

=== Hauppage Nova-TD Stick ===
( idVendor =2040 idProduct = 9580 )


These three devices features two tuners, and have two antennas. You'll have adapter0 and adapter1 in /dev/dvb, which you can use separately. There is a driver at http://www.chez.com/treza/mt2266.htm.

It should work, but it can (will) be enhanced.

The issues remaining in the '''third release''' are :
* The diversity cross-feed between tuners is not handled.
* Some AGC settings may be wrong, so the quality may be lower than with windows.
* The behavior with VHF frequency channels is unknown.
* Maybe other things

So it is useable, at least on my computer, but I would not yet recommend anyone to buy it as a "Linux compatible" device.

As the cross-feed is not handled yet, you will probably NOT get better reception compared to other DVB-sticks, and you won't have any better reception during movement either.

=== [http://www.pinnaclesys.com/PublicSite/de/Products/Consumer%2BProducts/PCTV%2BTuners/PCTV%2BDigital%2BPVR%2B%28DVB-S_DVB-T%29/PCTV%2BSat%2BHDTV%2BPro%2BUSB.htm PCTV Sat HDTV Pro USB (PCTV452e)] ===

USB ID: 2304:021f

This driver is pre-Work-In-Progress. The following drivers are needed for these devices:
- stb0899.ko
- stb6100.ko
- lnbp22.ko
- dvb-usb.ko
- dvb-usb-pctv452e.ko

These [[frontend|frontend(s)]]/[[demodulator|demodulator(s)]] are found in this device:

- [http://www.st.com/stonline/products/literature/bd/10839.pdf stb6100]
- [http://www.st.com/stonline/products/literature/bd/11107.pdf stb0899]

This USB Controller is used:

- [http://www.keil.com/dd/docs/datashts/cypress/cy7c68xxx_ds.pdf#search=%22Cypress%2068013%22 CY7C68013]

What we know:
- uses parts/all of the ttusb-USB-protocol
- isochronous Data transfer (whole TS only)
- no firmware is needed (budget device)

== Unspecified/Unknown/Unsupported devices ==

If you own one or more devices from the following list and you want to help the development, please contact the [http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb linux-dvb Mailing list].

=== Afatech 9015 ===
http://www.afatech.com.tw/product/e_product_AF901x.htm

GeniaTech T328B DVB-T http://www.geniatech.com/pa/t328b.htm

Tvisto USB DVB-T http://www.t-visto.com/productos/tratamiento_video/tv_stick.htm

=== Anysee E30 (Plus) DVB-T USB2 ===

The design of DVB-T E30 seems to be similar to the Twinhan Alpha Stick (same Tuner and Demod), but it doesn't work with the alpha-driver (vp7045) and firmware. Possibly some help from the new Opera DVB-S1 support, which also uses a Cypress CY7C68013 chip for USB microcontroller ([http://bttv-gallery.de/]) (just an idea)? dvb-usb-vp7045 reported to load at [http://www.linuxtv.org/pipermail/linux-dvb/2005-September/004592.html] (an old message).

Note: It has been reported that [http://anysee.com/ Anysee] has not been willing to help open source developers to write a Linux driver by handing out specifications. Any further information on communication with Anysee would be welcome.

=== Anysee E30 Plus DVB-C USB2 ===

Looks like support for DVB-C version should be added to cxusb, since from the photos it looks like Conexant USB 2.0 reference design (source: IRC logs). Has two firmware files, anyseeAUDB.ROM and anyseeAUDC.ROM, which are needed for analog video (cx2584x/MAKO) only.

The device hardware might be similar to those supported by dvb-usb-cxusb, but the firmware API is different.

=== DVBWorld DVB-S 2102 USB2 Box ===
DVBWorld DVB-S 2102 USB2.0 (USB ID 04B4:2102) [http://www.worlddvb.com/product/htm/usbs.htm] contains:
*Cypress CY7C68013 USB chip
*Sharp BS2F7VZ0194A tuner with integrated STV0299B

DVBWorld DVB-S 2102 USB2.0 have clones:
*[[Acorp DS120]] (USB ID 04B4:2102) [http://www.acorp.ru/products/multimedia/satellite/ds120/]
*Nextorm NBS240 [http://nextormdigital.com/products/NBS240.htm]
*SatStar2 USB2.0 Box [http://www.satstar2.com/product/details.asp?p_id=6]
[http://www.dmsiusa.com/usb_box.htm]

=== LifeView TV Walker DVB-T (P/Q/Hybrid) ===

P Stick

* Now it doesn't exist in the Lifeview's page, not in discontinued products and not in External TV solutions, only a P Plus but i supuose that is different like the Q (now unsupported) and the Q PLus in External TV solutions. ¿Somebody can confirm this and also put info about the new product of lifeview if they're different?

Q Stick [http://www.lifeview.com.tw/html/products/discontinued_products/q_dvbt.htm]

* USB 2.0 stick. USB ID: idVendor 0x10fd Anubis Electronics, Ltd : idProduct Unknown anyone can post it?

* Chips visible on card:
** Frontend: TDA10046A OFDM channel demodulator
** Tuner: [http://www.semiconductors.philips.com/acrobat_download/literature/9397/75014128.pdf TDA8275A]Silicon Tuner

There is a DVB-T-only box: [http://www.lifeview.com.tw/html/products/external_tv/tv_walker_dvbt.htm] I'm not able to find it in the discontinued products and correct the url to a new working one.

There is a DVB-T/Analogue box (with external power): [http://www.lifeview.com.tw/html/products/discontinued_products/tv_walker_studio_hybrid.htm]

Other dvb-t usb cards same as lifeview ones but different brand:

*Zaapa USB DVB-T Model: LR523 - (I can't find the lr523 in their web page) This one seems to be exactly the same LifeView TV Walker DVB-T Q LR506, lsusb also reveals (idVendor 0x10fd Anubis Electronics, Ltd) and the idProduct is 0x0513 I don't know if is the same id product that the LifeViews Q stick but is the same that the [[DVB_USB#LifeView_TV_Walker_Twin|Lifeview TV Walker Twin]] (this make an issue triying to make it work because the Walker Twin is different, the last two paragrafhs of this point explain this issue), anyone can post here the idProduct of lifeview's (if it's the same the issue of this stick will also apply to the Lifeview Q stick). I say this based on http://www.bandaancha.st/foros.php?temid=592815#633106 the post #44 says that in spanish, and also tell windows users with problems in channels reception, to use the driver and also the aplication from lifeview for the lr506, and seems that most of the users have their problems solved.

: In a kernel-2.6.22-gentoo-r1 with the firmware supplied by the ebuild linuxtv-dvb-firmware and DVB_CARD="tda10046lifeview" only, the usb is detected as a TV Walker Twin insted of a TV Walker DVB-T Q LR506 and the result is to fail triying to load the wrong firmware. This was with a similar to Q LR506 zaapa LR523 and also with the tda1004x module also in use by a saa7134_dvb, don't know if this can cause problems when i could load the correct firmware.

: Somebody can make mechanism to detect this card as is and not as a TV Walker Twin? This is caused by a similar vendor and product ids.

*In the zaapa web page I found one the ZT- LR 506Q http://www.zaapa.co.uk/Public/ficha_producto.asp?CPRO=636 this one have also the same name that the lifeview ones, the image of this tunner is the same that the zaapa LR523 except that the 523 have the anthena connector oposite to the usb side.

=== Pinnacle PCTV HD Pro Stick===
* USB2 stick. USB ID: 2304:0227.
* Device identifies itself as a "PCTV 800e".
* The USB stick consists of two boards: one with the USB and A/V connectors, the other with the RF connector. The two boards are joined(soldered) together with two 7 pin headers, one on each side of the board. I( [[User:Emeitner]] )am unwilling to unsolder the pins and risk damaging the
device, so whatever is inside the "sandwich" is still unknown.
* Chips visible on card:
** Frontend: lgdt3303
** Tuner: xc3028ACQ
** There is also a CPLD: lc4032v

[http://www.pinnaclesys.com/PublicSite/us/Products/Consumer+Products/PCTV+Tuners/PCTV+Analog_Digital+PVR/PCTV+HD+Pro+Stick Manufacurers product page]

=== Turbosight (TBS) [[USB DVB-S Q-box]] ===
USB ID is: VID:0x734C, PID:0x2601.

Chips:
*Cypress FX2 (CY7C68013A)
Tuner:
*Samsung with integrated STV0299 fronend and STB6000 pll
[http://www.turbosight.com/english/products/product.htm]

=== Tongshi DVB-S/C/T USB ===

Is this just a reference design?

[http://www.tongshi.com/cp_dvb_e.htm]

=== [http://www.twinhan.com/product_terrestrial_7049.asp TwinhanDTV Twister (7049) DVB-T] ===

In germany a similar device seems to be sold as dnt EuroMini200 [http://www.dnt.de/index.php?dir=produkte/detail&id=20206].

We tried to get information about the usb interface at Twinhan, but there was none avaiable. The chip vendor Uli [http://www.uli.com.tw/] refuses to open all relevant information.

Maybe the same applies for the TwinhanDTV Hurricne (704D) [http://www.twinhan.com/product_704D.asp].

=== [http://www.twinhan.com/product_D%2BA_3.asp TwinhanDTV MagicBox Pro (DVB-T/Analogue)] ===

A [[hybrid]] USB2.0 box based on the [http://www.uli.com.tw/product_dm/m9207dm_web.pdf ULI M9207] chipset. Also based on this chipset is the Pinnacle [http://www.pinnaclesys.com/PublicSite/uk/Products/Consumer+Products/PCTV+Tuners/PCTV+Analog_Digital+PVR/PCTV+310e PCTV 310e] and [http://www.nurido.at/news/computer/testgericomtvtunerusb20beihofer.html Gericom USB 2.0 Hybrid Box] sold by Aldi (Germany) and Hofer (Austria).

=== VBox DVB-S USB1.1 ===

Search the archive of the linux-dvb-mailing. A developer of VBox once mentioned that they have a Linux-driver. Maybe they are willing to provide information for a OpenSource-driver.


[http://www.vboxcomm.com/product1.htm#5]


== lsusb -t ==
=== WideView DVB-T/CATV USB2.0 Hybrid ===


=== Wrong ===
[http://www.wv.com.tw/]
With this setup you will have bandwidth problems with no appropriate warning whatsoever on any log file. Except that video will look horrible.
<pre>
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ohci_hcd/8p, 12M <-- USB1.1, slow, don't us
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/8p, 480M <-- one bus
|__ Port 2: Dev 2, If 0, Class=vend., Driver=dvb_usb_ttusb2, 480M <-- 1st DVB device, shares bandwidth
|__ Port 4: Dev 2, If 0, Class=vend., Driver=dvb_usb_ttusb2, 480M <-- 2nd DVB device, shares bandwidth
</pre>


=== YUAN UB701 (DVB-T/Analogue) ===
=== OK ===
You can solve the above situation by adding a PCI-Express to USB3.0 card:
<pre>
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M <-- one bus
|__ Port 2: Dev 2, If 0, Class=vend., Driver=dvb_usb_ttusb2, 480M <-- one DVB device
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ohci_hcd/8p, 12M <-- USB1.1, slow, don't use
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/8p, 480M <-- one bus
|__ Port 4: Dev 2, If 0, Class=vend., Driver=dvb_usb_ttusb2, 480M <-- one DVB device
</pre>


'''''Rule''': One device per bus''
A [[hybrid]] USB2.0-only box. Maybe it is a clone of the Conexant Hybrid Reference design?
It has an em2880 and a xc3028 tuner. USB id eb1a:2881
[http://www.yuan.com.tw/en/products/vdo_ub701.html]




[[Category:DVB-T|!USB devices DVB-T]]
[[Category:Hardware| ]]
[[Category:Hardware|!USB devices DVB-T]]

Latest revision as of 10:13, 3 December 2012

For information about supported USB devices, see the appropriate device category:


Introduction

For all DVB USB devices you will need to load (if not compiled into the kernel):

  • i2c-core
  • crc32
  • firmware_class
  • dvb-core.ko
  • dvb-pll.ko

and maybe others too. If the loading fails for any particular module you'll get a "unknown symbol" message. Then have a look at dmesg to find out, which symbols (functions) are missing. After you've found out which module was absent, please come back here and add it to the list/device-entry.

The Type field specifies the USB standard(s) supported by the device.

USB1.1
The device supports USB 1.1 only, and will work at 1.1 speeds when attached to a USB 2.0 port.
USB2.0
The device supports USB 2.0 only, and will not work when attached to a USB 1.1-only port. Such devices are normally capable of delivering the complete Transport Stream to the software demuxer.
USB2.0, USB1.1
The device supports USB 1.1 and USB 2.0, and will work at any speed supported by 1.1 or 2.0. When running in USB 2.0 mode, such devices can deliver the complete Transport Stream (unless specified otherwise).

Firmware

Most of the USB devices need firmware to run. Some of the firmware files can be downloaded from here.

You need to copy the firmware to the correct place on your system. This will normally be /lib/firmware or a folder below it. Here is an example:

- $ cd /lib/firmware
- $ ls
- 2.6.15-23-amd64-xeon
- $ cd 2.6.15-23-amd64-xeon
- $ sudo cp ~/dvb-usb-umt-010-02.fw .

Now, you need to unplug your USB device. Plug it in again, and then take a look at dmesg.

- $ dmesg
- < ...... lines cut for clarity ..... >
- usb 5-2: USB disconnect, address 3
- usb 5-2: new high speed USB device using ehci_hcd and address 8
- dvb-usb: found a 'Hanftek UMT-010 DVB-T USB2.0' in cold state, will try to load a firmware
- dvb-usb: downloading firmware from file 'dvb-usb-umt-010-02.fw' to the 'Cypress FX2'
- dvb-usb: Hanftek UMT-010 DVB-T USB2.0 successfully initialized and connected.
- usb 5-2: USB disconnect, address 8
- dvb-usb: generic DVB-USB module successfully deinitialized and disconnected.

In this case, I have success, because the firmware was loaded.

Remember that on some system the firmware is loaded by udev, so if for some reason the firmware is not loaded you may check that udev is acutally running. To check you could for example issue the command:

- $ ps -e | grep udev

If the output is empty, then you have to restart the udev daemon. For example in a Debian based system you may try with:

- $ sudo /etc/init.d/udev restart

then try again, removing and inserting the module again with modprobe.

Additional Technical Information

This section starts describing devices which hit the market beginning of spring 2004. It does not cover TTUSB-based devices.

Host Controlled DVB USB Devices

When first AC-Adapter-free USB devices (with the capability of receiving DVB Signals) hit the market, every vendor was using the generic USB-device-controller from Cypress (FX1 (AN2135/AN2235), FX2) as an interface between the DVB-hardware and the host.

As those controllers are very generic, one has to create (and download) an (small or not so small) embedded software to those controller to give vendor-specific and the wanted functionality. After downloading the so-called firmware vendors used the reboot-feature of the controller to re-enumerate with new USB Vendor/Product-IDs and a new USB-layout. On the host this looks like a normal disconnect and connect of an USB device.

Because the memory for storing the firmware was limited, vendors decided not to put any DVB-demodulator and RF-tuner specific code into the firmware, but only to implement interface functionality. At that time, the common way to control other components was I²C. The other necessary feature was data-streaming. With such a firmware, every functionality is done from the host - mainly the driving of the demodulator and the tuner.

Host-controlled devices are the ones based on DiBcom (dibusb, dib0700), Nebula (DigiTV), Hanftek and others. (see below)

Firmware Controlled DVB USB Devices

Another approach was coming later: When it started, that putting more memory on a board/into an IC with almost no increase of the BOM. Vendors started to put the demodulator and tuner-driver into the firmware. This was simplifying the host-part dramatically, because if you have a new hardware, you just need to modify the (platform-independent) firmware part and, as long as the firmware-interface is not changing, the host-driver stays the same.

Firmware-controlled devices: Twinhan VP7045/VP7021, Terratec Cinergy T2, Wideview and others.

To be continued ...


lsusb -t

Wrong

With this setup you will have bandwidth problems with no appropriate warning whatsoever on any log file. Except that video will look horrible.

/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ohci_hcd/8p, 12M     <-- USB1.1,  slow, don't us
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/8p, 480M    <-- one bus
    |__ Port 2: Dev 2, If 0, Class=vend., Driver=dvb_usb_ttusb2, 480M <--  1st DVB device, shares bandwidth
    |__ Port 4: Dev 2, If 0, Class=vend., Driver=dvb_usb_ttusb2, 480M <--  2nd DVB device, shares bandwidth

OK

You can solve the above situation by adding a PCI-Express to USB3.0 card:

/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M    <-- one bus
    |__ Port 2: Dev 2, If 0, Class=vend., Driver=dvb_usb_ttusb2, 480M <--  one DVB device
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ohci_hcd/8p, 12M     <-- USB1.1,  slow, don't use
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/8p, 480M    <-- one bus
    |__ Port 4: Dev 2, If 0, Class=vend., Driver=dvb_usb_ttusb2, 480M <--  one DVB device

Rule: One device per bus