Difference between revisions of "E3C EC168"

From LinuxTVWiki
Jump to: navigation, search
(Known USB requests)
m (Genius TVGo DVB-T02Q MCE)
 
(74 intermediate revisions by 12 users not shown)
Line 1: Line 1:
The E3C EC168 is used in many cheap DVB-T Sticks.
+
An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by [[Tai-Hui]] and marketed under the brand name e3C Technologies.  
It is currently unsupported under Linux.
+
  
==DVB-T Devices==
+
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. Support is currently very experimental under Linux. (Only the combination with MXL5003S will work and only with 7 and 8 MHz channels.)
  
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (second tuner).
+
==EC168 Devices==
* SinoVideo 3420A-2 DVB-T USB TV stick with [[MXL5003S]] tuner S/N:SV07113420A01555 18b4:1689
+
* SKU 08309  USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.
+
* GRTNTUSBV4  USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.
+
* DUTV002    Shen Zhen MinTV-DVB-T Stick 18b4:1001
+
* ZAP DVB-T USB stick
+
* MM002V2    Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689
+
*            Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa
+
+
  
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :
+
{{Note| The list of devices here is quite a mess. Mostly because cheap EC168 devices are sold under a bazillion different pseudo brands and generic names. That makes it hard to trace the original manufacturer. So if you know any better please correct the manufacturer/oem information on this page.
[    8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2
+
[    8.844654] usb 3-2: configuration #1 chosen from 1 choice
+
[    8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001
+
[    8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
+
[    8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5
+
[    8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2
+
  
===SinoVideo 3420A-2===
+
* If you own such a device please check the pictures below to see if your device is already here.
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]
+
** If it is then please add the brand and device name you bought it as.  
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]
+
** If your device is not yet here please open it up and see whats inside. (Sometimes the plasic case can differ but the innards are just the same.)
  
===SKU 08309 USB DVB-T Dongle===
+
And please, if your device or its PCB differ from the ones that are here, please take some pictures and add them.
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]
+
}}
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)
+
 
 +
Known USB IDs are:
 +
18b4:1689
 +
18b4:fffa
 +
18b4:fffb
 +
18b4:1001
 +
18b4:1002 (for devices with a second tuner).
 +
0458:400f
 +
 
 +
=== Misc. Devices ===
 +
 
 +
If you own one of these devices, please add the missing information and make a subsection for them, or add them to the appropriate device subsection.
 +
 
 +
* [[TVISTO_DVB-T_USB|Tvisto USB DVB-T]] with [[MXL5003S]] tuner (USB ID 18b4:fffa)
 +
 
 +
 
 +
===DUTV002 MinTV-DVB-T Stick===
 +
 
 +
USB ID: 18b4:1001
 +
 
 +
Tuner: [[Microtune MT2060]]
 +
 
 +
Sold as
 +
* "MinTV-DVB-T Stick" by Shenzhen ForwardVideo.Co.,Ltd. [http://cathyvideo.en.ec21.com/product_detail.jsp?group_id=GC01773338&product_id=CA01773364&product_nm=MinTV-DVB-T_Stick_]
 +
* EzTV DUTV007 by [http://www.szforwardvideo.com/product/Pro_9_7.html ForwardVideo] (please note that it is DUTV007 not DUTV007A or DUTV007B)
 +
* DUTV002 [http://www.zenithdubai.com/DUTV002.html]
 +
* DigiTV 10263 by [http://www.agknordic.com/new/index.php?side_id=217 AGK Nordic]
 +
 
 +
Linux owner
 +
* Marco Rossini [http://www.qbik.ch/usb/devices/showdev.php?id=4355]
 +
 
 +
 
 +
===DUTV007A USB DVB-T Receiver===
 +
 
 +
USB ID: 18b4:1689
 +
 
 +
Tuner: [[MXL5003S]]
 +
 
 +
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]
 +
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]
 +
 
 +
[Update 2014/04/22]
 +
Driver is in kernel now.
 +
 
 +
Sold as:
 +
* "WandTV USB DVB-T TV Tuner with Remote" SKU 8325 by [http://www.dealextreme.com/details.dx/sku.8325 Dealextreme]
 +
* EzTV DUTV007A by [http://www.szforwardvideo.com/product/Pro_4_7.html ForwardVideo]
 +
 
 +
<gallery>
 +
Image:WandTV_DUTV007A_case_top.jpg
 +
</gallery>
 +
 
 +
 
 +
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===
 +
<span id="GRTNTUSBV4_USB_TNT_Basic_LIGHT"></span>
 +
 
 +
USB ID: 18b4:1001
 +
 
 +
[[lsusb -v -d 18b4:1001]]
 +
 
 +
Tuner: [[MXL5003S]]
 +
 
 +
'''Works''' with the official 2.6.35 experimental module (see [http://tanguy.wdscript.fr/EC168 HOWTO on Ubuntu 10.10])
 +
 
 +
Sold as
 +
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics)
  
===GRTNTUSBV4 USB TNT Basic LIGHT===
 
 
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)
 
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)
  
 
The PC-Basic v4 USB Stick contains following chips :
 
The PC-Basic v4 USB Stick contains following chips :
* EC168 (USB 2.0 µ-controller)
+
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)
 
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]
 
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]
* EEPROM 24C02 I²C (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]
+
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]
  
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...
+
The windows driver also upload the 7109-bytes sized firmware (EC168BDA.bin) to get the device working...
  
From "Graphics" french web site [http://www.graphics-france.com/index.php?option=com_content&task=view&id=146&Itemid=758] the driver references another chips : the [[Intel]] [[CE6230]]/9500 (VID_8086&PID_9500)
+
<gallery>
 +
Image:DUTV007B.JPG
 +
</gallery>
  
Maybe the next (5th) version (which has the same enclosure) but also named dutv005 [http://sites.google.com/site/moosyresearch/dutv005]
+
====Uploading Firmware to the device====
 +
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.wdscript.fr/EC168 dfu-ec168]
  
==Uploading Firmware to the device==
+
Use this tool to upload official firmware EC168BDA.bin (7109 bytes, md5: e168c9f00bcd2bb0121b777a51f32069)
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]
+
  
==Known USB requests==
+
Something interresting with this device : We can patch USB ID and descriptors included in the firmware and/or device memory...
 +
 
 +
====Known USB requests====
  
 
  #define CMD_EC168_RAM      0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)
 
  #define CMD_EC168_RAM      0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)
  #define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);
+
  #define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);
 +
                                  //        to know if firmware is ready
 
  #define CMD_EC168_STREAM    0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);
 
  #define CMD_EC168_STREAM    0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);
                                   //disable/enable streaming read_status: ? Ci:C003 0000 FF01 0001
+
                                   //       disable/enable streaming  
  #define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);
+
  #define CMD_EC168_SET_POWER 0x04 //R-X ex: ex: dfu_ctrl(device,0x04,0/1,index); dfu_ctrl_get(device,0x04,0,index,buffer,1);
                                   //   disable/enable LED //indexes seen: 206,208,8,9,A,B
+
                                   //       disable/enable LED : index=8
 +
                                  //       indexes seen in trace: 0x8,0x9,0xA,0xB,0x206,0x208 - Not a Binary Mask !
 
  #define CMD_EC168_UNKNOWN  0x10 //--X ???
 
  #define CMD_EC168_UNKNOWN  0x10 //--X ???
 
  #define CMD_EC168_READ_BUF  0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A);  
 
  #define CMD_EC168_READ_BUF  0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A);  
 +
                                  //        read eeprom ?
 
  #define CMD_EC168_WRITE_BUF 0x21 //-W-  
 
  #define CMD_EC168_WRITE_BUF 0x21 //-W-  
 
  #define CMD_EC168_SET      0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);
 
  #define CMD_EC168_SET      0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);
 +
                                  //        set IR Key ?
 +
 +
 +
===DUTV009===
 +
 +
USB ID: 18b4:1689
 +
 +
[[lsusb -v -d 18b4:1689]]
 +
 +
Tuner: [[Microtune MT2061F| Microtune 2060]]
 +
 +
Sold in mid 2009, together with DVB Viewer.
 +
The firmware is the same as in the Microtune MT2061F version.
 +
The device requires the firmware in the repository to work, not the bundled bin file.
 +
 +
 +
===DUTV009 SinoVideo 3420A-2===
 +
 +
USB ID: 18b4:1689/18b4:fffb (can anybody confirm that second USB ID ?)
 +
 +
[[lsusb -v -d 18b4:1689]]
 +
 +
Tuner: [[MXL5003S]]
 +
 +
[Update 2014/04/22]
 +
Driver is in kernel now.
 +
 +
Sold as:
 +
* SinoVideo 3420A-2
 +
* "EzTV DUTV009 USB DVB-T Receiver" by [http://www.szforwardvideo.com/product/Pro_5_7.html ForwardVideo]
 +
* "USB DVB-T TV Dongle with Remote SKU 8309" by [http://www.dealextreme.com/details.dx/sku.8309 DealExtreme]
 +
 +
The firmware file EC168BDA.bin is contained in the Windows driver directory.
 +
 +
External links:
 +
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]
 +
* [http://www.sinovideo.com.cn/en/lib/2009/03/08/173002393/ Manufacturer product page]
 +
* [http://www.szforwardvideo.com/product/Pro_5_7.html Reseller Product Page]
 +
 +
<gallery>
 +
Image:SV-3420A-top.JPG
 +
Image:DUTV009_PCB.jpg
 +
</gallery>
 +
 +
 +
===SinoVideo SV3420D===
 +
 +
USB ID: 18b4:1689
 +
 +
Tuner: [[MXL5003S]]
 +
 +
The PCB says ''SV3420D-V02''.
 +
 +
Apparently produced by SinoVideo and sold under lots of different names.
 +
 +
Sold as
 +
* SinoVideo 3420D [http://www.sinovideo.com.cn/en/lib/2009/03/11/162409936/ Product page]
 +
 +
External links:
 +
* [http://www.sinovideo.com.cn/en/ Manufacturer(?)]
 +
 +
As the windows driver CD is labeled ''SV3420A'' and timestamps are rather old, I suspect that the drivers didn't change since SV3420A. Equally the Linux driver should work for all revisions.
 +
Remote control part is recognized as HID device by the kernel.
 +
 +
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]
 +
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]
 +
 +
<gallery>
 +
Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg
 +
Image:Dvb-t-usb-sinovideo-sv3420d-v02-004.jpg
 +
Image:Dvb-t-usb-sinovideo-sv3420d-v02-009.JPG
 +
Image:Dvb-t-usb-sinovideo-sv3420d-v02-007.JPG
 +
</gallery>
 +
 +
 +
===Sweex MM002V2===
 +
 +
USB ID: 18b4:1689
 +
 +
Tuner: [[Microtune MT2060]]
 +
 +
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]
 +
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942] with Ubuntu 9.04 (linux 2.6.18-24). Firmware on the original CD didn't seem to work, but the firmware [http://palosaari.fi/linux/v4l-dvb/firmware/ec168/dvb-usb-ec168.fw on palosaari.fi] does work.
 +
 +
Note that under Windows, the red light on the usb stick lights up, under linux it stays dim all the time (but watching TV with mplayer is just fine)
 +
 +
 +
Sold as:
 +
* Sweex MM002V2
 +
 +
External links:
 +
* [http://www.sweex.com/en/assortiment/sound-vision/multimedia-devices/MM002V2 Sweex product page]
 +
 +
 +
===WS-DVBTM2 Tevion USB-DVB-T===
 +
 +
Cheap offer at Hofer (Aldi) in Austria. Has an EC168 and MXL5003s built in, which refers to the E3C reference design.
 +
Reffering to the link, the system only freezes after loading the dvb-usb-ec168.ko module under debian 5.0 unstable. All other modules load fine. Maybe other distros and/or hardware has better success.
 +
It's even impossible to load the firmware via dfu-ec168
 +
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]
 +
 +
 +
==="ZAP" USB DVB-T Receiver===
 +
 +
USB ID: 18b4:fffb
 +
 +
[[lsusb -v -d 18b4:fffb]]
 +
 +
Tuner: Microtune MT2061F ([[Microtune MT2060]] variant?)
 +
 +
Sold by TeknikMagasinet in Sweden since at least 2008, still sold 2013. There exists at least two versions of the hardware, with the same name and similar functionality and design. The product is sold with at least two sw bundles too (that may be related to the hw), older versions were sold with DVBViewer Windows software, newer with Blaze.
 +
 +
* ''Externally'' identical to the Sinovideo SV3420D above (except the "ZAP" branding). Internally, the PCB is different, the chips are different.
 +
(The PCB has the same main components, but is more heavily populated with resistors, etc. Picture is pending.)
 +
 +
The firmware file EC168BDA.bin (7109 bytes, MD5:ac4392d38f63cfbd81a97e32e55743aa is) is included with the windows driver, together with a 128-byte EEPROM.bin file.
 +
 +
<gallery>
 +
[[Image:Zap.jpg|thumb]]
 +
Image:Zap.jpg
 +
</gallery>
 +
 +
 +
===Genius TVGo DVB-T02Q MCE===
 +
 +
USB ID: 0458:400f
 +
 +
[[lsusb -v -d 0458:400f]]
 +
 +
Tuner: [[Microtune MT2060|MT2061F]]
 +
 +
Sold as:
 +
* "Genius TVGo DVB-T02PRO"
  
==Identification==
+
<gallery>
USB subsytem ID is: 18b4:1001
+
Image:Genius_-_TVGo_DVB-T02Q_MCE_case_front.jpg
+
Image:Genius_-_TVGo_DVB-T02Q_MCE_case_rear.jpg
output of 'lsusb -vv -d 18b4:1001':
+
Image:Genius_-_TVGo_DVB-T02Q_MCE_pcb_front.jpg
 +
Image:Genius_-_TVGo_DVB-T02Q_MCE_pcb_rear.jpg
 +
</gallery>
  
Device Descriptor:
+
==External Links==
  bLength                18
+
* [http://tanguy.wdscript.fr/EC168 HOWTO: Compile module on Ubuntu Maverick 10.10]
  bDescriptorType        1
+
* [http://www.e3ctech.com/index.html E3C tech product page]
  bcdUSB              2.00
+
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]
  bDeviceClass            0 (Defined at Interface level)
+
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]
  bDeviceSubClass        0
+
[[Category:Demodulator]]
  bDeviceProtocol        0
+
  bMaxPacketSize0        64
+
  idVendor          0x18b4
+
  idProduct          0x1001
+
  bcdDevice            0.02
+
  iManufacturer          0
+
  iProduct                0
+
  iSerial                0
+
  bNumConfigurations      1
+
  Configuration Descriptor:
+
    bLength                9
+
    bDescriptorType        2
+
    wTotalLength          50
+
    bNumInterfaces          2
+
    bConfigurationValue    1
+
    iConfiguration          0
+
    bmAttributes        0x80
+
      (Bus Powered)
+
    MaxPower              100mA
+
    Interface Descriptor:
+
      bLength                9
+
      bDescriptorType        4
+
      bInterfaceNumber        0
+
      bAlternateSetting      0
+
      bNumEndpoints          1
+
      bInterfaceClass        3 Human Interface Device
+
      bInterfaceSubClass      1 Boot Interface Subclass
+
      bInterfaceProtocol      1 Keyboard
+
      iInterface              0
+
        HID Device Descriptor:
+
          bLength                9
+
          bDescriptorType        33
+
          bcdHID              1.11
+
          bCountryCode            0 Not supported
+
          bNumDescriptors        1
+
          bDescriptorType        34 Report
+
          wDescriptorLength      63
+
        Report Descriptors:
+
          ** UNAVAILABLE **
+
      Endpoint Descriptor:
+
        bLength                7
+
        bDescriptorType        5
+
        bEndpointAddress    0x81  EP 1 IN
+
        bmAttributes            3
+
          Transfer Type            Interrupt
+
          Synch Type              None
+
          Usage Type              Data
+
        wMaxPacketSize    0x0008  1x 8 bytes
+
        bInterval              7
+
    Interface Descriptor:
+
      bLength                9
+
      bDescriptorType        4
+
      bInterfaceNumber        1
+
      bAlternateSetting      0
+
      bNumEndpoints          1
+
      bInterfaceClass      255 Vendor Specific Class
+
      bInterfaceSubClass    255 Vendor Specific Subclass
+
      bInterfaceProtocol    255 Vendor Specific Protocol
+
      iInterface              0
+
      Endpoint Descriptor:
+
        bLength                7
+
        bDescriptorType        5
+
        bEndpointAddress    0x82  EP 2 IN
+
        bmAttributes            2
+
          Transfer Type            Bulk
+
          Synch Type              None
+
          Usage Type              Data
+
        wMaxPacketSize    0x0200  1x 512 bytes
+
        bInterval              0
+
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:     0x0001
+
  Self Powered
+

Latest revision as of 10:47, 24 January 2016

An USB controller, that also contains an embedded DVB-T demodulator, produced by Tai-Hui and marketed under the brand name e3C Technologies.

This IC is used in many cheap DVB-T USB Sticks. Support is currently very experimental under Linux. (Only the combination with MXL5003S will work and only with 7 and 8 MHz channels.)

EC168 Devices

Note: The list of devices here is quite a mess. Mostly because cheap EC168 devices are sold under a bazillion different pseudo brands and generic names. That makes it hard to trace the original manufacturer. So if you know any better please correct the manufacturer/oem information on this page.
  • If you own such a device please check the pictures below to see if your device is already here.
    • If it is then please add the brand and device name you bought it as.
    • If your device is not yet here please open it up and see whats inside. (Sometimes the plasic case can differ but the innards are just the same.)

And please, if your device or its PCB differ from the ones that are here, please take some pictures and add them.

Known USB IDs are:

18b4:1689
18b4:fffa
18b4:fffb
18b4:1001
18b4:1002 (for devices with a second tuner).
0458:400f

Misc. Devices

If you own one of these devices, please add the missing information and make a subsection for them, or add them to the appropriate device subsection.


DUTV002 MinTV-DVB-T Stick

USB ID: 18b4:1001

Tuner: Microtune MT2060

Sold as

  • "MinTV-DVB-T Stick" by Shenzhen ForwardVideo.Co.,Ltd. [1]
  • EzTV DUTV007 by ForwardVideo (please note that it is DUTV007 not DUTV007A or DUTV007B)
  • DUTV002 [2]
  • DigiTV 10263 by AGK Nordic

Linux owner

  • Marco Rossini [3]


DUTV007A USB DVB-T Receiver

USB ID: 18b4:1689

Tuner: MXL5003S

Works with the driver from Antti's mercurial repository as described in [4]

[Update 2014/04/22] Driver is in kernel now.

Sold as:


DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)

USB ID: 18b4:1001

lsusb -v -d 18b4:1001

Tuner: MXL5003S

Works with the official 2.6.35 experimental module (see HOWTO on Ubuntu 10.10)

Sold as

  • DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics)

Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)

