General Satellite

На главную Отправить письмо Карта сайта
Добро пожаловатьКорпорация Дженерал Сателайт — российская научно-производственная компания, представ­ляющая на российском и международном рынке высокотехнологичное радиоэлектронное обору­дование, характеристики которого отвечают самым высоким стандартам. Надежность и про­фессионализм за многие годы успешной работы позволили компании занять место лидера в телекоммуникационном бизнес-сообществе Рос­сии.

подробнее

Цифровой спутниковый ресивер GS-8300



 

Руководство по установке SkyStar2 под Linux 2.4.

Установка SkyStar2 под Linux часто вызывает множество вопросов. В этой статье два опытнейших гуру Nuclearcat и S.O.V.A. делятся своми знаниями по этой теме.

 

 

Рецепт №1. Nuclearcat. 27.09.04

Я запускал карту SkyStar rev 2.6C под ядром 2.6.8-mm3. Собрал стандартные драйвера.

modprobe dvb-core
# Тюнер, для rev 2.6 - stv0299, для 2.3 - mt312
modprobe stv0299
#modprobe mt312
modprobe skystar2

Вуаля! Поднялось, запускаем dmesg- видим что-нибудь типа

/root/src/linuxtv-dvb-1.1.1a/build-2.6/skystar2.c: FlexCopII(rev.130) chip found
/root/src/linuxtv-dvb-1.1.1a/build-2.6/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)...

Я столкнулся с маленьким нюансом, драйвер шедший с ядром не заработал! Т.е. все как бы работало, но сигнал не лочило. Собрал драйвер из своего снапшота (skystar2.ko) и закопировал на место ядерного, сигнал залочился.

Еще один нюанс - в последних ядрах номера устройств изменились, поэтому скрипт идущий с linuxtv 1.1.1 - не работает. Вот правильный:

