Showing posts with label TBS6285. Show all posts
Showing posts with label TBS6285. Show all posts

Tuesday, 3 March 2015

Linux kernel updates break TBS TV Tuner driver

Each time the Linux kernel updates, my TBS driver stops working. To get it back in action I need to rebuild it, which takes only about 10 mins, but is a real faff when kernel updates happen regularly.

To prevent this from happening I've placed a hold on kernel updates. So all other security and software updates will still take place, but the kernel will remain on same version. This is fine as long as all your hardware works in the current version of the kernel - for the vast majority of people this will be the case.

Here's what I did to place the hold (Debian-based systems only such as Ubuntu, Mint etc):

(You may need to type sudo su first to run commands with superuser privileges )

Into a terminal enter:
dpkg -l "*$(uname -r)*" | grep image | awk '{print $2}'
This should give you a list of packages e.g. linux-image-3.16.0-29-generic
linux-image-extra-3.16.0-29-generic
Now enter
dpkg -l "*$(uname -r)*" | grep header | awk '{print $2}'
 For each one of those packages and headers you need to do:
echo <PACKAGE> hold | dpkg --set-selections
Change <PACKAGE>  with your package that was output from the first step above, one at a time.
Now type
dpkg -l "*$(uname -r)*"
and you should see output similar to
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version      Architecture Description
+++-==============-============-============
hi  linux-headers- 3.13.0-46.77 amd64        Linux kernel headers for version
hi  linux-image-3. 3.13.0-46.77 amd64        Linux kernel image for version 3.
hi  linux-image-ex 3.13.0-46.77 amd64        Linux kernel extra modules
The  "hi" before the image and header lines, indicate that the kernel updates will be help, not updated, when you accept security and software updates from your package manager as usual.

Thanks to Tony at http://itslinux.blogspot.co.uk/2015/03/how-to-prevent-packages-from-being.html for this tip. 



Wednesday, 17 December 2014

Kodi and UK Freeview TV

OK - so after a few months of not attempting to fix/get around some roadblocks in terms of streaming live TV to XBMC frontends, and no sound on HD channels, I decided to revisit my nearly complete HTPC for one last stab.

And, hey presto, I've made good progress and I'm really pleased with the setup as it stands - still some tweaks I intend to make, but I have a funny feeling I'll never be satisfied with the status quo.















So, I'm using Ubuntu 14.04.1, Kodi (formerly known as XBMC), MythTV as a primary backend server, UK Freeview DVB-T2 being tuned by TBS6285.

The rest of the kit can be seen in my previous posts.

I managed to resolve the HD audio issue simply by going into Cmyth-PVR addonn settings in Kodi, and under advanced, deselecting the de-mux option. I'm sure I tried this several months ago, to no avail, but it seems to have done the trick this time. So, now I can hear TV audio on all digital channels.

I'm able to stream to another PC in the house running Kodi as a frontend, simply by adding the CMyth-PVR addon. I couldn't achieve this using a Rasperry Pi with Openelec - for some reason that version of Cmyth just wouldn't allow primary backend and Rapsberry Pi to talk to each other.

All in all, I am really impressed. Live TV channel changing in Kodi seems to be quicker than when I last tried with XBMC in summer, and whilst not what I would called instant, it is acceptable - probably 2 - 3 seconds for the new channel to buffer and then play.

The picture quality is excellent, in HD. I did have to play around with a few variations of settings in Kodi's hardware acceleration settings section and in the onscreen display video settings section. I finally settled on auto interlacing, auto interlacing method, and auto video scaling. The quality and frame rate is excellent.

I also spent some time re-ordering channels on the mythbackend. I did this by opening a terminal and typing mythtv-setup. In the options menu that appears, select Channel Editor, and then work through the channels amending as you see fit. I've removed all the shopping channels, dating channels and all SD channels that have an HD alternative, and moved them into my preferred order. After this, mythbackend needs to be restarted, then open Kodi LiveTV settings and ensure "Always use the channel order from the backend/s".

I'm using a Logitech K400 wireless keyboard to control the HTPC and somtimes theYatse android app to control Kodi, This sounds complex, but it works really well. e.g. keyboard is on other side of living room, no problem - you can still control Kodi without the massive effort of rising from your chair and walking 3 steps across a lounge!

Tuesday, 10 June 2014

TBS6285 Part 2