The PC-Basic v4 USB Stick contains following chips :

  • EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)
  • Maxlinear MXL5003S Tuner [5]
  • EEPROM 24C02N I²C 0xA0 (256 Bytes) [6]

The windows driver also upload the 7109-bytes sized firmware (EC168BDA.bin) to get the device working...

Uploading Firmware to the device

  • EC168 Direct Firmware Upload tool based on libusb by Tanguy Pruvot : dfu-ec168

Use this tool to upload official firmware EC168BDA.bin (7109 bytes, md5: e168c9f00bcd2bb0121b777a51f32069)

Something interresting with this device : We can patch USB ID and descriptors included in the firmware and/or device memory...

Known USB requests

#define CMD_EC168_RAM       0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);
                                 //        to know if firmware is ready
#define CMD_EC168_STREAM    0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);
                                 //        disable/enable streaming 
#define CMD_EC168_SET_POWER 0x04 //R-X ex: ex: dfu_ctrl(device,0x04,0/1,index); dfu_ctrl_get(device,0x04,0,index,buffer,1);
                                 //        disable/enable LED : index=8
                                 //        indexes seen in trace: 0x8,0x9,0xA,0xB,0x206,0x208 - Not a Binary Mask !
#define CMD_EC168_UNKNOWN   0x10 //--X ???
#define CMD_EC168_READ_BUF  0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); 
                                 //        read eeprom ?
