TBS5980 (aka TBS Qbox CI)

From LinuxTVWiki
Jump to navigation Jump to search

The Qbox DVB-S2 CI USB2.0, as the name suggests, is a DVB-S2 USB 2.0 adapter from TurboSight. It has been on the market since early 2011. The company has no distribution network, but their products can be ordered online. Shipping of my device to Western Europe took less than three days.

The Qbox DVB-S2 CI is supported under Linux. The minimum required kernel version is (yet) unknown, the driver requires DVB version 5.1.

The Qbox CI switched on. The CAM module has not been inserted

Overview/Features

  • USB 2.0 interface (B-connector)
  • Inputs: Antenna (F-connector), remote and CI-slot
  • Separate power supply: 7.5V, 3.5A
  • Indication LED, mostly red, sometimes blue, meaning yet unknown.

Components Used

Other Images

Identification

lsusb output:

# lsusb -v
Bus 001 Device 009: ID 734c:5980 TBS Technologies China 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x734c TBS Technologies China
  idProduct          0x5980 
  bcdDevice            0.00
  iManufacturer           1 TBS-Tech
  iProduct                2 DVBS2BOX
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               1
      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
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  bNumConfigurations      1
Device Status:     0x0000
  (Bus Powered)

Making it Work

The device is actively supported to run under Linux. Every few months the driver gets updated, and the company actively supports users through a forum. By downloading, compiling and installing the drivers and firmware, the device works (at least, in my distro, Fedora 14 x86-64). Together with the manufacturer-supplied source code for scanning and zapping (slightly modified versions of scan-s2 and szap-s2) DVB-S2 reception works. Newer versions of szap and scan work just as well.

Firmware

The driver software package contains the firmware file: dvb-usb-tbsqbox-id5980.fw. Just install it in /lib/firmware.

Drivers

Available here. Look for the TBS5980 driver. Latest update: july 10. Apart from the firmware file, there is no closed-source object code included in the software. All code has been released under GPLv2.

Sample Kernel Output

The kernel outputs the information below, CAM module inserted (with module verbosity wide open):

# dmesg
[18814.387092] usb 1-7: new high speed USB device using ehci_hcd and address 9
[18814.502322] usb 1-7: New USB device found, idVendor=734c, idProduct=5980
[18814.502334] usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[18814.502343] usb 1-7: Product: DVBS2BOX
[18814.502349] usb 1-7: Manufacturer: TBS-Tech
[18814.684522] dvb-usb: found a 'TBS Qbox DVB-S2 CI USB2.0' in cold state, will try to load a firmware
[18814.688745] dvb-usb: downloading firmware from file 'dvb-usb-tbsqbox-id5980.fw'
[18814.691532] tbsqbox2ci: start downloading TBSQBOX2CI firmware
[18814.810199] dvb-usb: found a 'TBS Qbox DVB-S2 CI USB2.0' in warm state.
[18814.810330] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
[18814.810751] DVB: registering new adapter (TBS Qbox DVB-S2 CI USB2.0)
[18815.048073] dvb-usb: MAC address: xx:xx:xx:xx:xx:xx (edited by me)
[18815.048077] 
[18815.050881] stv090x_attach: Create New Internal Structure!
[18815.156679] stv090x_attach: Attaching STV0903 demodulator(1) Cut=0x30
[18815.156689] tbsqbox2ci: Attached stv0903!
[18815.156692] 
[18815.157478] tbsqbox2ci: CI initialized.
[18815.157488] DVB: registering adapter 0 frontend 0 (STV090x Multistandard)...
[18815.157590] stb6100_attach: Attaching STB6100 
[18815.159811] input: IR-receiver inside an USB DVB receiver as /devices/pci0000:00/0000:00:1d.7/usb1/1-7/input/input12
[18815.159952] dvb-usb: schedule remote query interval to 150 msecs.
[18815.159961] dvb-usb: TBS Qbox DVB-S2 CI USB2.0 successfully initialized and connected.
[18815.160051] usbcore: registered new interface driver tbsqbox2ci
[18861.422201] tbsqbox2ci: CI enabled.
[18861.422211] dvb_ca adapter 0: DVB CAM detected and initialised successfully

To get maximum verbosity, relevant parts of /etc/modprobe.d/modprobe.conf were set as follows:

options dvb_usb debug=511
options dvb_usb_tbsqbox2ci debug=3
options stb6100 verbose=3
options stv090x verbose=3

Remote Control Support

The device comes with a remote, but that has not been tested yet. Tbsdtv forum members complain about poor interoperability with LIRC.

External Links

Issues

Remote control needs further research.

CAM support is underway. So far, the astoncrypt v1.07 has been tested. Before this can be finalized, a working smartcard is required. Haven't got one yet ;-).

Network support has not been addressed yet.