TBS5520 Multi-Standard Tuner Box and Linux Drivers

TBS Technologies is a company that specializes in digital TV tuner cards for PC, and recently they’ve also worked on ARM based boards or devices such as the Matrix 2. The company has sent me one of their TBS5520 USB tuner board and box supporting DVB-T2, DVB-S2, DVB-C and ISDB-T for evaluation, as well as some Linux drivers. Today, I’ll provide some specifications, take some pictures, and show how I compiled and installed the drivers in my Ubuntu 14.04 computer.

TBS 5520 Tuner Box specifications

TBS5520 is a multi-standard USB tuner with the following features:

  • USB – USB 2.0 device port
  • Antenna connectors – 1x LNB IN, 1x RF IN
  • Standards
    • DVB-S2/S
      • Symbol rate: 1~45Msps;
      • FEC
        •  DVB-S2: 8PSK: 3/5, 2/3, 3/4, 4/5, 5/6, 8/9, 9/10;
        • DVB-S:  QPSK: 1/2, 2/3, 3/4, 5/6, 7/8
    • DVB-T2/T 
      • Receiving channel: VHF band, UHF band;
      • Bandwidth: 1.7,5, 6, 7, 8 MHz;
      • FEC: QPSK, 16QAM, 64QAM, 256QAM
      • FFT mode: 1K, 2K, 4K, 8K, 16K, 32K
      • Code rate: 1/2, 3/5, 2/3, 3/4, 4/5, 5/6, 7/8
      • RF-Input impedance: 75Ω (IEC-DIN female)
    • DVB-C & ITU J83 A/B/C
      • Frequency range: 47~862 MHz
      • Signal level: -65~-10dBm
      • Symbol rate: 0.87 to 9Mbaud
      • QAM modes: 16QAM, 32QAM, 64QAM, 128QAM, 256QAM
    • ISDB-T
      • Supported modes: 1, 2, 3
      • Bandwidth: 6 MHz, 7MHz, 8MHz
      • QAM modes: DQPSK, QPSK, 16QAM, 64QAM
      • Code rate: 1/2, 2/3, 3/4, 5/6, 7/8
  • Misc – IR receiver, power LED
  • Dimensions – ~ 8 x 6 cm

TBS5520 Board and Box Pictures

The first time I received the board with a cable with Y USB cable.

TBS-5520_Tuner

Click to Enlarge
Click to Enlarge
DVB-S2_DVB-T2_Connectors
TBS 5520 Tuner Antenna’s Connectors
Click to Enlarge
Click to Enlarge

The shield is soldered, so I could not check the details of the tuner from the hardware, but as we”l see below with drivers to hardware includes RafaelMicro R848 multi-standard tuner and AVL6882 demodulator.

After your truly spent many hours struggling with the Linux drivers, the company informed me there was likely an issue with the hardware, so they sent me the full kit.
TBS5520_USB_Tuner

Click to Enlarge
Click to Enlarge

The kit has the same tuner board in a case, as well as the Y USB cable, a remote control, an indoor antenna, a coaxial to F-cable adapter, and a DVD with some documentation and software.

Building TBS5520 Drivers in Linux 3.x

I’m running Ubuntu 14.04.3 with kernel 3.18.xx on my computer, and if you connect the tuner, the USB is recognized:


But you don’t get anything in /dev/dvb, so you’ll need some drivers. So TBS provided me with a patch for Linux 3.x (Linux 4.x is currently WIP), and told me to “build it the usual way”. So I decided to do so on my computer instead of an ARM board, as I thought it might be easier…

I basically followed the instructions I wrote in “How to build a single kernel driver in Ubuntu“. I had already installed Linux 3.18.0 for this, but I first upgraded to a more recent Linux 3.18.23 version:


After installation, I rebooted my machine to make use of the update kernel, and downloaded Ubuntu Linux source code in order to patch it and build the drivers.


At this stage, the source is set to the latest working version


So you’ll want to switch to the tag/branch of the kernel installed on your computer to avoid “invalid format” error when inserting the modules.


Let’s make sure we’ve indeed switched to 3.18.23.


Now I’ll download and apply Ubuntu specific patchsets:


Before applying TBS5520 patch to the source tree:


Patching failed, but it was only a small issue, so you can manually edit drivers/media/tuners/Makefile to add the line with r848:


Let start the actually build procedure with make olconfig, which should ask about Turbosight TBS5520 support.:


Build TBS5520 drivers as modules by entering “m”, and carry on with the procedure:

At this stage, I ran make menuconfig to double check support for TBS5520 was enabled.
TBS5520_Make_Menuconfig

All good. Then I tried to build the modules one by one, as with the serial drivers I used in the previous instructions, but it did not work…


Eventually, I did not find a solution, and TBS was not very helpful, except they told me the media tree drivers were a pain to build, and  eventually mentioned I’d also need a firmware file (dvb-usb-tbsqbox-id5520.fw) and copy it to /lib/firmware… .

So I decided to just build the complete kernel and install all modules and firmware:


All modules where built into /lib/modules/3.18.23+/ directory, and i first tried to load the modules manually

Hmm… wrong file name for the firmware… let’s fix that:

I had a few more issues, and I’ve told to delete the media directory in my Ubuntu kernel drivers directory, and replace that with the one I’ve just built. So instead, I backed it up, before replacing it with the new drivers:


Then I rebooted the machine, all drivers were automatically loaded successfully, and I got a dvb adapter:


InitiallyHowever the output of dmesg appears suspicious:


There are some i2c errors, the MAC address is set to 00:00:00:00:00:00, and some systemd errors are popping up too. And soon after, I noticed /dev/dvb/adapter0 would just appear and disappear in loop.

The next step will be to find a solution to this issue, and get a DVB-T2 video stream likely with TvHeadEnd.

The tuner can be purchased for $79.99 on buydvb.net, and you can to check out TBS5520 tuner page for some more details.

Support CNX Software - Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples
Advertisements
Subscribe
Notify of
guest
31 Comments
oldest
newest most voted
Advertisements