https://www.linuxtv.org/wiki/api.php?action=feedcontributions&user=Tpruvot&feedformat=atom
LinuxTVWiki - User contributions [en]
2024-03-19T13:22:59Z
User contributions
MediaWiki 1.39.6
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=28266
E3C EC168
2010-12-04T06:17:48Z
<p>Tpruvot: /* DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4) */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by [[Tai-Hui]] and marketed under the brand name e3C Technologies. <br />
<br />
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.)<br />
<br />
==EC168 Devices==<br />
<br />
{{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.<br />
<br />
* If you own such a device please check the pictures below to see if your device is already here. <br />
** If it is then please add the brand and device name you bought it as. <br />
** 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.) <br />
<br />
And please, if your device or its PCB differ from the ones that are here, please take some pictures and add them.<br />
}}<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
<br />
=== Misc. Devices ===<br />
<br />
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.<br />
<br />
* [[TVISTO_DVB-T_USB|Tvisto USB DVB-T]] with [[MXL5003S]] tuner (USB ID 18b4:fffa) <br />
* ZAP DVB-T USB stick with [[MXL5003S]] tuner (USB ID 18b4:1689)<br />
<br />
===DUTV007A USB DVB-T Receiver===<br />
<br />
Picture: [https://www.dealextreme.com/productimages/sku_8325_6.jpg]<br />
<br />
USB ID: 18b4:1689<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]<br />
<br />
Sold as:<br />
* "WandTV USB DVB-T TV Tuner with Remote" SKU 8325 by [http://www.dealextreme.com/details.dx/sku.8325 Dealextreme]<br />
* EzTV DUTV007A by [http://www.szforwardvideo.com/product/Pro_4_7.html ForwardVideo]<br />
<br />
<br />
===DUTV002 MinTV-DVB-T Stick===<br />
<br />
USB ID: 18b4:1001<br />
<br />
Tuner: [[Microtune MT2060]]<br />
<br />
Sold as <br />
* "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_]<br />
* EzTV DUTV007 by [http://www.szforwardvideo.com/product/Pro_9_7.html ForwardVideo] (please note that it is DUTV007 not DUTV007A or DUTV007B)<br />
* DUTV002 [http://www.zenithdubai.com/DUTV002.html]<br />
* DigiTV 10263 by [http://www.agknordic.com/new/index.php?side_id=217 AGK Nordic]<br />
<br />
Linux owner<br />
* Marco Rossini [http://www.qbik.ch/usb/devices/showdev.php?id=4355]<br />
<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:SV-3420A-top.JPG|thumb]]<br />
<br />
USB ID: 18b4:1689/18b4:fffb (can anybody confirm that second USB ID ?)<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Sold as:<br />
* SinoVideo 3420A-2 <br />
* "EzTV DUTV009 USB DVB-T Receiver" by [http://www.szforwardvideo.com/product/Pro_5_7.html ForwardVideo]<br />
* "USB DVB-T TV Dongle with Remote SKU 8309" by [http://www.dealextreme.com/details.dx/sku.8309 DealExtreme]<br />
<br />
The firmware file EC168BDA.bin is contained in the Windows driver directory.<br />
<br />
External links:<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.sinovideo.com.cn/en/lib/2009/03/08/173002393/ Manufacturer product page]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Reseller Product Page]<br />
<br />
<gallery><br />
Image:SV-3420A-top.JPG<br />
Image:DUTV009_PCB.jpg<br />
</gallery><br />
<br />
<br />
===SinoVideo SV3420D===<br />
[[Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg|thumb]]<br />
<br />
USB ID: 18b4:1689<br />
Tuner: [[MXL5003S]]<br />
<br />
The PCB says ''SV3420D-V02''.<br />
<br />
Apparently produced by SinoVideo and sold under lots of different names.<br />
<br />
Sold as<br />
* SinoVideo 3420D [http://www.sinovideo.com.cn/en/lib/2009/03/11/162409936/ Product page]<br />
<br />
External links:<br />
* [http://www.sinovideo.com.cn/en/ Manufacturer(?)]<br />
<br />
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.<br />
Remote control part is recognized as HID device by the kernel.<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]<br />
<br />
<gallery><br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-004.jpg<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-009.JPG<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-007.JPG<br />
</gallery><br />
<br />
<br />
===Sweex MM002V2===<br />
<br />
USB ID: 18b4:1689<br />
<br />
Tuner: [[Microtune MT2060]]<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
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.<br />
<br />
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) <br />
<br />
<br />
Sold as:<br />
* Sweex MM002V2<br />
<br />
External links:<br />
* [http://www.sweex.com/en/assortiment/sound-vision/multimedia-devices/MM002V2 Sweex product page]<br />
<br />
===WS-DVBTM2 Tevion USB-DVB-T===<br />
<br />
Cheap offer at Hofer (Aldi) in Austria. Has an EC168 and MXL5003s built in, which refers to the E3C reference design.<br />
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.<br />
It's even impossible to load the firmware via dfu-ec168<br />
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<span id="GRTNTUSBV4_USB_TNT_Basic_LIGHT"></span><br />
[[Image:DUTV007B.JPG|thumb]]<br />
<br />
USB ID: 18b4:1001<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
'''Works''' with the official 2.6.35 experimental module (see [http://tanguy.wdscript.fr/EC168 HOWTO on Ubuntu 10.10])<br />
<br />
Sold as <br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics)<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload the 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
====Uploading Firmware to the device====<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.wdscript.fr/EC168 dfu-ec168]<br />
<br />
Use this tool to upload official firmware EC168BDA.bin (7109 bytes, md5: e168c9f00bcd2bb0121b777a51f32069)<br />
<br />
Something interresting with this device : We can patch USB ID and descriptors included in the firmware and/or device memory...<br />
<br />
====Known USB requests====<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);<br />
// to know if firmware is ready<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#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);<br />
// disable/enable LED : index=8<br />
// indexes seen in trace: 0x8,0x9,0xA,0xB,0x206,0x208 - Not a Binary Mask !<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
// read eeprom ?<br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
// set IR Key ?<br />
<br />
====Identification====<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
==="ZAP" USB DVB-T Receiver===<br />
[[Image:Zap.jpg|thumb]]<br />
* ''Externally'' identical to the Sinovideo SV3420D above (except the "ZAP" branding). Internally, the PCB is different, the chips are different. <br />
(The PCB has the same main components, but is more heavily populated with resistors, etc. Picture is pending.)<br />
<br />
Device ID: 18b4:fffb<br />
Tuner: Microtune MT2061F ([[Microtune MT2060]] variant?)<br />
<br />
The firmware file EC168BDA.bin (7109 bytes, MD5:ac4392d38f63cfbd81a97e32e55743aais) is included with the windows driver, together with a 128-byte EEPROM.bin file. <br />
<br />
output of 'lsusb -vv -d 18b4:fffb':<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0 <br />
bDeviceProtocol 0 <br />
bMaxPacketSize0 64<br />
idVendor 0x18b4 <br />
idProduct 0xfffb <br />
bcdDevice 0.01<br />
iManufacturer 0 <br />
iProduct 0 <br />
iSerial 0 <br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0 <br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0 <br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors: <br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0 <br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
can't get device qualifier: Operation not permitted<br />
can't get debug descriptor: Operation not permitted<br />
cannot read device status, Operation not permitted (1)<br />
<br />
==External Links==<br />
* [http://tanguy.wdscript.fr/EC168 HOWTO: Compile module on Ubuntu Maverick 10.10]<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]<br />
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]<br />
[[Category:Demodulator]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=28265
E3C EC168
2010-12-04T06:16:59Z
<p>Tpruvot: /* Uploading Firmware to the device */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by [[Tai-Hui]] and marketed under the brand name e3C Technologies. <br />
<br />
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.)<br />
<br />
==EC168 Devices==<br />
<br />
{{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.<br />
<br />
* If you own such a device please check the pictures below to see if your device is already here. <br />
** If it is then please add the brand and device name you bought it as. <br />
** 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.) <br />
<br />
And please, if your device or its PCB differ from the ones that are here, please take some pictures and add them.<br />
}}<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
<br />
=== Misc. Devices ===<br />
<br />
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.<br />
<br />
* [[TVISTO_DVB-T_USB|Tvisto USB DVB-T]] with [[MXL5003S]] tuner (USB ID 18b4:fffa) <br />
* ZAP DVB-T USB stick with [[MXL5003S]] tuner (USB ID 18b4:1689)<br />
<br />
===DUTV007A USB DVB-T Receiver===<br />
<br />
Picture: [https://www.dealextreme.com/productimages/sku_8325_6.jpg]<br />
<br />
USB ID: 18b4:1689<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]<br />
<br />
Sold as:<br />
* "WandTV USB DVB-T TV Tuner with Remote" SKU 8325 by [http://www.dealextreme.com/details.dx/sku.8325 Dealextreme]<br />
* EzTV DUTV007A by [http://www.szforwardvideo.com/product/Pro_4_7.html ForwardVideo]<br />
<br />
<br />
===DUTV002 MinTV-DVB-T Stick===<br />
<br />
USB ID: 18b4:1001<br />
<br />
Tuner: [[Microtune MT2060]]<br />
<br />
Sold as <br />
* "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_]<br />
* EzTV DUTV007 by [http://www.szforwardvideo.com/product/Pro_9_7.html ForwardVideo] (please note that it is DUTV007 not DUTV007A or DUTV007B)<br />
* DUTV002 [http://www.zenithdubai.com/DUTV002.html]<br />
* DigiTV 10263 by [http://www.agknordic.com/new/index.php?side_id=217 AGK Nordic]<br />
<br />
Linux owner<br />
* Marco Rossini [http://www.qbik.ch/usb/devices/showdev.php?id=4355]<br />
<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:SV-3420A-top.JPG|thumb]]<br />
<br />
USB ID: 18b4:1689/18b4:fffb (can anybody confirm that second USB ID ?)<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Sold as:<br />
* SinoVideo 3420A-2 <br />
* "EzTV DUTV009 USB DVB-T Receiver" by [http://www.szforwardvideo.com/product/Pro_5_7.html ForwardVideo]<br />
* "USB DVB-T TV Dongle with Remote SKU 8309" by [http://www.dealextreme.com/details.dx/sku.8309 DealExtreme]<br />
<br />
The firmware file EC168BDA.bin is contained in the Windows driver directory.<br />
<br />
External links:<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.sinovideo.com.cn/en/lib/2009/03/08/173002393/ Manufacturer product page]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Reseller Product Page]<br />
<br />
<gallery><br />
Image:SV-3420A-top.JPG<br />
Image:DUTV009_PCB.jpg<br />
</gallery><br />
<br />
<br />
===SinoVideo SV3420D===<br />
[[Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg|thumb]]<br />
<br />
USB ID: 18b4:1689<br />
Tuner: [[MXL5003S]]<br />
<br />
The PCB says ''SV3420D-V02''.<br />
<br />
Apparently produced by SinoVideo and sold under lots of different names.<br />
<br />
Sold as<br />
* SinoVideo 3420D [http://www.sinovideo.com.cn/en/lib/2009/03/11/162409936/ Product page]<br />
<br />
External links:<br />
* [http://www.sinovideo.com.cn/en/ Manufacturer(?)]<br />
<br />
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.<br />
Remote control part is recognized as HID device by the kernel.<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]<br />
<br />
<gallery><br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-004.jpg<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-009.JPG<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-007.JPG<br />
</gallery><br />
<br />
<br />
===Sweex MM002V2===<br />
<br />
USB ID: 18b4:1689<br />
<br />
Tuner: [[Microtune MT2060]]<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
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.<br />
<br />
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) <br />
<br />
<br />
Sold as:<br />
* Sweex MM002V2<br />
<br />
External links:<br />
* [http://www.sweex.com/en/assortiment/sound-vision/multimedia-devices/MM002V2 Sweex product page]<br />
<br />
===WS-DVBTM2 Tevion USB-DVB-T===<br />
<br />
Cheap offer at Hofer (Aldi) in Austria. Has an EC168 and MXL5003s built in, which refers to the E3C reference design.<br />
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.<br />
It's even impossible to load the firmware via dfu-ec168<br />
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<span id="GRTNTUSBV4_USB_TNT_Basic_LIGHT"></span><br />
[[Image:DUTV007B.JPG|thumb]]<br />
<br />
USB ID: 18b4:1001<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
'''Works''' with the official 2.6.35 experimental module (see [http://tanguy.wdscript.fr/EC168 HOWTO on Ubuntu 10.10])<br />
<br />
Sold as <br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics)<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
====Uploading Firmware to the device====<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.wdscript.fr/EC168 dfu-ec168]<br />
<br />
Use this to to upload official firmware EC168BDA.bin (7109 bytes, md5: e168c9f00bcd2bb0121b777a51f32069)<br />
<br />
Something interresting with this device : We can patch USB ID and descriptors included in the firmware and/or device memory...<br />
<br />
====Known USB requests====<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);<br />
// to know if firmware is ready<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#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);<br />
// disable/enable LED : index=8<br />
// indexes seen in trace: 0x8,0x9,0xA,0xB,0x206,0x208 - Not a Binary Mask !<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
// read eeprom ?<br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
// set IR Key ?<br />
<br />
====Identification====<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
==="ZAP" USB DVB-T Receiver===<br />
[[Image:Zap.jpg|thumb]]<br />
* ''Externally'' identical to the Sinovideo SV3420D above (except the "ZAP" branding). Internally, the PCB is different, the chips are different. <br />
(The PCB has the same main components, but is more heavily populated with resistors, etc. Picture is pending.)<br />
<br />
Device ID: 18b4:fffb<br />
Tuner: Microtune MT2061F ([[Microtune MT2060]] variant?)<br />
<br />
The firmware file EC168BDA.bin (7109 bytes, MD5:ac4392d38f63cfbd81a97e32e55743aais) is included with the windows driver, together with a 128-byte EEPROM.bin file. <br />
<br />
output of 'lsusb -vv -d 18b4:fffb':<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0 <br />
bDeviceProtocol 0 <br />
bMaxPacketSize0 64<br />
idVendor 0x18b4 <br />
idProduct 0xfffb <br />
bcdDevice 0.01<br />
iManufacturer 0 <br />
iProduct 0 <br />
iSerial 0 <br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0 <br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0 <br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors: <br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0 <br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
can't get device qualifier: Operation not permitted<br />
can't get debug descriptor: Operation not permitted<br />
cannot read device status, Operation not permitted (1)<br />
<br />
==External Links==<br />
* [http://tanguy.wdscript.fr/EC168 HOWTO: Compile module on Ubuntu Maverick 10.10]<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]<br />
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]<br />
[[Category:Demodulator]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=28264
E3C EC168
2010-12-04T06:13:37Z
<p>Tpruvot: Official module Howto</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by [[Tai-Hui]] and marketed under the brand name e3C Technologies. <br />
<br />
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.)<br />
<br />
==EC168 Devices==<br />
<br />
{{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.<br />
<br />
* If you own such a device please check the pictures below to see if your device is already here. <br />
** If it is then please add the brand and device name you bought it as. <br />
** 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.) <br />
<br />
And please, if your device or its PCB differ from the ones that are here, please take some pictures and add them.<br />
}}<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
<br />
=== Misc. Devices ===<br />
<br />
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.<br />
<br />
* [[TVISTO_DVB-T_USB|Tvisto USB DVB-T]] with [[MXL5003S]] tuner (USB ID 18b4:fffa) <br />
* ZAP DVB-T USB stick with [[MXL5003S]] tuner (USB ID 18b4:1689)<br />
<br />
===DUTV007A USB DVB-T Receiver===<br />
<br />
Picture: [https://www.dealextreme.com/productimages/sku_8325_6.jpg]<br />
<br />
USB ID: 18b4:1689<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]<br />
<br />
Sold as:<br />
* "WandTV USB DVB-T TV Tuner with Remote" SKU 8325 by [http://www.dealextreme.com/details.dx/sku.8325 Dealextreme]<br />
* EzTV DUTV007A by [http://www.szforwardvideo.com/product/Pro_4_7.html ForwardVideo]<br />
<br />
<br />
===DUTV002 MinTV-DVB-T Stick===<br />
<br />
USB ID: 18b4:1001<br />
<br />
Tuner: [[Microtune MT2060]]<br />
<br />
Sold as <br />
* "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_]<br />
* EzTV DUTV007 by [http://www.szforwardvideo.com/product/Pro_9_7.html ForwardVideo] (please note that it is DUTV007 not DUTV007A or DUTV007B)<br />
* DUTV002 [http://www.zenithdubai.com/DUTV002.html]<br />
* DigiTV 10263 by [http://www.agknordic.com/new/index.php?side_id=217 AGK Nordic]<br />
<br />
Linux owner<br />
* Marco Rossini [http://www.qbik.ch/usb/devices/showdev.php?id=4355]<br />
<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:SV-3420A-top.JPG|thumb]]<br />
<br />
USB ID: 18b4:1689/18b4:fffb (can anybody confirm that second USB ID ?)<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Sold as:<br />
* SinoVideo 3420A-2 <br />
* "EzTV DUTV009 USB DVB-T Receiver" by [http://www.szforwardvideo.com/product/Pro_5_7.html ForwardVideo]<br />
* "USB DVB-T TV Dongle with Remote SKU 8309" by [http://www.dealextreme.com/details.dx/sku.8309 DealExtreme]<br />
<br />
The firmware file EC168BDA.bin is contained in the Windows driver directory.<br />
<br />
External links:<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.sinovideo.com.cn/en/lib/2009/03/08/173002393/ Manufacturer product page]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Reseller Product Page]<br />
<br />
<gallery><br />
Image:SV-3420A-top.JPG<br />
Image:DUTV009_PCB.jpg<br />
</gallery><br />
<br />
<br />
===SinoVideo SV3420D===<br />
[[Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg|thumb]]<br />
<br />
USB ID: 18b4:1689<br />
Tuner: [[MXL5003S]]<br />
<br />
The PCB says ''SV3420D-V02''.<br />
<br />
Apparently produced by SinoVideo and sold under lots of different names.<br />
<br />
Sold as<br />
* SinoVideo 3420D [http://www.sinovideo.com.cn/en/lib/2009/03/11/162409936/ Product page]<br />
<br />
External links:<br />
* [http://www.sinovideo.com.cn/en/ Manufacturer(?)]<br />
<br />
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.<br />
Remote control part is recognized as HID device by the kernel.<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]<br />
<br />
<gallery><br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-004.jpg<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-009.JPG<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-007.JPG<br />
</gallery><br />
<br />
<br />
===Sweex MM002V2===<br />
<br />
USB ID: 18b4:1689<br />
<br />
Tuner: [[Microtune MT2060]]<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
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.<br />
<br />
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) <br />
<br />
<br />
Sold as:<br />
* Sweex MM002V2<br />
<br />
External links:<br />
* [http://www.sweex.com/en/assortiment/sound-vision/multimedia-devices/MM002V2 Sweex product page]<br />
<br />
===WS-DVBTM2 Tevion USB-DVB-T===<br />
<br />
Cheap offer at Hofer (Aldi) in Austria. Has an EC168 and MXL5003s built in, which refers to the E3C reference design.<br />
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.<br />
It's even impossible to load the firmware via dfu-ec168<br />
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<span id="GRTNTUSBV4_USB_TNT_Basic_LIGHT"></span><br />
[[Image:DUTV007B.JPG|thumb]]<br />
<br />
USB ID: 18b4:1001<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
'''Works''' with the official 2.6.35 experimental module (see [http://tanguy.wdscript.fr/EC168 HOWTO on Ubuntu 10.10])<br />
<br />
Sold as <br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics)<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
====Uploading Firmware to the device====<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.wdscript.fr/EC168 dfu-ec168]<br />
<br />
Something interresting with this device : We can patch USB ID and descriptors included in the firmware and/or device memory...<br />
<br />
====Known USB requests====<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);<br />
// to know if firmware is ready<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#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);<br />
// disable/enable LED : index=8<br />
// indexes seen in trace: 0x8,0x9,0xA,0xB,0x206,0x208 - Not a Binary Mask !<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
// read eeprom ?<br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
// set IR Key ?<br />
<br />
====Identification====<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
==="ZAP" USB DVB-T Receiver===<br />
[[Image:Zap.jpg|thumb]]<br />
* ''Externally'' identical to the Sinovideo SV3420D above (except the "ZAP" branding). Internally, the PCB is different, the chips are different. <br />
(The PCB has the same main components, but is more heavily populated with resistors, etc. Picture is pending.)<br />
<br />
Device ID: 18b4:fffb<br />
Tuner: Microtune MT2061F ([[Microtune MT2060]] variant?)<br />
<br />
The firmware file EC168BDA.bin (7109 bytes, MD5:ac4392d38f63cfbd81a97e32e55743aais) is included with the windows driver, together with a 128-byte EEPROM.bin file. <br />
<br />
output of 'lsusb -vv -d 18b4:fffb':<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0 <br />
bDeviceProtocol 0 <br />
bMaxPacketSize0 64<br />
idVendor 0x18b4 <br />
idProduct 0xfffb <br />
bcdDevice 0.01<br />
iManufacturer 0 <br />
iProduct 0 <br />
iSerial 0 <br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0 <br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0 <br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors: <br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0 <br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
can't get device qualifier: Operation not permitted<br />
can't get debug descriptor: Operation not permitted<br />
cannot read device status, Operation not permitted (1)<br />
<br />
==External Links==<br />
* [http://tanguy.wdscript.fr/EC168 HOWTO: Compile module on Ubuntu Maverick 10.10]<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]<br />
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]<br />
[[Category:Demodulator]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=28263
E3C EC168
2010-12-04T06:12:45Z
<p>Tpruvot: /* DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4) */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by [[Tai-Hui]] and marketed under the brand name e3C Technologies. <br />
<br />
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.)<br />
<br />
==EC168 Devices==<br />
<br />
{{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.<br />
<br />
* If you own such a device please check the pictures below to see if your device is already here. <br />
** If it is then please add the brand and device name you bought it as. <br />
** 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.) <br />
<br />
And please, if your device or its PCB differ from the ones that are here, please take some pictures and add them.<br />
}}<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
<br />
=== Misc. Devices ===<br />
<br />
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.<br />
<br />
* [[TVISTO_DVB-T_USB|Tvisto USB DVB-T]] with [[MXL5003S]] tuner (USB ID 18b4:fffa) <br />
* ZAP DVB-T USB stick with [[MXL5003S]] tuner (USB ID 18b4:1689)<br />
<br />
===DUTV007A USB DVB-T Receiver===<br />
<br />
Picture: [https://www.dealextreme.com/productimages/sku_8325_6.jpg]<br />
<br />
USB ID: 18b4:1689<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]<br />
<br />
Sold as:<br />
* "WandTV USB DVB-T TV Tuner with Remote" SKU 8325 by [http://www.dealextreme.com/details.dx/sku.8325 Dealextreme]<br />
* EzTV DUTV007A by [http://www.szforwardvideo.com/product/Pro_4_7.html ForwardVideo]<br />
<br />
<br />
===DUTV002 MinTV-DVB-T Stick===<br />
<br />
USB ID: 18b4:1001<br />
<br />
Tuner: [[Microtune MT2060]]<br />
<br />
Sold as <br />
* "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_]<br />
* EzTV DUTV007 by [http://www.szforwardvideo.com/product/Pro_9_7.html ForwardVideo] (please note that it is DUTV007 not DUTV007A or DUTV007B)<br />
* DUTV002 [http://www.zenithdubai.com/DUTV002.html]<br />
* DigiTV 10263 by [http://www.agknordic.com/new/index.php?side_id=217 AGK Nordic]<br />
<br />
Linux owner<br />
* Marco Rossini [http://www.qbik.ch/usb/devices/showdev.php?id=4355]<br />
<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:SV-3420A-top.JPG|thumb]]<br />
<br />
USB ID: 18b4:1689/18b4:fffb (can anybody confirm that second USB ID ?)<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Sold as:<br />
* SinoVideo 3420A-2 <br />
* "EzTV DUTV009 USB DVB-T Receiver" by [http://www.szforwardvideo.com/product/Pro_5_7.html ForwardVideo]<br />
* "USB DVB-T TV Dongle with Remote SKU 8309" by [http://www.dealextreme.com/details.dx/sku.8309 DealExtreme]<br />
<br />
The firmware file EC168BDA.bin is contained in the Windows driver directory.<br />
<br />
External links:<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.sinovideo.com.cn/en/lib/2009/03/08/173002393/ Manufacturer product page]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Reseller Product Page]<br />
<br />
<gallery><br />
Image:SV-3420A-top.JPG<br />
Image:DUTV009_PCB.jpg<br />
</gallery><br />
<br />
<br />
===SinoVideo SV3420D===<br />
[[Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg|thumb]]<br />
<br />
USB ID: 18b4:1689<br />
Tuner: [[MXL5003S]]<br />
<br />
The PCB says ''SV3420D-V02''.<br />
<br />
Apparently produced by SinoVideo and sold under lots of different names.<br />
<br />
Sold as<br />
* SinoVideo 3420D [http://www.sinovideo.com.cn/en/lib/2009/03/11/162409936/ Product page]<br />
<br />
External links:<br />
* [http://www.sinovideo.com.cn/en/ Manufacturer(?)]<br />
<br />
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.<br />
Remote control part is recognized as HID device by the kernel.<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]<br />
<br />
<gallery><br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-004.jpg<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-009.JPG<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-007.JPG<br />
</gallery><br />
<br />
<br />
===Sweex MM002V2===<br />
<br />
USB ID: 18b4:1689<br />
<br />
Tuner: [[Microtune MT2060]]<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
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.<br />
<br />
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) <br />
<br />
<br />
Sold as:<br />
* Sweex MM002V2<br />
<br />
External links:<br />
* [http://www.sweex.com/en/assortiment/sound-vision/multimedia-devices/MM002V2 Sweex product page]<br />
<br />
===WS-DVBTM2 Tevion USB-DVB-T===<br />
<br />
Cheap offer at Hofer (Aldi) in Austria. Has an EC168 and MXL5003s built in, which refers to the E3C reference design.<br />
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.<br />
It's even impossible to load the firmware via dfu-ec168<br />
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<span id="GRTNTUSBV4_USB_TNT_Basic_LIGHT"></span><br />
[[Image:DUTV007B.JPG|thumb]]<br />
<br />
USB ID: 18b4:1001<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
'''Works''' with the 2.6.35 experimental module (see [http://tanguy.wdscript.fr/EC168 HOWTO])<br />
<br />
Sold as <br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics)<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
====Uploading Firmware to the device====<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.wdscript.fr/EC168 dfu-ec168]<br />
<br />
Something interresting with this device : We can patch USB ID and descriptors included in the firmware and/or device memory...<br />
<br />
====Known USB requests====<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);<br />
// to know if firmware is ready<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#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);<br />
// disable/enable LED : index=8<br />
// indexes seen in trace: 0x8,0x9,0xA,0xB,0x206,0x208 - Not a Binary Mask !<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
// read eeprom ?<br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
// set IR Key ?<br />
<br />
====Identification====<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
==="ZAP" USB DVB-T Receiver===<br />
[[Image:Zap.jpg|thumb]]<br />
* ''Externally'' identical to the Sinovideo SV3420D above (except the "ZAP" branding). Internally, the PCB is different, the chips are different. <br />
(The PCB has the same main components, but is more heavily populated with resistors, etc. Picture is pending.)<br />
<br />
Device ID: 18b4:fffb<br />
Tuner: Microtune MT2061F ([[Microtune MT2060]] variant?)<br />
<br />
The firmware file EC168BDA.bin (7109 bytes, MD5:ac4392d38f63cfbd81a97e32e55743aais) is included with the windows driver, together with a 128-byte EEPROM.bin file. <br />
<br />
output of 'lsusb -vv -d 18b4:fffb':<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0 <br />
bDeviceProtocol 0 <br />
bMaxPacketSize0 64<br />
idVendor 0x18b4 <br />
idProduct 0xfffb <br />
bcdDevice 0.01<br />
iManufacturer 0 <br />
iProduct 0 <br />
iSerial 0 <br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0 <br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0 <br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors: <br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0 <br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
can't get device qualifier: Operation not permitted<br />
can't get debug descriptor: Operation not permitted<br />
cannot read device status, Operation not permitted (1)<br />
<br />
==External Links==<br />
* [http://tanguy.wdscript.fr/EC168 HOWTO: Compile module on Ubuntu Maverick 10.10]<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]<br />
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]<br />
[[Category:Demodulator]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=28262
E3C EC168
2010-12-04T06:09:27Z
<p>Tpruvot: /* External Links */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by [[Tai-Hui]] and marketed under the brand name e3C Technologies. <br />
<br />
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.)<br />
<br />
==EC168 Devices==<br />
<br />
{{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.<br />
<br />
* If you own such a device please check the pictures below to see if your device is already here. <br />
** If it is then please add the brand and device name you bought it as. <br />
** 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.) <br />
<br />
And please, if your device or its PCB differ from the ones that are here, please take some pictures and add them.<br />
}}<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
<br />
=== Misc. Devices ===<br />
<br />
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.<br />
<br />
* [[TVISTO_DVB-T_USB|Tvisto USB DVB-T]] with [[MXL5003S]] tuner (USB ID 18b4:fffa) <br />
* ZAP DVB-T USB stick with [[MXL5003S]] tuner (USB ID 18b4:1689)<br />
<br />
===DUTV007A USB DVB-T Receiver===<br />
<br />
Picture: [https://www.dealextreme.com/productimages/sku_8325_6.jpg]<br />
<br />
USB ID: 18b4:1689<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]<br />
<br />
Sold as:<br />
* "WandTV USB DVB-T TV Tuner with Remote" SKU 8325 by [http://www.dealextreme.com/details.dx/sku.8325 Dealextreme]<br />
* EzTV DUTV007A by [http://www.szforwardvideo.com/product/Pro_4_7.html ForwardVideo]<br />
<br />
<br />
===DUTV002 MinTV-DVB-T Stick===<br />
<br />
USB ID: 18b4:1001<br />
<br />
Tuner: [[Microtune MT2060]]<br />
<br />
Sold as <br />
* "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_]<br />
* EzTV DUTV007 by [http://www.szforwardvideo.com/product/Pro_9_7.html ForwardVideo] (please note that it is DUTV007 not DUTV007A or DUTV007B)<br />
* DUTV002 [http://www.zenithdubai.com/DUTV002.html]<br />
* DigiTV 10263 by [http://www.agknordic.com/new/index.php?side_id=217 AGK Nordic]<br />
<br />
Linux owner<br />
* Marco Rossini [http://www.qbik.ch/usb/devices/showdev.php?id=4355]<br />
<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:SV-3420A-top.JPG|thumb]]<br />
<br />
USB ID: 18b4:1689/18b4:fffb (can anybody confirm that second USB ID ?)<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Sold as:<br />
* SinoVideo 3420A-2 <br />
* "EzTV DUTV009 USB DVB-T Receiver" by [http://www.szforwardvideo.com/product/Pro_5_7.html ForwardVideo]<br />
* "USB DVB-T TV Dongle with Remote SKU 8309" by [http://www.dealextreme.com/details.dx/sku.8309 DealExtreme]<br />
<br />
The firmware file EC168BDA.bin is contained in the Windows driver directory.<br />
<br />
External links:<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.sinovideo.com.cn/en/lib/2009/03/08/173002393/ Manufacturer product page]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Reseller Product Page]<br />
<br />
<gallery><br />
Image:SV-3420A-top.JPG<br />
Image:DUTV009_PCB.jpg<br />
</gallery><br />
<br />
<br />
===SinoVideo SV3420D===<br />
[[Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg|thumb]]<br />
<br />
USB ID: 18b4:1689<br />
Tuner: [[MXL5003S]]<br />
<br />
The PCB says ''SV3420D-V02''.<br />
<br />
Apparently produced by SinoVideo and sold under lots of different names.<br />
<br />
Sold as<br />
* SinoVideo 3420D [http://www.sinovideo.com.cn/en/lib/2009/03/11/162409936/ Product page]<br />
<br />
External links:<br />
* [http://www.sinovideo.com.cn/en/ Manufacturer(?)]<br />
<br />
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.<br />
Remote control part is recognized as HID device by the kernel.<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]<br />
<br />
<gallery><br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-004.jpg<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-009.JPG<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-007.JPG<br />
</gallery><br />
<br />
<br />
===Sweex MM002V2===<br />
<br />
USB ID: 18b4:1689<br />
<br />
Tuner: [[Microtune MT2060]]<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
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.<br />
<br />
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) <br />
<br />
<br />
Sold as:<br />
* Sweex MM002V2<br />
<br />
External links:<br />
* [http://www.sweex.com/en/assortiment/sound-vision/multimedia-devices/MM002V2 Sweex product page]<br />
<br />
===WS-DVBTM2 Tevion USB-DVB-T===<br />
<br />
Cheap offer at Hofer (Aldi) in Austria. Has an EC168 and MXL5003s built in, which refers to the E3C reference design.<br />
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.<br />
It's even impossible to load the firmware via dfu-ec168<br />
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<span id="GRTNTUSBV4_USB_TNT_Basic_LIGHT"></span><br />
[[Image:DUTV007B.JPG|thumb]]<br />
<br />
USB ID: 18b4:1001<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Sold as <br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics)<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
====Uploading Firmware to the device====<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.wdscript.fr/EC168 dfu-ec168]<br />
<br />
Something interresting with this device : We can patch USB ID and descriptors included in the firmware and/or device memory...<br />
<br />
====Known USB requests====<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);<br />
// to know if firmware is ready<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#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);<br />
// disable/enable LED : index=8<br />
// indexes seen in trace: 0x8,0x9,0xA,0xB,0x206,0x208 - Not a Binary Mask !<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
// read eeprom ?<br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
// set IR Key ?<br />
<br />
====Identification====<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
==="ZAP" USB DVB-T Receiver===<br />
[[Image:Zap.jpg|thumb]]<br />
* ''Externally'' identical to the Sinovideo SV3420D above (except the "ZAP" branding). Internally, the PCB is different, the chips are different. <br />
(The PCB has the same main components, but is more heavily populated with resistors, etc. Picture is pending.)<br />
<br />
Device ID: 18b4:fffb<br />
Tuner: Microtune MT2061F ([[Microtune MT2060]] variant?)<br />
<br />
The firmware file EC168BDA.bin (7109 bytes, MD5:ac4392d38f63cfbd81a97e32e55743aais) is included with the windows driver, together with a 128-byte EEPROM.bin file. <br />
<br />
output of 'lsusb -vv -d 18b4:fffb':<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0 <br />
bDeviceProtocol 0 <br />
bMaxPacketSize0 64<br />
idVendor 0x18b4 <br />
idProduct 0xfffb <br />
bcdDevice 0.01<br />
iManufacturer 0 <br />
iProduct 0 <br />
iSerial 0 <br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0 <br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0 <br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors: <br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0 <br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
can't get device qualifier: Operation not permitted<br />
can't get debug descriptor: Operation not permitted<br />
cannot read device status, Operation not permitted (1)<br />
<br />
==External Links==<br />
* [http://tanguy.wdscript.fr/EC168 HOWTO: Compile module on Ubuntu Maverick 10.10]<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]<br />
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]<br />
[[Category:Demodulator]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=28261
E3C EC168
2010-12-04T06:08:27Z
<p>Tpruvot: update link</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by [[Tai-Hui]] and marketed under the brand name e3C Technologies. <br />
<br />
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.)<br />
<br />
==EC168 Devices==<br />
<br />
{{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.<br />
<br />
* If you own such a device please check the pictures below to see if your device is already here. <br />
** If it is then please add the brand and device name you bought it as. <br />
** 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.) <br />
<br />
And please, if your device or its PCB differ from the ones that are here, please take some pictures and add them.<br />
}}<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
<br />
=== Misc. Devices ===<br />
<br />
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.<br />
<br />
* [[TVISTO_DVB-T_USB|Tvisto USB DVB-T]] with [[MXL5003S]] tuner (USB ID 18b4:fffa) <br />
* ZAP DVB-T USB stick with [[MXL5003S]] tuner (USB ID 18b4:1689)<br />
<br />
===DUTV007A USB DVB-T Receiver===<br />
<br />
Picture: [https://www.dealextreme.com/productimages/sku_8325_6.jpg]<br />
<br />
USB ID: 18b4:1689<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]<br />
<br />
Sold as:<br />
* "WandTV USB DVB-T TV Tuner with Remote" SKU 8325 by [http://www.dealextreme.com/details.dx/sku.8325 Dealextreme]<br />
* EzTV DUTV007A by [http://www.szforwardvideo.com/product/Pro_4_7.html ForwardVideo]<br />
<br />
<br />
===DUTV002 MinTV-DVB-T Stick===<br />
<br />
USB ID: 18b4:1001<br />
<br />
Tuner: [[Microtune MT2060]]<br />
<br />
Sold as <br />
* "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_]<br />
* EzTV DUTV007 by [http://www.szforwardvideo.com/product/Pro_9_7.html ForwardVideo] (please note that it is DUTV007 not DUTV007A or DUTV007B)<br />
* DUTV002 [http://www.zenithdubai.com/DUTV002.html]<br />
* DigiTV 10263 by [http://www.agknordic.com/new/index.php?side_id=217 AGK Nordic]<br />
<br />
Linux owner<br />
* Marco Rossini [http://www.qbik.ch/usb/devices/showdev.php?id=4355]<br />
<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:SV-3420A-top.JPG|thumb]]<br />
<br />
USB ID: 18b4:1689/18b4:fffb (can anybody confirm that second USB ID ?)<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Sold as:<br />
* SinoVideo 3420A-2 <br />
* "EzTV DUTV009 USB DVB-T Receiver" by [http://www.szforwardvideo.com/product/Pro_5_7.html ForwardVideo]<br />
* "USB DVB-T TV Dongle with Remote SKU 8309" by [http://www.dealextreme.com/details.dx/sku.8309 DealExtreme]<br />
<br />
The firmware file EC168BDA.bin is contained in the Windows driver directory.<br />
<br />
External links:<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.sinovideo.com.cn/en/lib/2009/03/08/173002393/ Manufacturer product page]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Reseller Product Page]<br />
<br />
<gallery><br />
Image:SV-3420A-top.JPG<br />
Image:DUTV009_PCB.jpg<br />
</gallery><br />
<br />
<br />
===SinoVideo SV3420D===<br />
[[Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg|thumb]]<br />
<br />
USB ID: 18b4:1689<br />
Tuner: [[MXL5003S]]<br />
<br />
The PCB says ''SV3420D-V02''.<br />
<br />
Apparently produced by SinoVideo and sold under lots of different names.<br />
<br />
Sold as<br />
* SinoVideo 3420D [http://www.sinovideo.com.cn/en/lib/2009/03/11/162409936/ Product page]<br />
<br />
External links:<br />
* [http://www.sinovideo.com.cn/en/ Manufacturer(?)]<br />
<br />
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.<br />
Remote control part is recognized as HID device by the kernel.<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
as described in [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942]<br />
<br />
<gallery><br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-005.jpg<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-004.jpg<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-009.JPG<br />
Image:Dvb-t-usb-sinovideo-sv3420d-v02-007.JPG<br />
</gallery><br />
<br />
<br />
===Sweex MM002V2===<br />
<br />
USB ID: 18b4:1689<br />
<br />
Tuner: [[Microtune MT2060]]<br />
<br />
Works with the driver from [http://linuxtv.org/hg/~anttip/ec168/ Antti's mercurial repository]<br />
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.<br />
<br />
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) <br />
<br />
<br />
Sold as:<br />
* Sweex MM002V2<br />
<br />
External links:<br />
* [http://www.sweex.com/en/assortiment/sound-vision/multimedia-devices/MM002V2 Sweex product page]<br />
<br />
===WS-DVBTM2 Tevion USB-DVB-T===<br />
<br />
Cheap offer at Hofer (Aldi) in Austria. Has an EC168 and MXL5003s built in, which refers to the E3C reference design.<br />
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.<br />
It's even impossible to load the firmware via dfu-ec168<br />
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<span id="GRTNTUSBV4_USB_TNT_Basic_LIGHT"></span><br />
[[Image:DUTV007B.JPG|thumb]]<br />
<br />
USB ID: 18b4:1001<br />
<br />
Tuner: [[MXL5003S]]<br />
<br />
Sold as <br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics)<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
====Uploading Firmware to the device====<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.wdscript.fr/EC168 dfu-ec168]<br />
<br />
Something interresting with this device : We can patch USB ID and descriptors included in the firmware and/or device memory...<br />
<br />
====Known USB requests====<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);<br />
// to know if firmware is ready<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#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);<br />
// disable/enable LED : index=8<br />
// indexes seen in trace: 0x8,0x9,0xA,0xB,0x206,0x208 - Not a Binary Mask !<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
// read eeprom ?<br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
// set IR Key ?<br />
<br />
====Identification====<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
==="ZAP" USB DVB-T Receiver===<br />
[[Image:Zap.jpg|thumb]]<br />
* ''Externally'' identical to the Sinovideo SV3420D above (except the "ZAP" branding). Internally, the PCB is different, the chips are different. <br />
(The PCB has the same main components, but is more heavily populated with resistors, etc. Picture is pending.)<br />
<br />
Device ID: 18b4:fffb<br />
Tuner: Microtune MT2061F ([[Microtune MT2060]] variant?)<br />
<br />
The firmware file EC168BDA.bin (7109 bytes, MD5:ac4392d38f63cfbd81a97e32e55743aais) is included with the windows driver, together with a 128-byte EEPROM.bin file. <br />
<br />
output of 'lsusb -vv -d 18b4:fffb':<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0 <br />
bDeviceProtocol 0 <br />
bMaxPacketSize0 64<br />
idVendor 0x18b4 <br />
idProduct 0xfffb <br />
bcdDevice 0.01<br />
iManufacturer 0 <br />
iProduct 0 <br />
iSerial 0 <br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0 <br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0 <br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors: <br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0 <br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
can't get device qualifier: Operation not permitted<br />
can't get debug descriptor: Operation not permitted<br />
cannot read device status, Operation not permitted (1)<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]<br />
* [https://www.dealextreme.com/forums/Default.dx/sku.8325~threadid.278942 a possible way to get the ec168 working]<br />
[[Category:Demodulator]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=19695
E3C EC168
2008-12-30T14:08:15Z
<p>Tpruvot: /* Uploading Firmware to the device */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name e3C Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689/18b4:fffb)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
* ZAP DVB-T USB stick <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:DUTV009_PCB.jpg|thumb|300px]]<br />
<br />
No eeprom in this one <br />
<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Product Page]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar TVGo_Genius.rar]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168 dfu-ec168]<br />
<br />
Something interresting with this device : We can patch USB ID and descriptors included in the firmware and/or device memory...<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);<br />
// to know if firmware is ready<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#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);<br />
// disable/enable LED : index=8<br />
// indexes seen in trace: 0x8,0x9,0xA,0xB,0x206,0x208 - Not a Binary Mask !<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
// read eeprom ?<br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
// set IR Key ?<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=18928
E3C EC168
2008-12-08T00:41:39Z
<p>Tpruvot: /* Known USB requests */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name e3C Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689/18b4:fffb)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
* ZAP DVB-T USB stick <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:DUTV009_PCB.jpg|thumb|300px]]<br />
<br />
No eeprom in this one <br />
<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Product Page]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar TVGo_Genius.rar]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168 dfu-ec168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);<br />
// to know if firmware is ready<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#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);<br />
// disable/enable LED : index=8<br />
// indexes seen in trace: 0x8,0x9,0xA,0xB,0x206,0x208 - Not a Binary Mask !<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
// read eeprom ?<br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
// set IR Key ?<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=18735
E3C EC168
2008-12-07T18:30:42Z
<p>Tpruvot: /* Known USB requests */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name e3C Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689/18b4:fffb)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
* ZAP DVB-T USB stick <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:DUTV009_PCB.jpg|thumb|300px]]<br />
<br />
No eeprom in this one <br />
<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Product Page]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar TVGo_Genius.rar]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168 dfu-ec168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);<br />
// to know if firmware is ready<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //R-X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen in trace: 0x8,0x9,0xA,0xB,0x206,0x208 - Not a Binary Mask !<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
// read eeprom ?<br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
// set IR Key ?<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic&diff=18481
PC-Basic
2008-12-05T05:02:19Z
<p>Tpruvot: </p>
<hr />
<div>PC-Basic is a French trademark from Graphics.<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''DVB Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TNT USB Basic]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=33&Itemid=214]<br />
! DVB-T (HD too?) USB Key based on [[E3C EC168]] and Maxlinear MxL5003<br />
! -- not supported --<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Hybrid (Analog + Digital) Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Analog devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TV FM]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=331&Itemid=1757]<br />
! PAL/SECAM/NTSC and FM PCI card based on [[SAA7130]] and [[TUA6030]]<br />
! -- Yes Card=126 Tuner=38 --<br />
|}<br />
<br />
<br />
* [[PC-Basic TV FM]] is working, but not detected automatically (No EEPROM) ... Card=126 Tuner=38<br />
<br />
<br />
== External Links ==<br />
* [http://www.graphics-france.com/ Graphics homepage]<br />
* [http://tanguy.ath.cx/index.php?q=SAA7130 PC-Basic TV FM PCB Detail]<br />
<br />
[[Category:Vendor]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic&diff=18480
PC-Basic
2008-12-05T05:02:06Z
<p>Tpruvot: </p>
<hr />
<div>PC-Basic is a French trademark from Graphics.<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''DVB Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TNT USB Basic]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=33&Itemid=214]<br />
! DVB-T (HD too?) USB Key based on [[E3C EC168]] and Maxlinear MxL5003<br />
! -- not supported --<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Hybrid (Analog + Digital) Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Analog devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TV FM]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=331&Itemid=1757]<br />
! PAL/SECAM/NTSC and FM PCI card based on [[SAA7130]] and [[TUA6030]]<br />
! -- Yes Card=126 Tuner=38 --<br />
|}<br />
<br />
* [[PC-Basic TV FM]] is working, but not detected automatically (No EEPROM) ... Card=126 Tuner=38<br />
<br />
== External Links ==<br />
* [http://www.graphics-france.com/ Graphics homepage]<br />
* [http://tanguy.ath.cx/index.php?q=SAA7130 PC-Basic TV FM PCB Detail]<br />
<br />
[[Category:Vendor]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic&diff=18479
PC-Basic
2008-12-05T04:59:35Z
<p>Tpruvot: </p>
<hr />
<div>PC-Basic is a French trademark from Graphics.<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''DVB Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TNT USB Basic]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=33&Itemid=214]<br />
! DVB-T (HD too?) USB Key based on [[E3C EC168]] and Maxlinear MxL5003<br />
! -- not supported --<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Hybrid (Analog + Digital) Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Analog devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TV FM]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=331&Itemid=1757]<br />
! PAL/SECAM/NTSC and FM PCI card based on [[SAA7130]] and [[TUA6030]]<br />
! -- Yes Card=126 Tuner=38 --<br />
|}<br />
<br />
* [[PC-Basic TV FM]] working but not integrated in kernel souces, see [http://tanguy.ath.cx/index.php?q=SAA7130]<br />
<br />
== External Links ==<br />
* [http://www.graphics-france.com/ Graphics homepage]<br />
<br />
[[Category:Vendor]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic_TV_FM&diff=18478
PC-Basic TV FM
2008-12-05T04:54:20Z
<p>Tpruvot: </p>
<hr />
<div>Cheap Analog PCI Card, with Composite, SVIDEO inputs, Audio In, Audio Out and Remote Control ports<br />
<br />
This card contains :<br />
* No EEPROM<br />
* SAA7130<br />
* Tuner Infineon TUA6030 PAL/FM (compatible with Philips Tuner 38.)<br />
* Remote Control IC (PIC16F84A code protected)<br />
<br />
[SAA7134_BOARD_PCBASIC_TV_FM] = {<br />
/* Tanguy Pruvot (fr) <tanguy.pruvot on gmail.com> */<br />
.name = "PC-Basic TVBasic-FM (saa7130)",<br />
.audio_clock = 0x00187de7,<br />
.tuner_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.radio_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.tuner_addr = 0x60, // i2c = 0xC0<br />
.radio_addr = 0x60, // i2c = 0xC0<br />
.gpiomask = 0x0108000,<br />
.inputs = {{<br />
.name = name_tv,<br />
.vmux = 3,<br />
.amux = LINE2,<br />
.tv = 1,<br />
},{<br />
.name = name_comp1,<br />
.vmux = 1,<br />
.amux = LINE1,<br />
},{<br />
.name = name_svideo,<br />
.vmux = 8,<br />
.amux = LINE1,<br />
}},<br />
.radio = {<br />
.name = name_radio,<br />
.amux = LINE2,<br />
},<br />
.mute = {<br />
.name = name_mute,<br />
.amux = LINE1,<br />
.gpio = 0, //enable remote<br />
},<br />
},<br />
<br />
== Remote Control ==<br />
<br />
case SAA7134_BOARD_PCBASIC_TV_FM:<br />
ir_codes = ir_codes_manli;<br />
mask_keycode = 0x003f00;<br />
mask_keyup = 0x004000;<br />
polling = 50; // ms<br />
break;<br />
}<br />
<br />
The card is compatible with Beholder Behold TV 505 FM (Card=126) <br />
<br />
More on this page... [http://tanguy.ath.cx/index.php?q=SAA7130]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic_TV_FM&diff=18477
PC-Basic TV FM
2008-12-05T04:49:04Z
<p>Tpruvot: </p>
<hr />
<div>Cheap Analog PCI Card, with Composite, SVIDEO inputs, Audio In, Audio Out and Remote Control ports<br />
<br />
This card contains :<br />
* No EEPROM<br />
* SAA7130<br />
* Tuner Infineon TUA6030 PAL/FM (compatible with Philips Tuner 38.)<br />
* Remote Control IC (PIC16F84A code protected)<br />
<br />
[SAA7134_BOARD_PCBASIC_TV_FM] = {<br />
/* Tanguy Pruvot (fr) <tanguy.pruvot on gmail.com> */<br />
.name = "PC-Basic TVBasic-FM (saa7130)",<br />
.audio_clock = 0x00187de7,<br />
.tuner_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.radio_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.tuner_addr = 0x60, // i2c = 0xC0<br />
.radio_addr = 0x60, // i2c = 0xC0<br />
.gpiomask = 0x0108000,<br />
.inputs = {{<br />
.name = name_tv,<br />
.vmux = 3,<br />
.amux = LINE2,<br />
.tv = 1,<br />
},{<br />
.name = name_comp1,<br />
.vmux = 1,<br />
.amux = LINE1,<br />
},{<br />
.name = name_svideo,<br />
.vmux = 8,<br />
.amux = LINE1,<br />
}},<br />
.radio = {<br />
.name = name_radio,<br />
.amux = LINE2,<br />
},<br />
.mute = {<br />
.name = name_mute,<br />
.amux = LINE1,<br />
.gpio = 0, //enable remote<br />
},<br />
},<br />
<br />
== Remote Control ==<br />
<br />
case SAA7134_BOARD_PCBASIC_TV_FM:<br />
ir_codes = ir_codes_manli;<br />
mask_keycode = 0x003f00;<br />
mask_keyup = 0x004000;<br />
polling = 50; // ms<br />
break;<br />
}<br />
<br />
The card is compatible with Beholder Behold TV 403 FM (Card=120) <br />
<br />
More on this page... [http://tanguy.ath.cx/index.php?q=SAA7130]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic_TV_FM&diff=18476
PC-Basic TV FM
2008-12-05T04:38:06Z
<p>Tpruvot: </p>
<hr />
<div>Cheap Analog PCI Card, with Composite, SVIDEO inputs, Audio In, Audio Out and Remote Control ports<br />
<br />
This card contains :<br />
* No EEPROM<br />
* SAA7130<br />
* Tuner Infineon TUA6030 PAL/FM (compatible with Philips Tuner 38.)<br />
* Remote Control IC (PIC16F84A code protected)<br />
<br />
[SAA7134_BOARD_PCBASIC_TV_FM] = {<br />
/* Tanguy Pruvot (fr) <tanguy.pruvot on gmail.com> */<br />
.name = "PC-Basic TVBasic-FM (saa7130)",<br />
.audio_clock = 0x00187de7,<br />
.tuner_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.radio_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.tuner_addr = 0x60, // i2c = 0xC0<br />
.radio_addr = 0x60, // i2c = 0xC0<br />
.gpiomask = 0x0108000,<br />
.inputs = {{<br />
.name = name_tv,<br />
.vmux = 3,<br />
.amux = LINE2,<br />
.tv = 1,<br />
},{<br />
.name = name_comp1,<br />
.vmux = 1,<br />
.amux = LINE1,<br />
},{<br />
.name = name_svideo,<br />
.vmux = 8,<br />
.amux = LINE1,<br />
}},<br />
.radio = {<br />
.name = name_radio,<br />
.amux = LINE2,<br />
},<br />
.mute = {<br />
.name = name_mute,<br />
.amux = LINE1,<br />
.gpio = 0, //enable remote<br />
},<br />
},<br />
<br />
== Remote Control ==<br />
<br />
case SAA7134_BOARD_PCBASIC_TV_FM:<br />
ir_codes = ir_codes_manli;<br />
mask_keycode = 0x003f00;<br />
mask_keyup = 0x004000;<br />
polling = 50; // ms<br />
break;<br />
}<br />
<br />
More on this page... [http://tanguy.ath.cx/index.php?q=SAA7130]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic_TV_FM&diff=18427
PC-Basic TV FM
2008-12-05T00:24:50Z
<p>Tpruvot: </p>
<hr />
<div>Cheap Analog PCI Card, with Composite, SVIDEO inputs, Audio In, Audio Out and Remote Control ports<br />
<br />
This card contains :<br />
* No EEPROM<br />
* SAA7130<br />
* Tuner Infineon TUA6030 PAL/FM (compatible with Philips Tuner 38.)<br />
* Remote Control IC (PIC16F84A code protected)<br />
<br />
[SAA7134_BOARD_PCBASIC_TV_FM] = {<br />
/* Tanguy Pruvot (fr) <tanguy.pruvot on gmail.com> */<br />
.name = "PC-Basic TVBasic-FM (saa7130)",<br />
.audio_clock = 0x00187de7,<br />
.tuner_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.radio_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.tuner_addr = 0x60, // i2c = 0xC0<br />
.radio_addr = 0x60, // i2c = 0xC0<br />
.gpiomask = 0x0108000,<br />
.inputs = {{<br />
.name = name_tv,<br />
.vmux = 3,<br />
.amux = LINE2,<br />
.tv = 1,<br />
},{<br />
.name = name_comp1,<br />
.vmux = 1,<br />
.amux = LINE1,<br />
},{<br />
.name = name_svideo,<br />
.vmux = 8,<br />
.amux = LINE1,<br />
}},<br />
.radio = {<br />
.name = name_radio,<br />
.amux = LINE2,<br />
},<br />
.mute = {<br />
.name = name_mute,<br />
.amux = LINE1,<br />
.gpio = 0, //enable remote<br />
},<br />
},<br />
<br />
More on this page... [http://tanguy.ath.cx/index.php?q=SAA7130]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic_TV_FM&diff=18426
PC-Basic TV FM
2008-12-05T00:23:57Z
<p>Tpruvot: </p>
<hr />
<div>Cheap Analog PCI Card, with Composite, SVIDEO inputs, Audio In, Audio Out and Remote Control ports<br />
<br />
This card contains :<br />
* No EEPROM<br />
* SAA7130<br />
* Tuner Infineon TUA6030 PAL/FM (compatible with Philips Tuner 38.)<br />
* Remote Control IC (PIC16F84A code protected)<br />
<br />
[SAA7134_BOARD_PCBASIC_TV_FM] = {<br />
/* Tanguy Pruvot (fr) <tanguy.pruvot on gmail.com> */<br />
.name = "PC-Basic TVBasic-FM (saa7130)",<br />
.audio_clock = 0x00187de7,<br />
.tuner_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.radio_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.tuner_addr = 0x60, // i2c = 0xC0<br />
.radio_addr = 0x60, // i2c = 0xC0<br />
.gpiomask = 0x0108000,<br />
.inputs = {{<br />
.name = name_tv,<br />
.vmux = 3,<br />
.amux = LINE2,<br />
.tv = 1,<br />
},{<br />
.name = name_comp1,<br />
.vmux = 1,<br />
.amux = LINE1,<br />
},{<br />
.name = name_svideo,<br />
.vmux = 8,<br />
.amux = LINE1,<br />
}},<br />
.radio = {<br />
.name = name_radio,<br />
.amux = LINE2,<br />
},<br />
.mute = {<br />
.name = name_mute,<br />
.amux = LINE1,<br />
.gpio = 0, //enable remote<br />
},<br />
},</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic_TV_FM&diff=18425
PC-Basic TV FM
2008-12-05T00:23:28Z
<p>Tpruvot: </p>
<hr />
<div>Cheap Analog PCI Card, with Composite, SVIDEO inputs, Audio In, Audio Out and Remote Control ports<br />
<br />
This card contains :<br />
* No EEPROM<br />
* SAA7130<br />
* Tuner Infineon TUA6030 PAL/FM (compatible with Philips Tuner 38.)<br />
* Remote Control IC (PIC16F84A code protected)<br />
<br />
[SAA7134_BOARD_PCBASIC_TV_FM] = {<br />
/* Tanguy Pruvot (FR) <tanguy.pruvot@gmail.com> */<br />
.name = "PC-Basic TVBasic-FM (saa7130)",<br />
.audio_clock = 0x00187de7,<br />
.tuner_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.radio_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.tuner_addr = 0x60, // i2c = 0xC0<br />
.radio_addr = 0x60, // i2c = 0xC0<br />
.gpiomask = 0x0108000,<br />
.inputs = {{<br />
.name = name_tv,<br />
.vmux = 3,<br />
.amux = LINE2,<br />
.tv = 1,<br />
},{<br />
.name = name_comp1,<br />
.vmux = 1,<br />
.amux = LINE1,<br />
},{<br />
.name = name_svideo,<br />
.vmux = 8,<br />
.amux = LINE1,<br />
}},<br />
.radio = {<br />
.name = name_radio,<br />
.amux = LINE2,<br />
},<br />
.mute = {<br />
.name = name_mute,<br />
.amux = LINE1,<br />
.gpio = 0, //enable remote<br />
},<br />
},</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic_TV_FM&diff=18424
PC-Basic TV FM
2008-12-05T00:22:37Z
<p>Tpruvot: </p>
<hr />
<div>Cheap Analog PCI Card, with Composite, SVIDEO inputs, Audio In, Audio Out and Remote Control ports<br />
<br />
This card contains :<br />
* No EEPROM<br />
* SAA7130<br />
* Tuner Infineon TUA6030 PAL/FM (compatible with Philips Tuner 38.)<br />
* Remote Control IC (PIC16F84A code protected)<br />
<br />
[SAA7134_BOARD_PCBASIC_TV_FM] = {<br />
/* Tanguy Pruvot (FR) <tanguy.pruvot@gmail.com> */<br />
.name = "PC-Basic TVBasic-FM (saa7130)",<br />
.audio_clock = 0x00187de7,<br />
.tuner_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.radio_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.tuner_addr = 0x60, // i2c = 0xC0<br />
.radio_addr = 0x60, // i2c = 0xC0<br />
.gpiomask = 0x0108000,<br />
.inputs = {{<br />
.name = name_tv,<br />
.vmux = 3,<br />
.amux = LINE2,<br />
.tv = 1,<br />
.gpio = 0, //enable remote<br />
},{<br />
.name = name_comp1,<br />
.vmux = 1,<br />
.amux = LINE1,<br />
},{<br />
.name = name_svideo,<br />
.vmux = 8,<br />
.amux = LINE1,<br />
}},<br />
.radio = {<br />
.name = name_radio,<br />
.amux = LINE2,<br />
},<br />
.mute = {<br />
.name = name_mute,<br />
.amux = LINE1,<br />
.gpio = 0, //enable remote<br />
},<br />
},</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic_TV_FM&diff=18423
PC-Basic TV FM
2008-12-05T00:18:51Z
<p>Tpruvot: </p>
<hr />
<div>Cheap Analog PCI Card, with Composite, SVIDEO inputs, Audio In, Audio Out and Remote Control ports<br />
<br />
This card contains :<br />
* No EEPROM<br />
* SAA7130<br />
* Tuner Infineon TUA6030 PAL/FM (compatible with Philips Tuner 38.)<br />
* Remote Control IC (PIC16F84A code protected)<br />
<br />
[SAA7134_BOARD_PCBASIC_TV_FM] = {<br />
/* Tanguy Pruvot (FR) <tanguy.pruvot@gmail.com> */<br />
.name = "PC-Basic TVBasic-FM (saa7130)",<br />
.audio_clock = 0x00187de7,<br />
.tuner_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.radio_type = TUNER_INFINEON_TUA6030, //TUNER_PHILIPS_FM1216ME_MK3,<br />
.tuner_addr = 0x60, // i2c = 0xC0<br />
.radio_addr = 0x60, // i2c = 0xC0<br />
.tda9887_conf = TDA9887_PRESENT| TDA9887_PORT1_ACTIVE | TDA9887_PORT2_ACTIVE,<br />
.gpiomask = 0x0108000,<br />
.inputs = {{<br />
.name = name_tv,<br />
.vmux = 3,<br />
.amux = LINE2,<br />
.tv = 1,<br />
.gpio = 0, //enable remote<br />
},{<br />
.name = name_comp1, //ok n&b ?<br />
.vmux = 1,<br />
.amux = LINE1,<br />
},{<br />
.name = name_svideo,<br />
.vmux = 8,<br />
.amux = LINE1,<br />
}},<br />
.radio = {<br />
.name = name_radio,<br />
.amux = LINE2,<br />
},<br />
.mute = {<br />
.name = name_mute,<br />
.amux = LINE1,<br />
.gpio = 0, //enable remote<br />
},<br />
},</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic_TV_FM&diff=18422
PC-Basic TV FM
2008-12-05T00:14:28Z
<p>Tpruvot: New page: Cheap Analog PCI Card, with Composite, SVIDEO inputs, Audio In, Audio Out and Remote Control ports This card contains : * No EEPROM * SAA7130 * Tuner Infineon TUA6030 PAL/FM (compatible w...</p>
<hr />
<div>Cheap Analog PCI Card, with Composite, SVIDEO inputs, Audio In, Audio Out and Remote Control ports<br />
<br />
This card contains :<br />
* No EEPROM<br />
* SAA7130<br />
* Tuner Infineon TUA6030 PAL/FM (compatible with Philips Tuner 38.)<br />
* Remote Control IC (PIC16F84A code protected)</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic&diff=18418
PC-Basic
2008-12-04T03:25:29Z
<p>Tpruvot: </p>
<hr />
<div>PC-Basic is a French trademark from Graphics.<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''DVB Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TNT USB Basic]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=33&Itemid=214]<br />
! DVB-T (HD too?) USB Key based on [[E3C EC168]] and Maxlinear MxL5003<br />
! -- not supported --<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Hybrid (Analog + Digital) Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Analog devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TV FM]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=331&Itemid=1757]<br />
! PAL/SECAM/NTSC and FM PCI card based on [[SAA7130]] and [[TUA6030]]<br />
! -- supported ? --<br />
|}<br />
<br />
* [[PC-Basic TV FM]] working but not integrated in kernel souces, see [http://tanguy.ath.cx/index.php?q=SAA7130]<br />
<br />
== External Links ==<br />
* [http://www.graphics-france.com/ Graphics homepage]<br />
<br />
[[Category:Vendor]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic&diff=18417
PC-Basic
2008-12-04T03:24:44Z
<p>Tpruvot: </p>
<hr />
<div>PC-Basic is a French trademark from Graphics.<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''DVB Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TNT USB Basic]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=33&Itemid=214]<br />
! DVB-T (HD too?) USB Key based on [[EC168]] and Maxlinear MxL5003<br />
! -- not supported --<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Hybrid (Analog + Digital) Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Analog devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
! style="background:#ffdead;" | Supported<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TV FM]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=331&Itemid=1757]<br />
! PAL/SECAM/NTSC and FM PCI card based on [[SAA7130]] and [[TUA6030]]<br />
! -- supported ? --<br />
|}<br />
<br />
* [[PC-Basic TV FM]] working but not integrated in kernel souces, see [http://tanguy.ath.cx/index.php?q=SAA7130]<br />
<br />
== External Links ==<br />
* [http://www.graphics-france.com/ Graphics homepage]<br />
<br />
[[Category:Vendor]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic&diff=18416
PC-Basic
2008-12-04T03:20:53Z
<p>Tpruvot: </p>
<hr />
<div>PC-Basic is a French trademark from Graphics.<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''DVB Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TNT USB Basic]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=33&Itemid=214]<br />
! -- not supported --<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Hybrid (Analog + Digital) Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Analog devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TV FM]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=331&Itemid=1757]<br />
! -- supported ? --<br />
|}<br />
<br />
* [[PC-Basic TV FM]] working but not integrated in kernel souces, see [http://tanguy.ath.cx/index.php?q=SAA7130]<br />
<br />
== External Links ==<br />
* [http://www.graphics-france.com/ Graphics homepage]<br />
<br />
[[Category:Vendor]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=PC-Basic&diff=18415
PC-Basic
2008-12-04T03:19:10Z
<p>Tpruvot: New page: PC-Basic is a French trademark from Graphics. {| border="1" cellpadding="5" cellspacing="0" align="center" |+'''DVB Devices''' |- ! style="background:#ffdead;" | Device ! style="backgrou...</p>
<hr />
<div>PC-Basic is a French trademark from Graphics.<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''DVB Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Hybrid (Analog + Digital) Devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
|}<br />
<br />
<br />
{| border="1" cellpadding="5" cellspacing="0" align="center"<br />
|+'''Analog devices'''<br />
|-<br />
! style="background:#ffdead;" | Device<br />
! style="background:#ffdead;" | Description<br />
|-<br />
! style="background:#efefef;" | [[PC-Basic TV FM]] [http://www.graphics-france.com/index.php?option=com_content&task=view&id=331&Itemid=1757]<br />
! -- supported ? --<br />
|-<br />
|}<br />
<br />
* [[PC-Basic TV FM]] working but not integrated in kernel souces, see [http://tanguy.ath.cx/index.php?q=SAA7130]<br />
<br />
== External Links ==<br />
* [http://www.graphics-france.com/ Graphics homepage]<br />
<br />
[[Category:Vendor]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=List_of_device_vendors&diff=18414
List of device vendors
2008-12-04T03:12:55Z
<p>Tpruvot: </p>
<hr />
<div>{| class="wikitable sortable" <br />
|+'''A Sortable Table of Device Vendors'''<br />
|-<br />
! Vendor !! Headquarters !! Analog !! Digital !!class="unsortable"| Comments<br />
|-<br />
| [[ADS Tech]] || Taiwan || {{Yes}} || {{Yes}} || Sells DVB-T and ATSC HDTV devices<br />
|-<br />
| [[Anysee]] || Korea || || {{Yes}} || sells DVB USB devices<br />
|-<br />
| [[AOpen]] || || || ||<br />
|-<br />
| [[Artec]] || Taiwan || || {{Yes}} || manufactures and sells DVB USB devices<br />
|-<br />
| [[ASUS]] || Taiwan || {{Yes}} || {{Yes}} || Sells DVB-T PCI cards<br />
|-<br />
| [[ATI/AMD]] || || || ||<br />
|-<br />
| [[AVerMedia]] || Taiwan || {{Yes}} || {{Yes}} || <br />
|-<br />
| [[BBTI]] || || || ||<br />
|-<br />
| [[Blackgold]] || G.B. || {{Yes}} || {{Yes}} || analog, DVB-T & DVB-S devices with PCI, PCI-E or USB<br />
|-<br />
| [[Compro Technology]] || U.S. || {{Yes}} || {{Yes}} || sells analogue TV and DVB-T USB devices<br />
|-<br />
| [[Digital Everywhere]] || Austria || || {{Yes}} || sells DVB FireWire devices<br />
|-<br />
| [[DViCO]] || Korea || || {{Yes}} || produces DVB and ATSC devices<br />
|-<br />
| [[Elgato]] || Germany || || {{Yes}} || produces FireWire & USB DVB devices<br />
|-<br />
| [[Fujitsu Siemens]] || Netherlands || || {{Yes}} || picked up where Siemens left off<br />
|-<br />
| [[Galaxis Technology AG]] || || || ||<br />
|-<br />
| [[Geniatech]] || China || || ||<br />
|-<br />
| [[Hama]] || Germany || || {{Yes}} || re-sells DVB PCI and USB devices (Twinhan)<br />
|-<br />
| [[Hauppauge]] || U.S. || {{Yes}} || {{Yes}} || Some digital TV boards manufactured prior to 2005 were rebranded TechnTrend cards<br />
|-<br />
| [[KNC1]] || Germany || || {{Yes}} || produces DVB PCI cards<br />
|-<br />
| [[KWorld]] || Taiwan || {{Yes}} || {{Yes}} || sells DVB PCI and USB devices<br />
|-<br />
| [[Leadtek]] || Taiwan || {{Yes}} || {{Yes}} || sells DVB cards as well as other computer devices<br />
|-<br />
| [[LifeView]] || Taiwan || {{Yes}} || {{Yes}} || sells all kind of TV cards you can image<br />
|-<br />
| [[Medion]] || || || ||<br />
|-<br />
| [[Miglia]] || || || {{Yes}} || Sells DVB-T USB and ExpressCard devices and ATSC USB devices for Macintosh<br />
|-<br />
| [[MSI]] || || || ||<br />
|-<br />
| [[Nebula]] || U.K. || || {{Yes}} || produces DVB PCI and USB devices<br />
|-<br />
| [[NEOTION]] || || || ||<br />
|-<br />
| [[PCBasic]] || French || {{Yes}} || {{Yes}} || Cheap Line of AV,TV,DVB-T,USB devices distributed by [[Graphics]]<br />
|-<br />
| [[pcHDTV]] || U.S. || {{No}} || {{Yes}} || produces [[ATSC]] cards with explicit Linux Support<br />
|-<br />
| [[Pinnacle]] || || || <br />
|-<br />
| [[Pixelview]] || || || ||<br />
|-<br />
| [[Plextor]] || || || ||<br />
|-<br />
| [[Satelco]] || || || ||<br />
|-<br />
| [[Siano Mobile Silicon]] || Israel || {{No}} || {{Yes}} || DVB-T/H, T-DMB/DAB, CMMB, ISDB-T chip-sets, USB, SPP, SDIO, HIF, GSP, TS interfaces<br />
|-<br />
| [[Siemens]] || Germany || || {{Yes}} || Designed one of the first DVB cards<br />
|-<br />
| [[SIGMACOM]] || Korea || {{Yes}} || {{Yes}} || sells [[ATSC]] PCI cards and USB devices<br />
|-<br />
| [[Skydigital]] || Korea || || {{Yes}} || sells an [[ATSC]] PCI card<br />
|-<br />
| [[TechniSat]] || Germany || || {{Yes}} || sells PCI cards, USB devices and set-top boxes<br />
|-<br />
| [[TechnoTrend]] || Germany || || {{Yes}} || cards are often rebranded by others (eg. older [[Hauppauge]] devices)<br />
|-<br />
| [[TerraTec]] || Germany || {{Yes}} || {{Yes}} || produces and sells audio, video and analog and digital TV peripherals<br />
|-<br />
| [[TwinHan|TwinHan Technology Co. Ltd]] || Taiwan || || {{Yes}} || manufactures and sells DVB PCI and USB devices<br />
|-<br />
| [[VBox]] || || || ||<br />
|-<br />
| [[Wayjet Technology Inc]] || Taiwan || || {{Yes}} || manufactures and sells DVB PCI devices<br />
|-<br />
|}<br />
<br />
* Encore (analog)<br />
* [[Gateway or 3Dfx TV-FM AKA STB OEM]]<br />
* USBGear (analog)<br />
* V-Gear (analog) <br />
<br />
[[Category:Vendor|!DVB Device Vendors]]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=18392
E3C EC168
2008-12-03T17:53:58Z
<p>Tpruvot: /* EC168 Devices */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name e3C Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689/18b4:fffb)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
* ZAP DVB-T USB stick <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:DUTV009_PCB.jpg|thumb|300px]]<br />
<br />
No eeprom in this one <br />
<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Product Page]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar TVGo_Genius.rar]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168 dfu-ec168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);<br />
// to know if firmware is ready<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
// read eeprom ?<br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
// set IR Key ?<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=File:DUTV007B.JPG&diff=17979
File:DUTV007B.JPG
2008-11-26T19:29:43Z
<p>Tpruvot: </p>
<hr />
<div>EC168 Based DVB-T Usb Key <br />
<br />
Errata : EEPROM has 256Bytes (2K-bit)(not 512KB)</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17978
E3C EC168
2008-11-26T19:24:52Z
<p>Tpruvot: /* EC168 Devices */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name e3C Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
* ZAP DVB-T USB stick <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:DUTV009_PCB.jpg|thumb|300px]]<br />
<br />
No eeprom in this one <br />
<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Product Page]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar TVGo_Genius.rar]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168 dfu-ec168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);<br />
// to know if firmware is ready<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
// read eeprom ?<br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
// set IR Key ?<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17977
E3C EC168
2008-11-26T19:22:56Z
<p>Tpruvot: /* Known USB requests */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name e3C Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:DUTV009_PCB.jpg|thumb|300px]]<br />
<br />
No eeprom in this one <br />
<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Product Page]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar TVGo_Genius.rar]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168 dfu-ec168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0,1,buffer,1);<br />
// to know if firmware is ready<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
// read eeprom ?<br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
// set IR Key ?<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17976
E3C EC168
2008-11-26T19:19:10Z
<p>Tpruvot: /* Uploading Firmware to the device */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name e3C Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:DUTV009_PCB.jpg|thumb|300px]]<br />
<br />
No eeprom in this one <br />
<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Product Page]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar TVGo_Genius.rar]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* EC168 '''D'''irect '''F'''irmware '''U'''pload tool based on libusb by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168 dfu-ec168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17975
E3C EC168
2008-11-26T19:17:55Z
<p>Tpruvot: </p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name e3C Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:DUTV009_PCB.jpg|thumb|300px]]<br />
<br />
No eeprom in this one <br />
<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Product Page]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar TVGo_Genius.rar]<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* EC168 Firmware utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168 dfu-ec168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17974
E3C EC168
2008-11-26T19:14:53Z
<p>Tpruvot: /* DUTV009 SinoVideo 3420A-2 */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name EC3 Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:DUTV009_PCB.jpg|thumb|300px]]<br />
<br />
No eeprom in this one <br />
<br />
* [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
* [http://www.szforwardvideo.com/product/Pro_5_7.html Product Page]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17973
E3C EC168
2008-11-26T19:14:38Z
<p>Tpruvot: /* DUTV009 SinoVideo 3420A-2 */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name EC3 Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===DUTV009 SinoVideo 3420A-2===<br />
[[Image:DUTV009_PCB.jpg|thumb|300px]]<br />
<br />
No eeprom in this one <br />
[http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2 A Linux owner site]<br />
[http://www.szforwardvideo.com/product/Pro_5_7.html Product Page]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=File:DUTV009_PCB.jpg&diff=17972
File:DUTV009 PCB.jpg
2008-11-26T19:12:37Z
<p>Tpruvot: ForwardVideo DUTV009 PCB</p>
<hr />
<div>ForwardVideo DUTV009 PCB</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17971
E3C EC168
2008-11-26T19:10:01Z
<p>Tpruvot: /* SinoVideo 3420A-2 */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name EC3 Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===DUTV009 SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG|thumb|200px]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17970
E3C EC168
2008-11-26T19:00:57Z
<p>Tpruvot: /* External Links */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name EC3 Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]<br />
* [http://www.szforwardvideo.com/product/product_List_7.html Forwardvideo DUTV***/EzTV*** Products Page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17969
E3C EC168
2008-11-26T18:57:48Z
<p>Tpruvot: /* EC168 Devices */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name EC3 Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV009 SinoVideo 3420A-2 with [[MXL5003S]] but no eeprom (has USB ID 18b4:1689)<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17968
E3C EC168
2008-11-26T18:52:23Z
<p>Tpruvot: /* DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4) */</p>
<hr />
<div>An USB controller, that also contains an embedded [[DVB-T]] [[demodulator]], produced by Tai-Hui and marketed under the brand name EC3 Technologies. <br />
<br />
This IC is used in many cheap [[DVB-T]] [[DVB-T USB Devices|USB Sticks]]. It is currently unsupported under Linux.<br />
<br />
==EC168 Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (for devices with a second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02N I²C 0xA0 (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered<br />
<br />
<br />
==External Links==<br />
* [http://www.e3ctech.com/index.html E3C tech product page]</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17965
E3C EC168
2008-11-26T04:21:39Z
<p>Tpruvot: /* DUTV07B USB TNT Basic LIGHT (GRTNTUSBV4) */</p>
<hr />
<div>The E3C EC168 is used in many cheap DVB-T Sticks.<br />
It is currently unsupported under Linux.<br />
<br />
==DVB-T Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV007B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02 I²C (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17964
E3C EC168
2008-11-26T04:20:09Z
<p>Tpruvot: /* DUTV07B USB TNT Basic LIGHT (GRTNTUSBV4) */</p>
<hr />
<div>The E3C EC168 is used in many cheap DVB-T Sticks.<br />
It is currently unsupported under Linux.<br />
<br />
==DVB-T Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV07B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|200px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02 I²C (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17963
E3C EC168
2008-11-26T04:19:51Z
<p>Tpruvot: /* DUTV07B USB TNT Basic LIGHT (GRTNTUSBV4) */</p>
<hr />
<div>The E3C EC168 is used in many cheap DVB-T Sticks.<br />
It is currently unsupported under Linux.<br />
<br />
==DVB-T Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV07B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
<br />
[[Image:DUTV007B.JPG|thumb|300px]]<br />
<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02 I²C (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17962
E3C EC168
2008-11-26T04:19:38Z
<p>Tpruvot: /* DUTV07B USB TNT Basic LIGHT (GRTNTUSBV4) */</p>
<hr />
<div>The E3C EC168 is used in many cheap DVB-T Sticks.<br />
It is currently unsupported under Linux.<br />
<br />
==DVB-T Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV07B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
[[Image:DUTV007B.JPG|thumb|300px]]<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02 I²C (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17961
E3C EC168
2008-11-26T04:19:18Z
<p>Tpruvot: /* DUTV07B USB TNT Basic LIGHT (GRTNTUSBV4) */</p>
<hr />
<div>The E3C EC168 is used in many cheap DVB-T Sticks.<br />
It is currently unsupported under Linux.<br />
<br />
==DVB-T Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV07B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02 I²C (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
<br />
[[Image:DUTV007B.JPG|thumb|300px]]<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17960
E3C EC168
2008-11-26T04:18:59Z
<p>Tpruvot: /* DUTV07B USB TNT Basic LIGHT (GRTNTUSBV4) */</p>
<hr />
<div>The E3C EC168 is used in many cheap DVB-T Sticks.<br />
It is currently unsupported under Linux.<br />
<br />
==DVB-T Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV07B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02 I²C (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
[[Image:DUTV007B.JPG|thumb|300px]]<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=File:DUTV007B.JPG&diff=17959
File:DUTV007B.JPG
2008-11-26T04:16:01Z
<p>Tpruvot: EC168 Based DVB-T Usb Key</p>
<hr />
<div>EC168 Based DVB-T Usb Key</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17956
E3C EC168
2008-11-26T03:42:57Z
<p>Tpruvot: /* GRTNTUSBV4 USB TNT Basic LIGHT */</p>
<hr />
<div>The E3C EC168 is used in many cheap DVB-T Sticks.<br />
It is currently unsupported under Linux.<br />
<br />
==DVB-T Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===DUTV07B USB TNT Basic LIGHT (GRTNTUSBV4)===<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller, could be also a preprogrammed AVR or PIC)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02 I²C (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
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) <br />
<br />
Maybe the next (5th) version (which has the same enclosure) but also named dutv005 [http://sites.google.com/site/moosyresearch/dutv005]<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17955
E3C EC168
2008-11-26T03:41:26Z
<p>Tpruvot: </p>
<hr />
<div>The E3C EC168 is used in many cheap DVB-T Sticks.<br />
It is currently unsupported under Linux.<br />
<br />
==DVB-T Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (second tuner).<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* DUTV007B USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* SKU08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* ??????? ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa <br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===GRTNTUSBV4 USB TNT Basic LIGHT===<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02 I²C (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
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) <br />
<br />
Maybe the next (5th) version (which has the same enclosure) but also named dutv005 [http://sites.google.com/site/moosyresearch/dutv005]<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17951
E3C EC168
2008-11-26T01:48:16Z
<p>Tpruvot: /* Known USB requests */</p>
<hr />
<div>The E3C EC168 is used in many cheap DVB-T Sticks.<br />
It is currently unsupported under Linux.<br />
<br />
==DVB-T Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (second tuner).<br />
* SinoVideo 3420A-2 DVB-T USB TV stick with [[MXL5003S]] tuner S/N:SV07113420A01555 18b4:1689<br />
* SKU 08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* GRTNTUSBV4 USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa<br />
<br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===GRTNTUSBV4 USB TNT Basic LIGHT===<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02 I²C (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
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) <br />
<br />
Maybe the next (5th) version (which has the same enclosure) but also named dutv005 [http://sites.google.com/site/moosyresearch/dutv005]<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
// disable/enable streaming <br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED<br />
// indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered</div>
Tpruvot
https://www.linuxtv.org/wiki/index.php?title=E3C_EC168&diff=17950
E3C EC168
2008-11-26T01:47:36Z
<p>Tpruvot: /* Known USB requests */</p>
<hr />
<div>The E3C EC168 is used in many cheap DVB-T Sticks.<br />
It is currently unsupported under Linux.<br />
<br />
==DVB-T Devices==<br />
<br />
Known USB IDs are 18b4:1689, 18b4:fffa, 18b4:fffb, 18b4:1001 and 18b4:1002 (second tuner).<br />
* SinoVideo 3420A-2 DVB-T USB TV stick with [[MXL5003S]] tuner S/N:SV07113420A01555 18b4:1689<br />
* SKU 08309 USB DVB-T TV Dongle with Remote from DealExtreme uses this chip and has USB ID 18b4:1689.<br />
* GRTNTUSBV4 USB TNT Basic LIGHT from PC-Basic (Graphics) with [[MXL5003S]] tuner and has USB ID 18b4:1001.<br />
* DUTV002 Shen Zhen MinTV-DVB-T Stick 18b4:1001<br />
* ZAP DVB-T USB stick <br />
* MM002V2 Sweex MM002V2 Microtune [[MT2060]] silicon tuner 18b4:1689<br />
* Tvisto USB DVB-T with [[MXL5003S]] tuner 18b4:fffa<br />
<br />
<br />
Without drivers, ubuntu 8.10 detect the dongle as an USB Keyboard :<br />
[ 8.729023] usb 3-2: new high speed USB device using ehci_hcd and address 2<br />
[ 8.844654] usb 3-2: configuration #1 chosen from 1 choice<br />
[ 8.844992] usb 3-2: New USB device found, idVendor=18b4, idProduct=1001<br />
[ 8.844994] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0<br />
[ 8.919832] input: HID 18b4:1001 as /devices/pci0000:00/0000:00:04.1/usb3/3-2/3-2:1.0/input/input5<br />
[ 8.922137] input,hidraw4: USB HID v1.11 Keyboard [HID 18b4:1001] on usb-0000:00:04.1-2<br />
<br />
===SinoVideo 3420A-2===<br />
No eeprom in this one [[Image:http://plone.lucidsolutions.co.nz/dvb/t/usb/images/SV-3420A%20-PCB%20top.JPG]]<br />
Links: [http://plone.lucidsolutions.co.nz/dvb/t/usb/sinovideo-3420a-2]<br />
<br />
===SKU 08309 USB DVB-T Dongle===<br />
SKU 08309 USB DVB-T Dongle requires Firmware-File called EC168BDA.bin contained in Windows Driver [http://www.e3ctech.com/download/TVGo_Genius.rar]<br />
Produced by E3C [http://www.e3ctech.com/products.html] (Tai-Hui Inc)<br />
<br />
===GRTNTUSBV4 USB TNT Basic LIGHT===<br />
Same USB descriptors as SinoVideo 3420A-2, but with another PID... IR is detected directly by the hidraw driver (usbhid)<br />
<br />
The PC-Basic v4 USB Stick contains following chips :<br />
* EC168 (USB 2.0 µ-controller)<br />
* [[Maxlinear]] [[MXL5003S]] Tuner [http://www.maxlinear.com/page.cfm?page=5003S]<br />
* EEPROM 24C02 I²C (256 Bytes) [http://www.datasheetcatalog.com/datasheets_pdf/2/4/C/0/24C02.shtml]<br />
<br />
The windows driver also upload a 7109-bytes sized firmware (EC168BDA.bin) to get the device working...<br />
<br />
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) <br />
<br />
Maybe the next (5th) version (which has the same enclosure) but also named dutv005 [http://sites.google.com/site/moosyresearch/dutv005]<br />
<br />
==Uploading Firmware to the device==<br />
* Firmware upload/download utility by Tanguy Pruvot : [http://tanguy.ath.cx/index.php?q=EC168]<br />
<br />
==Known USB requests==<br />
<br />
#define CMD_EC168_RAM 0x00 //RW- Read/Write RAM (Firmware go to addr 0-0x1EFF)<br />
#define CMD_EC168_GETSTATUS 0x01 //R-- ex: dfu_ctrl_get(device,0x01,0x0000,0x01A0,buffer,0x1A);<br />
#define CMD_EC168_STREAM 0x03 //R-X ex: dfu_ctrl(device,0x03,0/0x20,0xFF00);<br />
//disable/enable streaming read_status: ? Ci:C003 0000 FF01 0001<br />
#define CMD_EC168_SET_POWER 0x04 //--X ex: dfu_ctrl(device,0x04,0/1,0x0008);<br />
// disable/enable LED //indexes seen: 206,208,8,9,A,B<br />
#define CMD_EC168_UNKNOWN 0x10 //--X ???<br />
#define CMD_EC168_READ_BUF 0x20 //R-- ex: dfu_ctrl_get(device,0x20,0x0000,0x01A0,buffer,0x1A); <br />
#define CMD_EC168_WRITE_BUF 0x21 //-W- <br />
#define CMD_EC168_SET 0x30 //--X ex: dfu_ctrl(device, 0x30, 0x0709, 0x1A);<br />
<br />
==Identification==<br />
USB subsytem ID is: 18b4:1001<br />
<br />
output of 'lsusb -vv -d 18b4:1001':<br />
<br />
Device Descriptor:<br />
bLength 18<br />
bDescriptorType 1<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
idVendor 0x18b4<br />
idProduct 0x1001<br />
bcdDevice 0.02<br />
iManufacturer 0<br />
iProduct 0<br />
iSerial 0<br />
bNumConfigurations 1<br />
Configuration Descriptor:<br />
bLength 9<br />
bDescriptorType 2<br />
wTotalLength 50<br />
bNumInterfaces 2<br />
bConfigurationValue 1<br />
iConfiguration 0<br />
bmAttributes 0x80<br />
(Bus Powered)<br />
MaxPower 100mA<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 0<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 3 Human Interface Device<br />
bInterfaceSubClass 1 Boot Interface Subclass<br />
bInterfaceProtocol 1 Keyboard<br />
iInterface 0<br />
HID Device Descriptor:<br />
bLength 9<br />
bDescriptorType 33<br />
bcdHID 1.11<br />
bCountryCode 0 Not supported<br />
bNumDescriptors 1<br />
bDescriptorType 34 Report<br />
wDescriptorLength 63<br />
Report Descriptors:<br />
** UNAVAILABLE **<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x81 EP 1 IN<br />
bmAttributes 3<br />
Transfer Type Interrupt<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0008 1x 8 bytes<br />
bInterval 7<br />
Interface Descriptor:<br />
bLength 9<br />
bDescriptorType 4<br />
bInterfaceNumber 1<br />
bAlternateSetting 0<br />
bNumEndpoints 1<br />
bInterfaceClass 255 Vendor Specific Class<br />
bInterfaceSubClass 255 Vendor Specific Subclass<br />
bInterfaceProtocol 255 Vendor Specific Protocol<br />
iInterface 0<br />
Endpoint Descriptor:<br />
bLength 7<br />
bDescriptorType 5<br />
bEndpointAddress 0x82 EP 2 IN<br />
bmAttributes 2<br />
Transfer Type Bulk<br />
Synch Type None<br />
Usage Type Data<br />
wMaxPacketSize 0x0200 1x 512 bytes<br />
bInterval 0<br />
Device Qualifier (for other device speed):<br />
bLength 10<br />
bDescriptorType 6<br />
bcdUSB 2.00<br />
bDeviceClass 0 (Defined at Interface level)<br />
bDeviceSubClass 0<br />
bDeviceProtocol 0<br />
bMaxPacketSize0 64<br />
bNumConfigurations 1<br />
Device Status: 0x0001<br />
Self Powered</div>
Tpruvot