#!/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 212 `expr 64 \* $i + 0`
mknod -m 0660 /dev/dvb/adapter$i/audio0 c 212 `expr 64 \* $i + 1`
mknod -m 0660 /dev/dvb/adapter$i/frontend0 c 212 `expr 64 \* $i + 3`
mknod -m 0660 /dev/dvb/adapter$i/demux0 c 212 `expr 64 \* $i + 4`
mknod -m 0660 /dev/dvb/adapter$i/dvr0 c 212 `expr 64 \* $i + 5`
mknod -m 0660 /dev/dvb/adapter$i/ca0 c 212 `expr 64 \* $i + 6`
mknod -m 0660 /dev/dvb/adapter$i/net0 c 212 `expr 64 \* $i + 7`
mknod -m 0660 /dev/dvb/adapter$i/osd0 c 212 `expr 64 \* $i + 8`
chown root.video /dev/dvb/adapter$i/*
done

Мой снапшот: linuxtv-dvb-1.1.1a.tar.bz2

 

27-09-2004

Nuclearcat

Оригинал статьи - Форум Пирамида

 

 

Рецепт №2. S.O.V.A. 01.10.04

Имеем: SkyStar2 rev 2.3, knoppix 3.4 и желание избавится от виндовс.

 

Итак:
С Linuxtv.org драйвера лучше не брать, или же брать свежие из их CVS (например Ежедневные полные копии CVS) . Проще всего скачать у nuclearcat'а (linuxtv-dvb-1.1.1a.tar.bz2) . В ядре 2.6 они уже есть, так что компилировать ничего не надо. Просто воспользуемся скриптом ./MAKEDEV-DVB.sh для создания файлов устройств (запускаем из под root). Затем драйвера нужно загрузить. Об этом чуть позже.

 

Если же у вас ядро 2.4, готовтесь к битве.

- Загружаем с kernel.org ядро той же версии какая стоит у вас (uname -r чтобы посмотреть свою версию). Кстати некоторые дистрибутивы (например knoppix) умеют загружаться с разными ядрами.

- Копируем ядро в любое удобное для вас место, распаковываем (допустим /home/knoppix/Desktop/)

- Теперь временно "инсталлируем" исходники ядра в систему:

 
# mount --bind /home/knoppix/Desktop/linux-2.4.26/ /usr/src/linux-2.4.26/
# ls -l /usr/src/linux-2.4.26/

Затем вам нужна конфигурация с которой было собрано ваше ядро. Вроде бы везде ее оставляют в /boot

 
# ls /boot
System.map System.map-2.6.6 config-2.6.6 debianlilo.bmp sid.bmp vmlinuz-2.4.26
System.map-2.4.26 config-2.4.26 debian.bmp sarge.bmp vmlinuz vmlinuz-2.6.6

В моем случае - config-2.4.26

Далее:
 
# cd /usr/src/linux-2.4.26/
# cp /boot/config-2.4.26 ./.config
# make oldconfig

Теперь идем в директорию куда вы распаковали драйвера (ведь распаковали уже?) и компилируем их

 
# make

Должно получиться .)

Теперь загружаем драйвера:

Важное замечание: Тюнер для rev 2.6 - stv0299, для rev 2.3 - mt312

Если у вас драйвера есть в системе, то скорее всего они уже _частично_ загружены. Посмотрите lsmod|grep dvb

Если драйвера у вас уже были с ядром делаем:

 
# modprobe dvb_core
# modprobe mt312
# modprobe skystar2

Если вы их скомпилировали:

# insmod dvb-core.o
# insmod mt312.o
# insmod skystar2.o

Не забудьте запустить скрипт MAKEDEV-DVB.sh если еще не запускали.

Если к этому моменту lsmod|grep dvb выдает что-то вроде

 dvb-core 55836 0 [mt312 skystar2]

То можно проверить их работоспособность.

Для этого компилируем тестовые приложения из linuxtv-dvb-apps-1.1.0

После компиляции делаем так:

 
$ ln -s util/scan/scan scan
$ ln -s util/szap/szap szap
$ ln -s util/dvbtraffic/dvbtraffic dvbtraffic

Теперь выбираем какой-нибудь трансподер или пару и записываем их параметры в файл:

 
echo S 11554000 H 27500000 AUTO>>w3
echo S 11449000 V 27500000 AUTO>>w3

Сканируем и записываем список каналов куда-нибудь:

 
./scan w3>ch

Должно выдать что-то вроде этого:

 
scanning w3
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
initial transponder 11554000 H 27500000 9
initial transponder 11449000 V 27500000 9
>>> tune to: 11554:h:0:27500
0x0000 0x0532: pmt_pid 0x0532 (null) -- LinkStar (running)
0x0000 0x0527: pmt_pid 0x0527 OpenMux IP Gateway -- StarWeb (running)
Network Name 'EMP'
>>> tune to: 11449:v:0:27500
Network Name 'OPENSKY'
0x0000 0x0009: pmt_pid 0x0023 EUTELSAT -- EON (running)
0x0000 0x0003: pmt_pid 0x0022 EUTELSAT -- Streaming (running)
0x0000 0x0007: pmt_pid 0x0021 EUTELSAT -- OpenSkyPush (running)
0x0000 0x0002: pmt_pid 0x0020 EUTELSAT -- Internet (running)
dumping lists (13 services)
Done.

Запускаем szap с нашим списком и именем канала в одной консоли:

 ./szap -c ch EON

И наблюдаем ползущие строчки с параметрами сигнала типа такой:

 status 1f | signal 15964 | snr 51289 | ber 0 | unc 0 | FE_HAS_LOCK

В другой консоли запускаем:

 ./dvbtraffic

И наблюдаем что-то вроде этого

 
-PID--FREQ-----BANDWIDTH-BANDWIDTH-
0000 11 p/s 2 kb/s 17 kbit
0010 9 p/s 1 kb/s 14 kbit
0011 22 p/s 4 kb/s 33 kbit
0020 12 p/s 2 kb/s 18 kbit
0021 12 p/s 2 kb/s 18 kbit
0022 12 p/s 2 kb/s 18 kbit
0023 12 p/s 2 kb/s 18 kbit
0024 11 p/s 2 kb/s 17 kbit
0025 11 p/s 2 kb/s 17 kbit
0026 11 p/s 2 kb/s 17 kbit
0411 3165 p/s 581 kb/s 4761 kbit
07d4 1551 p/s 284 kb/s 2334 kbit
07da 1876 p/s 344 kb/s 2822 kbit
0961 1670 p/s 306 kb/s 2512 kbit
0bc2 6025 p/s 1106 kb/s 9062 kbit
0bc3 195 p/s 35 kb/s 293 kbit
0bc4 328 p/s 60 kb/s 493 kbit
0bc5 1103 p/s 202 kb/s 1660 kbit
0bcd 349 p/s 64 kb/s 524 kbit
0bce 3 p/s 0 kb/s 5 kbit
0bcf 414 p/s 76 kb/s 623 kbit
2000 16815 p/s 3087 kb/s 25290 kbit
-PID--FREQ-----BANDWIDTH-BANDWIDTH-

Хотите узнать по каким пидам идет http трафик?

 ./dvbtraffic HTTP/1.
 
-PID--FREQ-----BANDWIDTH-BANDWIDTH-
0bc2 175 p/s 32 kb/s 263 kbit
0bc3 2 p/s 0 kb/s 4 kbit
0bc4 8 p/s 1 kb/s 13 kbit
0bc5 12 p/s 2 kb/s 19 kbit
0bcd 7 p/s 1 kb/s 11 kbit
0bcf 5 p/s 0 kb/s 8 kbit
2000 213 p/s 39 kb/s 321 kbit

 

01-11-2004

s.o.v.a.

Оригинал статьи - Форум www.planet-sky.ru

 

 

Комментарии? Поправки? Дополнения? 
dvbnet@msk.gs.ru
О корпорации| Продукция| Техническая информация| Онлайн поддержка| Новости| Статьи| Сервисное обслуживание
Copyright © 2004 «General Satellite».
All rights reserved.


Rambler's Top100 Яндекс цитирования