#define CMD_EC168_WRITE_BUF 0x21 //-W- 
#define CMD_EC168_SET       0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);
                                 //        set IR Key ?


DUTV009

USB ID: 18b4:1689

lsusb -v -d 18b4:1689

Tuner: Microtune 2060

Sold in mid 2009, together with DVB Viewer. The firmware is the same as in the Microtune MT2061F version. The device requires the firmware in the repository to work, not the bundled bin file.


DUTV009 SinoVideo 3420A-2

USB ID: 18b4:1689/18b4:fffb (can anybody confirm that second USB ID ?)

lsusb -v -d 18b4:1689

Tuner: MXL5003S

[Update 2014/04/22] Driver is in kernel now.

Sold as:

  • SinoVideo 3420A-2
  • "EzTV DUTV009 USB DVB-T Receiver" by ForwardVideo
  • "USB DVB-T TV Dongle with Remote SKU 8309" by DealExtreme

The firmware file EC168BDA.bin is contained in the Windows driver directory.

External links:


SinoVideo SV3420D

USB ID: 18b4:1689

Tuner: MXL5003S

The PCB says SV3420D-V02.

Apparently produced by SinoVideo and sold under lots of different names.

Sold as

External links:

As the windows driver CD is labeled SV3420A and timestamps are rather old, I suspect that the drivers didn't change since SV3420A. Equally the Linux driver should work for all revisions. Remote control part is recognized as HID device by the kernel.

