UPDATE: NOW SASC-NG SHOULD WORK WITHOUT PATCH FOR SASC-NG JUST SIMPLY USE:
- Code: Select All Code
hg clone http://85.17.209.13:6100/sc
cd sc/contrib/sasc-ng
gedit Makefile
remove from CXX Werrors from compiler config (treating warinings as errors option)
----------------------------------------------------------------------------------------------------------------------------
Sasc-ng works now well see below tutorial, sorry for some mistakes etc...
This tutorial should work for ANY tbs tuner (also non tbs but you need to adjust it for your drivers/kernel)
You need to have phoenix card reader available from TBS website, also working and valid subscription card.
This tutorial is only about running sasc-ng to use your phoenix reader with channels that you have paid for (it will not work if you didnt buy subscryption or channels are not ones subscribed - u must have reader and card inserted). I have got flustrated that in all network there is some cccam or oscam stuff (totaly useless if you simply wanna channels you paid for!).
So here you go, this covers sasc-ng only.
Mine config is:
-6 month subscription smartcard (Conax)
-Phoenix Card reader (Switches: 3.3V, Phoenix, 3.579)
-TBS5980 or TBS6925 (yea, I have both
soon selling USB)
What is interesting... CAM module works 10x slower than sasc-ng o_O... but lets start.
Whats necessary:
Kernel 2.6.38.8 (should work for 2.6.39 or 2.6.35 too) with sources, I always use version from kernel.org
(See later how to do custom kernel) but you can use ubuntu 2.6.38 version if you want.
I have tested sasc-ng only with my custom kernel.
Also dev tools for compilation and so on you can try installing:
- Code: Select All Code
sudo apt-get install build-essential devscripts mercurial
Before we start fun we need to patch kernel which will be simple thing.
If you have your own drivers (like in TBS case) you need to go to that drivers directory, same as in linux sources, assuming my tbs drivers are in ~/linux-tbs-drivers_110717/linux-tbs-drivers:
- Code: Select All Code
cd ~/linux-tbs-drivers_110717/linux-tbs-drivers/linux
if you just use standard kernel drivers:
- Code: Select All Code
cd /usr/src/linux
wget http://www.vanbest.org/drupal6/sites/www.vanbest.org/files/linux-2.6.38-dvb-mutex.patch
- Code: Select All Code
patch -p1 < linux-2.6.38-dvb-mutex.patch
If you use x86 arch for TBS driver dont forget to:
- Code: Select All Code
cd ~/linux-tbs-drivers_110717/linux-tbs-drivers && sh v4l/tbs-x86.sh
It must switch sources to x86 mode, if you use x86_64 linux just leave it as is.
To compile tbs driver type
- Code: Select All Code
make
sudo make install
Let's get now sasc-ng soft that will replace annoying cam module
Create somewhere directory (let's say named "src"), to make it easy:
- Code: Select All Code
cd && mkdir src && cd src
Fetch latest sources (you need to have mercurial installed):
- Code: Select All Code
hg clone -r 570 http://85.17.209.13:6100/sc
cd sc
Apply mutex patch:
- Code: Select All Code
wget http://www.vanbest.org/drupal6/sites/www.vanbest.org/files/vdr-sasc-ng-2.6.38.patch
patch -p1 < vdr-sasc-ng-2.6.38.patch
Configure your sasc-ng module:
- Code: Select All Code
cd contrib/sasc-ng
chmod +x configure
chmod +x dvbloopback/module/config_dvb.pl
./configure --dvb-dir=~/linux-tbs-drivers_110717/linux-tbs-drivers
make
make module
If compilation fails (it will, sasc-ng is prepared for <=2.6.33 kernels and expects v4l headers, in 2.6.38 we have v4l2 only), do this:
- Code: Select All Code
gedit sc/dvbdevice.cpp
find line with:
- Code: Select All Code
#include <libv4l1-videodev.h>
replace with:
- Code: Select All Code
#include <libv4l2.h>
Save.
Try again:
- Code: Select All Code
make
make module
Go root:
- Code: Select All Code
sudo -s
Then install the stuff:
- Code: Select All Code
cp sasc-ng /usr/local/bin/
cp sc/PLUGINS/lib/* /usr/local/lib/
mkdir -p /lib/modules/`uname -r`/misc/
cp dvbloopback.ko /lib/modules/`uname -r`/misc/
depmod -av
Now configure sasc-ng:
- Code: Select All Code
mkdir /etc/sc_files
create in /etc/sc_files cardslot.conf file:
- Code: Select All Code
touch /etc/sc_files/cardslot.conf
I assume you have phoenix reader from TBS shop:
- Code: Select All Code
nano /etc/sc_files/cardslot.conf
put line there:
- Code: Select All Code
serial:/dev/ttyUSB0:0:0
(its your card reader)
Put your subscription card to reader and connect it to computer together with TBS tuner
Voila! Reboot!
How to run your tv:
I assume you will have channels.conf already (you scanned your card and you use some soft to watch tv).
I use gxine and .xine/channels.conf file (standard channels list).
You will customize your autoscripts in rc.d and so on so I'll only show in command line whats necessary:
- Code: Select All Code
sudo modprobe dvbloopback
sasc-ng -j 0:1 --cam-budget --cam-dir /etc/sc_files
(I have simply added:
- Code: Select All Code
modprobe dvbloopback
sasc-ng -j 0:1 --cam-budget --cam-dir /etc/sc_files > /dev/null 2>&1&
to /etc/rc.local, it will run it each time at boot time)
Turn your player on and thats it.
In gxine I had to change dvb device number to 1 (thats the fake sasc-ng device).
If you use kaffeine, do scan using the new card (it will have no name in options menu), and all subscribed channels uncheck as paid (fake dvb tuner will use your smartcard and decrypt all transparently) , kaffeine has some trouble of using always adapter0 device, search on google how to set it up to read from fake adapter.
I'm gonna get rid of my cam modules finally. Phoenix reader seems to be much better (and cheaper too).
PS. If links are broken or sth like that let me know I have saved copies, with respect to other users involved:
- Code: Select All Code
http://www.vanbest.org/drupal6/content/installing-sasc-ng-linux-2.6.38
For enthusiasts reminder, how to make custom kernel:
download sources from kernel[dot]org and copy it to /usr/src
unpack it
- Code: Select All Code
make symlink /usr/src/linux -> /usr/src/linux-your-unpacked-dir
cd /usr/src/linux
If you have ncurses installed:
- Code: Select All Code
make menuconfig
Choose your stuff etc. (check all dvb v4l stuff, adjust also other things if you want)
to compile after that:
- Code: Select All Code
CONCURRENCY_LEVEL=4 fakeroot make-kpkg --revision=1 --append-to-version=-custom --initrd kernel_image kernel_headers
You can remove CONCURRENCY_LEVEL=4 if you want, I add it to tell compiler to use all of my 4 cores
(its 4 times faster... but sometimes may cause compilation breaks)
After compilation you will have 2 new files in /usr/src
- Code: Select All Code
linux-image-<kernel version>.deb and linux-headers-<kernel version>.deb
install both with dpkg -i command.
run also
- Code: Select All Code
update-initramfs -u
And make sure you have initramfs files /boot/initrd.img-<kernel version> directory.
If not create them using
- Code: Select All Code
update-initramfs -c <kernel version>
Reboot, update your nvidia driver if any (for me It always only work to use drivers from nvidia.com).