PDA

View Full Version : This is a tutorial (HOWTO) on how you can install your skystar2 in linux



the_one2003a
14th March 2005, 11:27 PM
This is how you can make SkyStar 2 work in Fedora core 3 distribution (with the Kernel 2.6.10)

By: Michael Lopez (the_one2003a)

Special Thanks To: Augusto(augusto@carhil.net)

This tutorial is based on the:

LaKing post at www.linuxquestions.org and

TomS2 post in www.fedoraforum.org

Some Checks First:

First you should be sure that your current Kernel version supports SkyStar2 DVB card (by default 2.6.x supports just for sake of being sure) :

type the command:

dmesg

and now look for :

drivers/media/dvb/b2c2/skystar2.c: FlexCopII(rev.130) chip found
drivers/media/dvb/b2c2/skystar2.c: the chip has 6 hardware filters
DVB: registering new adapter (Technisat SkyStar2 driver).


type the command:

lsmod

and now look for :

skystar2 and some module names like that

---------------------------------------

if you couldn't find them, just get the new kernel version from www.kernel.org and "recompile/if RPM install it" your kernel"

if you are going to recompile your kernel be sure to check that in Digital Broadcasting option the B2C2 is checked as module (by default it is but check to become sure). and follow the compiling instructions from the README file.

if you are sure you have B2C2 support in your kernel version but have some problems in its loading just see the ending section of this tutorial (Laking and TomS2 post)

START Here:

Just execute the following .sh file :

with the command:

sh filename.sh

Just for security reasons Use User and Groups* from the System settings menu of the Fedora Core 3 Menu, to create a group named "video"*. Add all users who should have access to the DVB-card to this group or you can skip it (you will only get some errors in the next step the you can ignore it)

#!/bin/sh
# Create device nodes for the Linux DVB API with DVB_API_VERSION 2.
# The devices created are suitable for most current PC DVB cards,
# i.e. cards having one frontend, one demux and optionally one
# MPEG decoder.
# The script creates devices for four cards by default.

if [ -e /dev/.devfsd ]; then
echo "It seems you are using devfs. Good!"
exit 0
fi

# get rid of old DVB API devices; do it twice for good measure...
rm -rf /dev/ost
rm -rf /dev/ost
rm -rf /dev/dvb
rm -rf /dev/dvb

mkdir /dev/dvb
chmod 755 /dev/dvb