Following on from my previous post http://ubuntulinuxhtpc.blogspot.co.uk/2014/05/tbs6285.html I've received the quad-tuner and installed it, having overcome a few hurdles. I've described the process I followed, below. If you can't get this card to work, feel free to get in touch, and I should be able to help you get up and running.




The first hurdle to overcome was installation of the linux drivers for the TBS6285. These can be downloaded from http://www.tbsdtv.com/download/. After help from Constantine, developer at Turbosight (TBS), it turned out that my motherboard (MSI 990FXA-GD65) is one of many faulty ones floating around (there is a buggy ASM1083 chip soldered between PCIe and PCI bus) which cannot handle IRQ from the card and causes an interrupt storm from the card. To overcome that I did the following (from http://www.tbsdtv.com/forum/viewtopic.php?f=52&t=7631#p24903):

1. Create a .conf file 
sudo gedit /etc/modprobe.d/tbs.conf
2. Edit contents of .conf file by inserting the following two lines and saving file
options saa716x_tbs-dvb int_type=1
options saa716x_tbs-dvb enable_ir=0 
The first line activates MSI (Message Signal Interrupts) instead of the older IRQ. The second disables remote control receiver on the card to make sure the interrupt storm is not coming from there).

3. Reboot to load the driver with MSI loaded.

Then, following intructions from http://www.linuxtv.org/wiki/index.php/TBS6285#Making_it_Work and http://www.linuxtv.org/wiki/index.php/TBS6284 with a few amendments for TBS6285 and some permissions problems, I managed to get the card working. These are the commands I used:

1. Extract the ZIP file tbs-linux-drivers_v[VERSION NUMBER].zip. As of 25 April 2014, the latest version is 140425.
unp -u tbs-linux-drivers_v140425.zip
2. Extract linux-tbs-drivers.tar.bz2 archive
cd tbs-linux-drivers_v140425 
unp linux-tbs-drivers.tar.bz2
3. Change ownership and permissions of extracted files
sudo chown -R <yourusername> tbs-linux-drivers_v140425
sudo chmod -R 777 tbs-linux-drivers_v140425 
4. Change to driver package directory
cd tbs-linux-drivers_v140425
cd linux-tbs-drivers
4.1 (If on fresh install on CentOS or similar)     
yum install kernel-devel-`uname -r`
cd linux-tbs-drivers
make clean
make distclean
 (move to Step 5)
  
5. Select platform architecture
(for any x86_64 kernel only)

enter into a terminal: 
./v4l/tbs-dvbc-x86_64.sh
and then:
./v4l/tbs-x86_64.sh
6. Build the driver. Recompiles v4l for a wide range of cards, around 500, will take many minutes.
make
        (I modify this to make -j7  to use all 6 cores of my CPU)

7. Install driver
sudo make install
8. Reboot, then
(Ubuntu-based distros only. See http://www.linuxtv.org/wiki/index.php/TBS6285#Making_it_Work for other distros)
sudo rm -Rf /lib/modules/<your kernel version>/kernel/drivers/media
9. Reinstall drivers
cd tbs-linux-drivers_v140425 
cd linux-tbs-drivers 
sudo make install
10. Load newly installed driver
sudo modprobe -v tbs62x0fe
insmod /lib/modules/3.(your kernel version)-generic/kernel/drivers/media/dvb/frontends/tbs62x0fe.ko
11. Check it loaded correctly

Reboot:
sudo shutdown -r now
After rebooting and logging back in, check to see if dvb adaptor nodes now exist:
ls -al /dev/dvb
You should see something similar to the following displayed in your terminal:
drwxr-xr-x  2 root root  120 Jul  9 21:12 adapter0
drwxr-xr-x  2 root root  120 Jul  9 21:12 adapter1
drwxr-xr-x  2 root root  120 Jul  9 21:12 adapter2
drwxr-xr-x  2 root root  120 Jul  9 21:12 adapter3
This should give you a correctly installed TBS6285 on Ubuntu 14.04 (after trials and tribulations, it did for me!)

Monday, 19 May 2014

TBS6285

Ordered a TBS6285 today.

Should arrive in a week or so.

This card, once plugged into a spare PCI slot, should allow viewing/recording of 4 different mulitplexes at the same, and can tune to 4 channels within each multiplex. So, it's technically possible to record 16 channels simultaneously with this card. I can't ever foresee the need for that, but the option to tune to 4 different multiplexes will be.

Once it arrives I'll post further updates on how I get on with using it in XMBC. I plan to do a fresh install of Mythbuntu, too, to see how it compares to XBMC as a back-end server.