Works with the driver from Antti's mercurial repository as described in [7]


Sweex MM002V2

USB ID: 18b4:1689

Tuner: Microtune MT2060

Works with the driver from Antti's mercurial repository as described in [8] with Ubuntu 9.04 (linux 2.6.18-24). Firmware on the original CD didn't seem to work, but the firmware on palosaari.fi does work.

Note that under Windows, the red light on the usb stick lights up, under linux it stays dim all the time (but watching TV with mplayer is just fine)


Sold as:

  • Sweex MM002V2

External links:


WS-DVBTM2 Tevion USB-DVB-T

Cheap offer at Hofer (Aldi) in Austria. Has an EC168 and MXL5003s built in, which refers to the E3C reference design. Reffering to the link, the system only freezes after loading the dvb-usb-ec168.ko module under debian 5.0 unstable. All other modules load fine. Maybe other distros and/or hardware has better success. It's even impossible to load the firmware via dfu-ec168


"ZAP" USB DVB-T Receiver

USB ID: 18b4:fffb

lsusb -v -d 18b4:fffb

Tuner: Microtune MT2061F (Microtune MT2060 variant?)

Sold by TeknikMagasinet in Sweden since at least 2008, still sold 2013. There exists at least two versions of the hardware, with the same name and similar functionality and design. The product is sold with at least two sw bundles too (that may be related to the hw), older versions were sold with DVBViewer Windows software, newer with Blaze.

  • Externally identical to the Sinovideo SV3420D above (except the "ZAP" branding). Internally, the PCB is different, the chips are different.

(The PCB has the same main components, but is more heavily populated with resistors, etc. Picture is pending.)

The firmware file EC168BDA.bin (7109 bytes, MD5:ac4392d38f63cfbd81a97e32e55743aa is) is included with the windows driver, together with a 128-byte EEPROM.bin file.


Genius TVGo DVB-T02Q MCE

USB ID: 0458:400f

lsusb -v -d 0458:400f

Tuner: MT2061F

Sold as:

  • "Genius TVGo DVB-T02PRO"

External Links