for i in `seq 0 3`; do
echo "Creating DVB devices in /dev/dvb/adapter$i"
mkdir /dev/dvb/adapter$i
chmod 755 /dev/dvb/adapter$i
mknod -m 0600 /dev/dvb/adapter$i/video0 c 212 `expr 64 \* $i + 0`
mknod -m 0600 /dev/dvb/adapter$i/audio0 c 212 `expr 64 \* $i + 1`
mknod -m 0600 /dev/dvb/adapter$i/frontend0 c 212 `expr 64 \* $i + 3`
mknod -m 0600 /dev/dvb/adapter$i/demux0 c 212 `expr 64 \* $i + 4`
mknod -m 0600 /dev/dvb/adapter$i/dvr0 c 212 `expr 64 \* $i + 5`
mknod -m 0600 /dev/dvb/adapter$i/ca0 c 212 `expr 64 \* $i + 6`
mknod -m 0600 /dev/dvb/adapter$i/net0 c 212 `expr 64 \* $i + 7`
mknod -m 0600 /dev/dvb/adapter$i/osd0 c 212 `expr 64 \* $i + 8`
chown root.video /dev/dvb/adapter$i/*
done


now you should have a directory with the name "dvb" in your /dev/ directory and "adaptor0,adaptor1,adaptor2,adaptor3" and each of them contain the following:

audio0
ca0
demux0
dvr0
frontend0
net0
osd0
video0


now it is time to test if your dvb card is working or not so:

get the linux-dvb-apps from www.linuxtv.org or the following url:

http://www.linuxtv.org/downloads/linuxtv-dvb-apps-1.1.0.tar.bz2(this is the newest version in time of writing this stuff)

now just open it and make them

with the command:

make

In here I will explain how to work with "szap" and "scan" utils:

with szap you can tune your DVB card to a specific frequency make sure if your driver works or not.

a basic usage of it is like below:

./szap -c channels.conf-dvbs-astra n24

-c switch tells the szap to read the channels information from a file (in here channels.conf-dvbs-astra)

and "n24" is the name of the channel for tuning.

now if you can't receive this satellite signals save below information to a file with the name channels.conf-dvbs-Hotbird:

Mediatel:10949:v:0:27500:5001:5011:7401
Tele Lumiere:10949:v:0:27500:5101:5111:7402
Adjara TV:10949:v:0:27500:5401:5411:7405
Suryan Radio:10949:v:0:27500:0:5711:7448
IRN:10949:v:0:27500:0:5811:7449
Sun KTV:10949:v:0:27500:5901:5911:7450
ANB:10949:v:0:27500:6101:6111:7452
Sun TV +442083356780:10949:v:0:27500:6401:6411:7455
Al Mustakillah:10949:v:0:27500:6501:6511:7456
Cartoon Network:10949:v:0:27500:6601:6611:7457
DMC TV:10949:v:0:27500:6801:6811:7459
Prime TV:10949:v:0:27500:7001:7011:7461
Tapesh 2:10949:v:0:27500:7101:7111:7462


NOTE:if you are using a DISEQc change the zero (0) number after 10949:v:0 to the number of your HotBird DISEQc number starting from zero. so if my Hotbird be configured on my second number of DISEQc I should change it to 1.

Mediatel:10949:v:1:27500:5001:5011:7401




Hint: this is how the channels-information (channels.conf-dvbs-astra) file format should be:

Mediatel:10949:v:0:27500:5001:5011:7401
channel name:freqency:h/v:DISEQc # :symbol rate:vpid:apid:sid


the command looks like:

./szap -c channels.conf-dvbs-Hotbird Mediatel

if you received something like this(pay attention to FE_HAS_LOCK):

status 03 | signal b05c | snr 72d5 | ber 0000fff0 | unc 00000000 |
status 1f | signal b890 | snr ada6 | ber 000021a5 | unc 00000000 | FE_HAS_LOCK
status 1f | signal b833 | snr ad73 | ber 00000039 | unc 00000000 | FE_HAS_LOCK
status 1f | signal b917 | snr accb | ber 00000044 | unc 00000000 | FE_HAS_LOCK
status 1f | signal b908 | snr ad43 | ber 00000025 | unc 00000000 | FE_HAS_LOCK
status 1f | signal b89d | snr adfd | ber 00000034 | unc 00000000 | FE_HAS_LOCK
status 1f | signal ba10 | snr ada6 | ber 00000022 | unc 00000000 | FE_HAS_LOCK


your driver is working correctly.

HINT:IF you are interested in knowing what the other parts of this message mean:

status 0x1f --- The demodulator status bits.
0x1f means all bits set, everything ok.

signal [0x0000...0xffff] --- Signal Strength. Values above 0x8000 should be ok.

snr [0x0000...0xffff] --- Signal/Noise Ratio. Values above 0x8000 are ok.

ber [0...0xffffffff] --- Bit Error Rate. The less the better.

unc [0...0xffffffff] --- Number of Uncorrectable Blocks.
Small numbers are Preferable.

If everything is alright and all frontend circuits are working stable
(are locked) you should see a FE_HAS_LOCK in the rightmost line.



now you can get one of the dvb softwares for linux:

Mythtv: http://www.mythtv.org for source code OR its RPM for Fedora Core 3 from http://atrpms.net/dist/fc3/mythtv/

HINT: this is a way to play a satellite channel with a simple player:

"-r" switch will route the satellite stream to the DVR Device(in the Hard Disk so you can record it).

so in the command type:

./czap -c channels.conf-dvbs-Hotbird Mediatel -r
[keep it running in one console]
[open another console]

cat /dev/dvb/adapter0/dvr0 > /tmp/recording.ts
[in a second console, will dump the MPEG transport stream to /tmp/recording.ts]



How to automate running of sh file for making dvb directory in startup:

...

-------------------------------------------------------------------------------------------------------------------------------------

SCANNING FOR CHANNELS BY SCAN UTIL

scan util: scans satellite trasponders and make a list of their channels (I made channels.conf-dvbs-Hotbird by this util).

for example we want to scan transponder 10949000khz on Hotbird with this util first I should make a file like its template in "scan/Hotbird-13.0E":

# EUTELSAT SkyPlex, Hotbird 13E

# freq pol sr fec

S 12539000 H 27500000 3/4

I only add the following code to the end of this file

S 10949000 V 27500000 3/4

and save the file.

Hint: this file format is like below

S 10949000 V 27500000 3/4

S Frequency H/V SR(Symbol Rate) FEC

Hint: you can use www.satcodx.com to find information about channels and their transponder frequency.

now type the following command :

./scan dvb-s/ Hotbird-13.0E>channels.conf

Note:If you are using a DISEQc you should use "-s NUMBER" (in the following example HotBird is located in my Second DISEQc Number)

./scan -s 1 dvb-s/ Hotbird-13.0E>channels.conf

and will get a beautiful channel information file (channnels.conf)

Some of the programs like Xine player use this file to play satellite streams (you should copy this file in : "~/.xine" directory with the name channels.conf)

------------------------------------------------------------------------------------------------------------------------------------------

Laking AND Toms2 posts (if you are sure you have B2C2 support in your kernel version but have some problems in their loading) :

HOWTO view free to air Sat-TV with Fedora Core 2 and the SkyStar2 from Technisat. (B2C2 Flexcop chip)

Install and Update Fedora with yum or apt.
You will need Xine as the mediaplayer.
( install the midnight commander as well )

The Kernel in fedora supports the card built in, you just need this:

the_one2003a
14th March 2005, 11:28 PM
//-------------------------( TomS2 Wrote )---------------------------------
http://www.fedoraforum.org/forum/showthread.php?t=3081

Ok - here a complete HOWTO to "aktivate" the SkyStar 2 DVB board under Fedora Core 2:

Installation SkyStar II under Fedora Core 2

Prerequisites:
Fedora Core 2 with Kernel 2.6.3-1.358.

Please use the *root“ account to work through the following steps.

To load the card drivers automatically insert the following lines into your /etc/modprobe.conf file:
alias skystar skystar2
alias frontend stv0299

Currently Fedora Core 2 does not create the devices under /dev/dvb automatically. Thus execute the following ShellScript, which is part of the DVB Driver Package from http://www.linuxtv.org/ :

#!/bin/sh
# Create device nodes for the Linux DVB API with DVB_API_VERSION 2.
# The devices created are suitable for most current PC DVB cards,
# i.e. cards having one frontend, one demux and optionally one
# MPEG decoder.
# The script creates devices for four cards by default.

if [ -e /dev/.devfsd ]; then
echo "It seems you are using devfs. Good!"
exit 0
fi

# get rid of old DVB API devices; do it twice for good measure...
rm -rf /dev/ost
rm -rf /dev/ost
rm -rf /dev/dvb
rm -rf /dev/dvb

mkdir /dev/dvb
chmod 755 /dev/dvb

for i in `seq 0 3`; do
echo "Creating DVB devices in /dev/dvb/adapter$i"
mkdir /dev/dvb/adapter$i
chmod 755 /dev/dvb/adapter$i
mknod -m 0660 /dev/dvb/adapter$i/video0 c 250 `expr 64 \* $i + 0`
mknod -m 0660 /dev/dvb/adapter$i/audio0 c 250 `expr 64 \* $i + 1`
mknod -m 0660 /dev/dvb/adapter$i/frontend0 c 250 `expr 64 \* $i + 3`
mknod -m 0660 /dev/dvb/adapter$i/demux0 c 250 `expr 64 \* $i + 4`
mknod -m 0660 /dev/dvb/adapter$i/dvr0 c 250 `expr 64 \* $i + 5`
mknod -m 0660 /dev/dvb/adapter$i/ca0 c 250 `expr 64 \* $i + 6`
mknod -m 0660 /dev/dvb/adapter$i/net0 c 250 `expr 64 \* $i + 7`
mknod -m 0660 /dev/dvb/adapter$i/osd0 c 250 `expr 64 \* $i + 8`
chown root.video /dev/dvb/adapter$i/*
done


Use User and Groups* from the System settings menu of the Red Hat Menu, to create a group named "video"*. Add all users who should have access to the DVB-card to this group.

Insert the following lines to /etc/rc.local
modprobe skystar and
modprobe frontend


The dmesg command should print the following lines:
drivers/media/dvb/b2c2/skystar2.c: FlexCopII(rev.130) chip found
drivers/media/dvb/b2c2/skystar2.c: the chip has 6 hardware filters
DVB: registering new adapter (Technisat SkyStar2 driver).
probe_tuner: try to attach to Technisat SkyStar2 driver
drivers/media/dvb/frontends/stv0299.c: setup for tuner Samsung TBMU24112IMB
DVB: registering frontend 0:0 (STV0299/TSA5059/SL1935 based)...

In the case that stv0299 could not bound a different frontend will be needed. Use alias frontend mt312 in modprobe.conf in this case.

That's it.
Good luck
Tom.
//----------------------------------------------------------------------------------

For me the mt312 works. (Older Skytar2 from EOL)

After that, dmesg prints the following lines + more ...

drivers/media/dvb/b2c2/skystar2.c: FlexCopII(rev.130) chip found
drivers/media/dvb/b2c2/skystar2.c: the chip has 6 hardware filters
driver_initialize MAC address = ff:ff:ff:ff:ff:ff:00:00
DVB: registering new adapter (Technisat SkyStar2 driver).
DVB: registering frontend 0:0 (Zarlink MT312)...

Download from linuxTV the linuxtv-dvb-apps-x.x.x, uncompress and make.
in there is a util/szap dir with a README and some conf files.
For DVB-S, Astra Channel config file:

$ ./szap -c channels.conf-dvbs-astra n24

will tune to N24. if you get FE_HAS_LOCK messages, then the Card is installed.

Copy the channels.conf-dvbs-astra to the hidden ./xine directory in your user's home directory and rename it to channels.conf

If i start Xine i get sound but no video.

$ xine -V xshm dvb://25

fixes that problem, you should get video and audio and see Pro7.
Xine should keep that "xshm" thing in his config file.
Dont forget to turn DeInterlaceing on.

Thats All Folks ....
LaKing

oraksa
29th April 2005, 12:13 AM
hello

can anyone help with this error

[root@Rhdb 2.6.9-5.EL-smp-i686]# make modules
CHK include/linux/version.h
SPLIT include/linux/autoconf.h -> include/config/*
CHK include/asm-i386/asm_offsets.h
HOSTCC scripts/genksyms/genksyms.o
HOSTCC scripts/genksyms/lex.o
HOSTCC scripts/genksyms/parse.o
HOSTLD scripts/genksyms/genksyms
CC scripts/mod/empty.o
MKELF scripts/mod/elfconfig.h
HOSTCC scripts/mod/file2alias.o
HOSTCC scripts/mod/modpost.o
HOSTCC scripts/mod/sumversion.o
HOSTLD scripts/mod/modpost
make[1]: *** No rule to make target `arch/i386/kernel/msr.c', needed by `arch/i386/kernel/msr.o'. Stop.
make: *** [arch/i386/kernel] Error 2

iam trying to install skystar2 on RH4 kernel 2.6.9-5.EL-smp-i686

thanks

the_one2003a
29th April 2005, 09:54 PM
Hi,

sorry, but I'm not expert in linux
I think that it's better that you ask in making Kernel section

sincerely

the_one2003a

TomS2
9th May 2005, 08:51 AM
Hello,

Good job LaKing, thanks... BUT...

I doubt that this will work with the new dynamic UDEV device system unless the shell script will be run on each Fedora startup. From my experience under Fedora Core 3 the /dev/dvb device directory was gone after shutting down the computer and restarting it.

Thus I recommend to put the call of the shell script in rc.local. Please correct me if I'm wrong.

Regards Tom.

the_one2003a
10th May 2005, 12:13 AM
hi

yeah I think that it's a good idea to add it, so it would be a good idea to write down the instructions fo novices.

LaKing
23rd May 2005, 01:59 PM
Yes, ...

There was no ned on that on FC2 as far as i remeber,... but on FC3 you have to run the script at each boot.
Note that the " 250 " version of the script wont work on FC3 ... linux DVB driver version number change.

I also got MythTV running with FC3 as server and FC3, WinXP and MacOsX clients.
Mac/Linux works as the best, cos they are the official ones,
.. Installing is not easy, but possible. The FC3 clients need MySQL updated, ...
When installling server skip mythfilldatabase. its not necessery. Use the MythTV scan and channel editor in mythtvsetup.
Windows version is very experimaental, but can be used.

Cheers :)

sat95
24th June 2005, 09:27 PM
Hi ,
Thanks for the informations gived in this thread regarding the skystar 2 DVB card installation under Linux Fedora.
However, i followed all availables procedure to get my card running but without succes.
With lsmod i get :
skystar2 25705 0
dvb_core 86121 3 mt312,stv0299,skystar2
dmesg shows:
.....
.....
drivers/media/dvb/b2c2/skystar2.c: FlexCopIIB(rev.195) chip found
drivers/media/dvb/b2c2/skystar2.c: the chip has 38 hardware filters
DVB: registering new adapter (SkyStar2).
.......
........
probe_tuner: try to attach to SkyStar2
drivers/media/dvb/frontends/stv0299.c: setup for tuner Samsung TBMU24112IMB
DVB: registering frontend 0:0 (STV0299/TSA5059/SL1935 based)...

I used the scrip to create the dvb devices :
]# ls -lrt /dev/dvb/adapter0
total 0
crw-rw---- 1 root video 250, 0 Jun 24 22:10 video0
crw-rw---- 1 root video 250, 1 Jun 24 22:10 audio0
crw-rw---- 1 root video 250, 3 Jun 24 22:10 frontend0
crw-rw---- 1 root video 250, 4 Jun 24 22:10 demux0
crw-rw---- 1 root video 250, 5 Jun 24 22:10 dvr0
crw-rw---- 1 root video 250, 6 Jun 24 22:10 ca0
crw-rw---- 1 root video 250, 7 Jun 24 22:10 net0
crw-rw---- 1 root video 250, 8 Jun 24 22:10 osd0

All things seems to be ok, but when trying szap:
./szap -c channels.conf-dvbs-astra n24 reading channels from file 'channels.conf-dvbs-astra'
zapping to 34 'N24':
sat 0, frequency = 12480 MHz V, symbolrate 27500000, vpid = 0x07ff, apid = 0x0800
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
opening frontend failed: No such device or address

I sepent 3 days trying to solve the issue but no succes :mad: .
On the same Computer , when i boot on Windows XP the skystar card works fine.
Did some one had the same issue when using fedora core 3 kernel : 2.6.9-1.667
Any help will be apreciated

LaKing
8th December 2005, 03:50 PM
HI...

Upgrade to FC4, ... then yum upgrade, ... and your Skystar should work out of the box.

Just make sure MySQL works on all clients with all users passwords ... then everything will be fine...

Dr.iV
26th December 2005, 06:21 AM
Hi!

I followed all the instructions and got the next.

after rebooting dmesg:

b2c2-flexcop: B2C2 FlexcopII/II(b)/III digital TV receiver chip loaded successfully
flexcop-pci: will use the HW PID filter.
flexcop-pci: card revision 1
ACPI: PCI Interrupt 0000:00:09.0[A] -> Link [LNKA] -> GSI 11 (level, low) -> IRQ 11
DVB: registering new adapter (FlexCop Digital TV device).
b2c2-flexcop: MAC address = 00:d0:d7:02:8a:9c
b2c2-flexcop: found the stv0299 at i2c address: 0x68
DVB: registering frontend 0 (ST STV0299 DVB-S)...
b2c2-flexcop: initialization of 'SkyStar 2 DVB-S' at the 'PCI' bus controlled by a 'FlexCopII' complete
lsmod:

b2c2_flexcop_pci 8149 0
b2c2_flexcop 25301 1 b2c2_flexcop_pci
dvb_core 92393 2 skystar2,b2c2_flexcop
mt352 6341 2 skystar2,b2c2_flexcop
stv0299 10569 2 skystar2,b2c2_flexcop
nxt2002 8773 2 skystar2,b2c2_flexcop
stv0297 8521 1 b2c2_flexcop
mt312 7877 2 skystar2,b2c2_flexcop
after that I tried to remove b2c2_flexcop:

rmmod b2c2_flexcop_pci
rmmod b2c2_flexcop
rmmod skystar2
modprobe skystar2
and in dmesg I got:

b2c2-flexcop: B2C2 FlexcopII/II(b)/III digital TV receiver chip unloaded successfully
ACPI: PCI Interrupt 0000:00:09.0[A] -> Link [LNKA] -> GSI 11 (level, low) -> IRQ 11
drivers/media/dvb/b2c2/skystar2.c: FlexCopII(rev.130) chip found
drivers/media/dvb/b2c2/skystar2.c: the chip has 6 hardware filters
driver_initialize MAC address = 00:d0:d7:02:8a:9c:00:00
DVB: registering new adapter (SkyStar2).
i2c_readbytes: i2c read error (addr 0a, err == -121)
DVB: registering frontend 0 (ST STV0299 DVB-S)...
The MAC address is detected wrong and there is i2c read error :(
In both cases when I'm trying to lock on carrier I see the same (sat95) error

# ./szap -n1 -c channels.conf
reading channels from file 'channels.conf'
zapping to 1 'test':
sat 0, frequency = 11170 MHz H, symbolrate 27692000, vpid = 0x0200, apid = 0x0200
using '/dev/dvb0.frontend0' and '/dev/dvb0.demux0'
opening frontend failed: No such file or directory

My configuration:
FEDORA CORE 4 2.6.11-1.1369
AMD ATHLON 1.4 GHz with 512 Mb RAM
motherboard: SHUTTLE AK32 VIA KT266
SKYSTAR2 rev 2.6C

In which direction should I dig?

thanks a lot in advance.