Difference between revisions of "TerraTec Cinergy T Stick+"

From LinuxTVWiki
Jump to: navigation, search
(Cosmetic fix)
(Entirely reworked to match the "New Device" template)
 
Line 1: Line 1:
  +
[[Image:TerraTec_Cinergy_TStick+_feont.jpg|right|thumb|200px|TerraTec Cinergy TStick+]]
'''[[TerraTec]] Cinergy T Stick+''' is a [[USB|USB 2.0]] [[DVB-T]] with device id 0ccd:00d7 based on Realtek [http://www.realtek.com.tw/products/productsView.aspx?Langid=1&PFid=35&Level=4&Conn=3&ProdID=257 RTL2832U] and the tuner [http://www.superkuh.com/gnuradio/Elonics-E4000-Low-Power-CMOS-Multi-Band-Tunner-Datasheet.pdf Elonic E4000]
 
   
  +
An [[DVB-T]] [[USB]] stick from [[TerraTec]].
Foreword: [[TerraTec Cinergy T Stick]] / 0ccd:00aa is a different device, based on Afatech AF9035
 
  +
  +
The TerraTec Cinergy TStick+ 0ccd:00d7 is supported under Linux since kernel 3.7 (source [http://palosaari.fi/linux/ Antti Palosaari])
  +
  +
==Overview/Features==
  +
  +
* USB interface
  +
* Inputs: Antenna (Coaxial), Infrared Remote
  +
  +
===Components Used===
  +
  +
* Elonics E4000 (tuner)
  +
* [[RealTek_RTL2832U|Realtek RTL2832U]] (demodulator)
  +
  +
===Other Images===
  +
<gallery perrow=5>
  +
File:TerraTec_Cinergy_TStick+_box.jpg|TerraTec Cinergy TStick+ box
  +
File:TerraTec_Cinergy_TStick+_antenna.jpg|TerraTec Cinergy TStick+ antenna
  +
</gallery>
  +
  +
===Identification===
  +
<pre>
  +
$ lsusb -v -d 0ccd:00d7
  +
  +
Bus 001 Device 002: ID 0ccd:00d7 TerraTec Electronic GmbH
  +
Device Descriptor:
  +
bLength 18
  +
bDescriptorType 1
  +
bcdUSB 2.00
  +
bDeviceClass 0 (Defined at Interface level)
  +
bDeviceSubClass 0
  +
bDeviceProtocol 0
  +
bMaxPacketSize0 64
  +
idVendor 0x0ccd TerraTec Electronic GmbH
  +
idProduct 0x00d7
  +
bcdDevice 1.00
  +
iManufacturer 1 Realtek
  +
iProduct 2 RTL2838UHIDIR
  +
iSerial 3 00000001
  +
bNumConfigurations 1
  +
Configuration Descriptor:
  +
bLength 9
  +
bDescriptorType 2
  +
wTotalLength 34
  +
bNumInterfaces 2
  +
bConfigurationValue 1
  +
iConfiguration 4 USB2.0-Bulk&Iso
  +
bmAttributes 0x80
  +
(Bus Powered)
  +
MaxPower 500mA
  +
Interface Descriptor:
  +
bLength 9
  +
bDescriptorType 4
  +
bInterfaceNumber 0
  +
bAlternateSetting 0
  +
bNumEndpoints 1
  +
bInterfaceClass 255 Vendor Specific Class
  +
bInterfaceSubClass 255 Vendor Specific Subclass
  +
bInterfaceProtocol 255 Vendor Specific Protocol
  +
iInterface 5 Bulk-In, Interface
  +
Endpoint Descriptor:
  +
bLength 7
  +
bDescriptorType 5
  +
bEndpointAddress 0x81 EP 1 IN
  +
bmAttributes 2
  +
Transfer Type Bulk
  +
Synch Type None
  +
Usage Type Data
  +
wMaxPacketSize 0x0200 1x 512 bytes
  +
bInterval 0
  +
Interface Descriptor:
  +
bLength 9
  +
bDescriptorType 4
  +
bInterfaceNumber 1
  +
bAlternateSetting 0
  +
bNumEndpoints 0
  +
bInterfaceClass 255 Vendor Specific Class
  +
bInterfaceSubClass 255 Vendor Specific Subclass
  +
bInterfaceProtocol 255 Vendor Specific Protocol
  +
iInterface 5 Bulk-In, Interface
  +
Device Qualifier (for other device speed):
  +
bLength 10
  +
bDescriptorType 6
  +
bcdUSB 2.00
  +
bDeviceClass 0 (Defined at Interface level)
  +
bDeviceSubClass 0
  +
bDeviceProtocol 0
  +
bMaxPacketSize0 64
  +
bNumConfigurations 2
  +
Device Status: 0x0000
  +
(Bus Powered)
  +
</pre>
  +
  +
==Making it Work==
  +
In case you have an earlier kernel version than 3.7, you might build the module as follow:
   
 
First check that you have the right device
 
First check that you have the right device
Line 9: Line 103:
 
</pre>
 
</pre>
   
  +
In such case, get the latest sources
Supported from Linux kernel 3.7 onwards (source [http://palosaari.fi/linux/ Antti Palosaari])
 
 
In case you have an earlier kernel version, you might build the module as follow:
 
 
 
<pre>
 
<pre>
 
$ git clone git://linuxtv.org/media_build.git
 
$ git clone git://linuxtv.org/media_build.git
Line 101: Line 192:
   
 
NOTE 2: Even if my device is recognized, I did not successifully managed to view a television channel - I'll get back and edit this page once I've more insight. (your help is welcome as well !)
 
NOTE 2: Even if my device is recognized, I did not successifully managed to view a television channel - I'll get back and edit this page once I've more insight. (your help is welcome as well !)
  +
  +
===Firmware===
  +
No firmware required
  +
  +
===Drivers===
  +
Module dvb_usb_rtl28xxu
  +
  +
===Sample Kernel Output===
  +
<pre>
  +
$ dmesg
  +
[ 3.079220] usb 1-5: DVB: registering adapter 0 frontend 0 (Realtek RTL2832 (DVB-T))...
  +
[ 3.104370] i2c i2c-14: e4000: Elonics E4000 successfully identified
  +
[ 3.117834] Registered IR keymap rc-empty
  +
[ 3.117966] input: TerraTec Cinergy T Stick+ as /devices/pci0000:00/0000:00:1d.7/usb1/1-5/rc/rc0/input6
  +
[ 3.118034] rc0: TerraTec Cinergy T Stick+ as /devices/pci0000:00/0000:00:1d.7/usb1/1-5/rc/rc0
  +
[ 3.118040] usb 1-5: dvb_usb_v2: schedule remote query interval to 400 msecs
  +
[ 3.134200] usb 1-5: dvb_usb_v2: 'TerraTec Cinergy T Stick+' successfully initialized and connected
  +
</pre>
  +
  +
===Remote Control Support===
  +
Supposed to receive infrared commands based on the NEC protocol - not tested.
  +
  +
<pre>
  +
$ sudo /usr/bin/ir-keytable -s `/bin/ls -1 /sys/class/rc | /usr/bin/tail -1`
  +
Found /sys/class/rc/rc0/ (/dev/input/event6) with:
  +
Driver dvb_usb_rtl28xxu, table rc-empty
  +
Supported protocols: NEC
  +
Enabled protocols:
  +
Repeat delay = 500 ms, repeat period = 125 ms
  +
</pre>
  +
  +
==External Links==
  +
* [http://www.realtek.com.tw/products/productsView.aspx?Langid=1&PFid=35&Level=4&Conn=3&ProdID=257 Realtek RTL2832U demodulator]
  +
* [http://www.superkuh.com/gnuradio/Elonics-E4000-Low-Power-CMOS-Multi-Band-Tunner-Datasheet.pdf Elonic E4000 tuner]
  +
  +
[[Category:DVB-T USB Devices]]

Latest revision as of 09:30, 10 April 2013

An DVB-T USB stick from TerraTec.

The TerraTec Cinergy TStick+ 0ccd:00d7 is supported under Linux since kernel 3.7 (source Antti Palosaari)

Overview/Features

  • USB interface
  • Inputs: Antenna (Coaxial), Infrared Remote

Components Used

Other Images

Identification

$ lsusb -v -d 0ccd:00d7

Bus 001 Device 002: ID 0ccd:00d7 TerraTec Electronic GmbH 
Device Descriptor:
	bLength                18
	bDescriptorType         1
	bcdUSB               2.00
	bDeviceClass            0 (Defined at Interface level)
	bDeviceSubClass         0 
	bDeviceProtocol         0 
	bMaxPacketSize0        64
	idVendor           0x0ccd TerraTec Electronic GmbH
	idProduct          0x00d7 
	bcdDevice            1.00
	iManufacturer           1 Realtek
	iProduct                2 RTL2838UHIDIR
	iSerial                 3 00000001
	bNumConfigurations      1
	Configuration Descriptor:
		bLength                 9
		bDescriptorType         2
		wTotalLength           34
		bNumInterfaces          2
		bConfigurationValue     1
		iConfiguration          4 USB2.0-Bulk&Iso
		bmAttributes         0x80
			(Bus Powered)
		MaxPower              500mA
		Interface Descriptor:
			bLength                 9
			bDescriptorType         4
			bInterfaceNumber        0
			bAlternateSetting       0
			bNumEndpoints           1
			bInterfaceClass       255 Vendor Specific Class
			bInterfaceSubClass    255 Vendor Specific Subclass
			bInterfaceProtocol    255 Vendor Specific Protocol
			iInterface              5 Bulk-In, Interface
			Endpoint Descriptor:
				bLength                 7
				bDescriptorType         5
				bEndpointAddress     0x81  EP 1 IN
				bmAttributes            2
					Transfer Type            Bulk
					Synch Type               None
					Usage Type               Data
				wMaxPacketSize     0x0200  1x 512 bytes
				bInterval               0
		Interface Descriptor:
			bLength                 9
			bDescriptorType         4
			bInterfaceNumber        1
			bAlternateSetting       0
			bNumEndpoints           0
			bInterfaceClass       255 Vendor Specific Class
			bInterfaceSubClass    255 Vendor Specific Subclass
			bInterfaceProtocol    255 Vendor Specific Protocol
			iInterface              5 Bulk-In, Interface
Device Qualifier (for other device speed):
	bLength                10
	bDescriptorType         6
	bcdUSB               2.00
	bDeviceClass            0 (Defined at Interface level)
	bDeviceSubClass         0 
	bDeviceProtocol         0 
	bMaxPacketSize0        64
	bNumConfigurations      2
Device Status:     0x0000
	(Bus Powered)

Making it Work

In case you have an earlier kernel version than 3.7, you might build the module as follow:

First check that you have the right device

$ lsusb -d 0ccd:00d7
Bus 001 Device 008: ID 0ccd:00d7 TerraTec Electronic GmbH

In such case, get the latest sources

$ git clone git://linuxtv.org/media_build.git

$ cd media_build

Then follow the instructions as described in the "README" file

Thereafter you might load the module:

$ sudo modprobe -v dvb_usb_rtl28xxu
insmod /lib/modules/3.2.0-39-generic-pae/kernel/drivers/media/dvb-core/dvb-core.ko 
insmod /lib/modules/3.2.0-39-generic-pae/kernel/drivers/media/dvb-frontends/rtl2830.ko 
insmod /lib/modules/3.2.0-39-generic-pae/kernel/drivers/media/rc/rc-core.ko 
insmod /lib/modules/3.2.0-39-generic-pae/kernel/drivers/media/usb/dvb-usb-v2/dvb_usb_v2.ko 
insmod /lib/modules/3.2.0-39-generic-pae/kernel/drivers/media/usb/dvb-usb-v2/dvb-usb-rtl28xxu.ko 

You might check using dvbsnoop

$ dvbsnoop -s feinfo
dvbsnoop V1.4.50 -- http://dvbsnoop.sourceforge.net/ 

---------------------------------------------------------
FrontEnd Info...
---------------------------------------------------------

Device: /dev/dvb/adapter0/frontend0

Basic capabilities:
    Name: "Realtek RTL2832 (DVB-T)"
    Frontend-type:       OFDM (DVB-T)
    Frequency (min):     174000.000 kHz
    Frequency (max):     862000.000 kHz
    Frequency stepsiz:   166.667 kHz
    Frequency tolerance: 0.000 kHz
    Symbol rate (min):     0.000000 MSym/s
    Symbol rate (max):     0.000000 MSym/s
    Symbol rate tolerance: 0 ppm
    Notifier delay: 0 ms
    Frontend capabilities:
        auto inversion
        FEC 1/2
        FEC 2/3
        FEC 3/4
        FEC 5/6
        FEC 7/8
        FEC AUTO
        QPSK
        QAM 16
        QAM 64
        QAM AUTO
        auto transmission mode
        auto guard interval
        auto hierarchy

Current parameters:
    Frequency:  0.000 kHz
    Inversion:  OFF
    Bandwidth:  AUTO
    Stream code rate (hi prio):  FEC AUTO
    Stream code rate (lo prio):  FEC AUTO
    Modulation:  QAM AUTO
    Transmission mode:  auto
    Guard interval:  auto
    Hierarchy:  auto

You may test you device using either dvbscan, scan, w_scan or tzap.

I've chosen Zap because it gives a quick feedback on the signal quality:

$ tzap 'la une'
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
reading channels from file '~/.tzap/channels.conf'
tuning to 754000000 Hz
video pid 0x0021, audio pid 0x0022
status 00 | signal bf81 | snr 0000 | ber 0000ffff | unc bf814ff8 | 
status 00 | signal bf81 | snr 0000 | ber 0000ffff | unc bf814ff8 | 
status 00 | signal bf81 | snr 0000 | ber 0000ffff | unc bf814ff8 | 
^C

NOTE 1: I've stopped the execution using control-c signal.

NOTE 2: Even if my device is recognized, I did not successifully managed to view a television channel - I'll get back and edit this page once I've more insight. (your help is welcome as well !)

Firmware

No firmware required

Drivers

Module dvb_usb_rtl28xxu

Sample Kernel Output

$ dmesg
[    3.079220] usb 1-5: DVB: registering adapter 0 frontend 0 (Realtek RTL2832 (DVB-T))...
[    3.104370] i2c i2c-14: e4000: Elonics E4000 successfully identified
[    3.117834] Registered IR keymap rc-empty
[    3.117966] input: TerraTec Cinergy T Stick+ as /devices/pci0000:00/0000:00:1d.7/usb1/1-5/rc/rc0/input6
[    3.118034] rc0: TerraTec Cinergy T Stick+ as /devices/pci0000:00/0000:00:1d.7/usb1/1-5/rc/rc0
[    3.118040] usb 1-5: dvb_usb_v2: schedule remote query interval to 400 msecs
[    3.134200] usb 1-5: dvb_usb_v2: 'TerraTec Cinergy T Stick+' successfully initialized and connected

Remote Control Support

Supposed to receive infrared commands based on the NEC protocol - not tested.

$ sudo /usr/bin/ir-keytable -s `/bin/ls -1 /sys/class/rc | /usr/bin/tail -1`
Found /sys/class/rc/rc0/ (/dev/input/event6) with:
	Driver dvb_usb_rtl28xxu, table rc-empty
	Supported protocols: NEC 
	Enabled protocols: 
	Repeat delay = 500 ms, repeat period = 125 ms

External Links