TechnoTrend TT-connect CT-3650 CI
Both the DVB-C and DVB-T part of the tuner are supported in current kernels. As of kernel 3.2, the CI interface is now also supported and can be used to decrypt pay-TV with the use of a CAM.
Log from initialization on kernel 3.2.5:
[ 9528.631071] usb 2-1.1: new high-speed USB device number 5 using ehci_hcd [ 9529.289469] IR NEC protocol handler initialized [ 9529.293534] IR RC5(x) protocol handler initialized [ 9529.296526] IR RC6 protocol handler initialized [ 9529.298099] dvb-usb: found a 'Technotrend TT-connect CT-3650' in warm state. [ 9529.298676] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer. [ 9529.298682] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer. [ 9529.298960] DVB: registering new adapter (Technotrend TT-connect CT-3650) [ 9529.299433] IR JVC protocol handler initialized [ 9529.302624] IR Sony protocol handler initialized [ 9529.308074] IR MCE Keyboard/mouse protocol handler initialized [ 9529.312022] lirc_dev: IR Remote Control driver registered, major 248 [ 9529.313240] IR LIRC bridge handler initialized [ 9529.315511] ttusb2: CI initialized. [ 9529.315520] DVB: registering adapter 0 frontend 0 (Philips TDA10023 DVB-C)... [ 9529.336842] DVB: registering adapter 0 frontend 1 (NXP TDA10048HN DVB-T)... [ 9529.362972] Registered IR keymap rc-tt-1500 [ 9529.363171] input: IR-receiver inside an USB DVB receiver as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/rc/rc0/input15 [ 9529.363616] rc0: IR-receiver inside an USB DVB receiver as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/rc/rc0 [ 9529.363623] dvb-usb: schedule remote query interval to 150 msecs. [ 9529.364156] dvb-usb: Technotrend TT-connect CT-3650 successfully initialized and connected. [ 9529.364198] usbcore: registered new interface driver dvb_usb_ttusb2 [ 9536.512472] dvb_ca adapter 0: Invalid PC card inserted :(
Beware that the initialization of the CAM in most cases will fail as seen above ("Invalid PC card inserted") due to the CAM being in sleep-mode. Once an application requests to use the CAM, it will wake up and get initialized automatically. The CI has been tested to work successfully with a DVB-T Viaccess 4.0 CAM (BoxerTV DK branded) and MythTV (v0.24 and v0.25); and AlphaCrypt Classic with MythTV 0.24-0.26. According to the developer of the driver, the CI should also work fine when using VDR for playback.
Many applications for DVB playback currently doesn't support the structure of the combined tuner, eg. with each DVB-C/T tuner having their own frontend devices (/dev/dvb/adaptor0/frontend0 and /dev/dvb/adaptor0/frontend1) while the other devices are shared between the tuners (/dev/dvb/adaptor0/demux0 exists, but there's no demux1). In such cases it might be needed to make a workaround with symbolic links, as mentioned in this mail on the linux-media list.
With this setup you will have bandwidth problems with no appropriate warning whatsoever on any log file. Except that video will look horrible.
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ohci_hcd/8p, 12M <-- USB1.1, slow, don't us /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/8p, 480M <-- one bus |__ Port 2: Dev 2, If 0, Class=vend., Driver=dvb_usb_ttusb2, 480M <-- 1st DVB device, shares bandwidth |__ Port 4: Dev 2, If 0, Class=vend., Driver=dvb_usb_ttusb2, 480M <-- 2nd DVB device, shares bandwidth
You can solve the above situation by adding a PCI-Express to USB3.0 card:
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M /: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M <-- one bus |__ Port 2: Dev 2, If 0, Class=vend., Driver=dvb_usb_ttusb2, 480M <-- one DVB device /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ohci_hcd/8p, 12M <-- USB1.1, slow, don't use /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/8p, 480M <-- one bus |__ Port 4: Dev 2, If 0, Class=vend., Driver=dvb_usb_ttusb2, 480M <-- one DVB device
Rule: One device per bus
$ sudo input-kbd 3 /dev/input/event3 bustype : BUS_USB vendor : 0xb48 product : 0x300d version : 257 name : "IR-receiver inside an USB DVB re" phys : "usb-0000:00:0b.1-4/ir0" bits ev : EV_SYN EV_KEY EV_MSC EV_REP map: 39 keys, size: 39/64 0x1501 = 116 # KEY_POWER 0x1502 = 410 # KEY_SHUFFLE 0x1503 = 2 # KEY_1 0x1504 = 3 # KEY_2 0x1505 = 4 # KEY_3 0x1506 = 5 # KEY_4 0x1507 = 6 # KEY_5 0x1508 = 7 # KEY_6 0x1509 = 8 # KEY_7 0x150a = 9 # KEY_8 0x150b = 10 # KEY_9 0x150c = 11 # KEY_0 0x150d = 103 # KEY_UP 0x150e = 105 # KEY_LEFT 0x150f = 352 # KEY_OK 0x1510 = 106 # KEY_RIGHT 0x1511 = 108 # KEY_DOWN 0x1512 = 358 # KEY_INFO 0x1513 = 174 # KEY_EXIT 0x1514 = 398 # KEY_RED 0x1515 = 399 # KEY_GREEN 0x1516 = 400 # KEY_YELLOW 0x1517 = 401 # KEY_BLUE 0x1518 = 113 # KEY_MIN_INTERESTING 0x1519 = 388 # KEY_TEXT 0x151a = 373 # KEY_MODE 0x1521 = 357 # KEY_OPTION 0x1522 = 365 # KEY_EPG 0x1523 = 402 # KEY_CHANNELUP 0x1524 = 403 # KEY_CHANNELDOWN 0x1525 = 115 # KEY_VOLUMEUP 0x1526 = 114 # KEY_VOLUMEDOWN 0x1527 = 141 # KEY_SETUP 0x153a = 167 # KEY_RECORD 0x153b = 207 # KEY_PLAY 0x153c = 128 # KEY_STOP 0x153d = 168 # KEY_REWIND 0x153e = 119 # KEY_PAUSE 0x153f = 159 # KEY_FORWARD