Belgorod Linux User Group

Главная | Форум | Проекты | Wiki | Галерея | Статьи | FAQ | О нас | Контакты |

Добро пожаловать на официальный сайт Белгородской Группы Пользователей Линукс.
Belgorod Linux User Group.

Добро пожаловать

Логин:
Пароль:
Забыли?
Регистрация

Wiki

Свежие правки:


Удобство работы в консоли от 107

Haproxy от 107

Ssl nginx от 107

RRDTool от 107

>>>

Форум

Новости:

Требуются модераторы и администраторы.

Последние сообщения:

> Re: Душевые кабины!!!
  dianoska от 12.02 12:39:
Здравствуйте, мы душевую кабину покупали на сайте https://www.sanitek.com.ua/shop/santehnika/dushevye-kabiny выбрали кабину от K......

> Re: Куда поехать на выход...
  МарияОболонцева от 07.02 14:43:
Цитата: dianoska от 06 Февраль 2018, 13:07:50Здравствуйте, думаю поехать на выходных отдохнуть в горах. Посоветуйте пожалуйста х......

> Re: Куда поехать на выход...
  gorniks от 07.02 13:38:
С 16 по 20 апреля 2018 года в Москве пройдет крупнейшее образовательное мероприятие страны для специалистов строительной сферы –......

В данный момент:

1 Гость, 0 Пользователей

Добро пожаловать 83234319565, наш новый пользователь.
>>>

Галерея

Новинки:



ubuntu 7.10  » Кликни для увеличения ->
"ubuntu 7.10"
от: ULT (5)

рабочая обстановка :)  » Кликни для увеличения ->
"рабочая обстановка :)"
от: S7a1k3r (3)

Работаю...  » Кликни для увеличения ->
"Работаю..."
от: 107 (4)
>>>

Статистика

Ваш IP: 10.10.10.1

Всего пользователей: 8687
Новый пользователь: 83234319565
Всего новостей: 22
Всего статей: 13

Кнопки и ссылки

RSS 2.0:
rss

Наша кнопка:
BLUG

Наши друзья:

Belgorod Linux/UNIX Internet Shop

lug.ru

Прочее:

Убей ICQ!

Jabber

Наши сертификаты:

Valid CSS!

Valid HTML 4.01 Strict

Skystar3


Поскольку сам являюсь счастливым обладателем TT-Budget S1401( aka SkyStar3 ), а в сети с завидной периодичностью поднимаются вопросы о спутниковом интернете в Linux, решил осветить этот вопрос. Ниже показано, как настроить данный девайс для использования в ОС Gentoo Linux.

Для начала включаем в ядро драйверы, необходимые для нормального функционирования нашей карточки:

foo@localhost~$ cd /usr/src/linux && make menuconfig

Ниже показаны соответствующие подразделы программы конфигурации ядра. Нас интересует секция Device Drivers->Multimedia Devices.

<*> Video for Linux
<*> Enable Video For Linux API 1 ( DEPRECATED )

Digital Video Broadcasting Devices ->
<*> DVB For Linux
<*> DVB Core Support
<*> Load and attach frontend modules as needed
--- Supported SAA7146 Based PCI Adapters
<*> Budget Cards

Customize DVB Frontends ->
<*> Customize the frontend modules to build

Впрочем - собирать драйверы модулями или непосредственно включать в код ядра - дело личных предпочтений. Если модулями, то потом нужно будет подгрузить соответствующие модули командой modprobe module_name.

<*> Philips TDA10086 based ( наш DVB-фронтенд )
<*> Philips TDA826X silicon tuner ( синтезатор частоты )
<*> LNBP21 SEC controller ( узел питания )

Всё, сохраняем конфигурацию. Но не спешите компилировать ядро. Для более эффективной работы необходимо внести соответствующие коррективы в исходники.

Файл /usr/src/linux/drivers/media/dvb/dvb-core/dmxdev.h:

#define DVR_BUFFER_SIZE (10*188*1024)

увеличиваем буфер:

#define DVR_BUFFER_SIZE (10*188*1024*16)

Файл .../drivers/media/dvb/dvb-core/dvb_frontend.c

static int dvb_shutdown_timeout = 5; ( исправляем на 0, чтобы карта не засыпала )
static int dvb_powerdown_on_sleep = 1; ( исправляем на 0, неактуально в связи с отсутствием dvb_shutdown_timeout )

Файл .../drivers/media/dvb/b2c2/flexcop-pci.c

#define FC_DEFAULT_DMA1_BUFSIZE (1280 * 188)

увеличиваем буфер:

#define FC_DEFAULT_DMA1_BUFSIZE (5120 * 188)

Впрочем, увеличивать можете на сколько хотите, просто больше, чем здесь показано, думаю, не имеет смысла - пустой расход памяти.

Файл .../drivers/media/dvb/frontends/tda10086.c

tda10086_write_byte(state, 0x3f, 0x03); // NOTE: flydvb uses 0x0a and varies it

Увеличиваем количество передаваемых данных по i2c шине:

tda10086_write_byte(state, 0x3f, 0x0a); // NOTE: flydvb uses 0x0a and varies it

Все изменения апробированы на собственном опыте - дают хороший результат. Можно даже заниматься граббингом - потерь пакетов почти не наблюдается. Теперь собираем и инсталлируем новое ядро:

foo@localhost~$ make && make modules_install && make install

Не забываем перезагрузиться, чтобы изменения вступили в силу :)

Теперь настраиваем карту для приёма пакетов со спутника. Для этого ставим пакет media-tv/linuxtv-dvb-apps. Создаём интерфейс для указанного пида( все команды выполняем от root )

foo@localhost~$ dvbnet -a 0 -p $PID ( вместо $PID нужно подставить номер собственного пида для приёма ).

Поднимаем интерфейс:

foo@localhost~$ ifconfig dvb0_0 hw ether $MAC $IP up ( Здесь $MAC - мак-адрес карточки, $IP - назначенный ip-адрес ). Обратите внимание, что не у всех провайдеров идёт фильтрация по аппаратному адресу карты - у некоторых провайдеров для приёма пакетов мак-адрес может вычисляться другими способами.

Включаем возможность приёма пакетов с интерфейса, отличного от того, с которого осуществляется посылка.
foo@localhost~$ echo 0 > /proc/sys/net/ipv4/conf/dvb0_0/rp_filter

Создаём файл /etc/channels.conf, куда вписываем параметры используемого транспондера. Файл должен содержать всего одну строчку следующего формата:

service_name:frequency(MHz):polarisation:fec:symbol_rate:video_pid:audio_pid:program_id

service_name - любое имя на ваш вкус. У меня, например, channels.conf выглядит так:
stv:11595:v:0:29270:0:0:0

Настраиваемся на спутник:

foo@localhost~$ szap -c /etc/channels.conf -n 1 -x

Данная команда при правильной настройке должна выдать в конце концов:

using /dev/dvb/adapter0/frontend0 and /dev/dvb/adapter0/demux0
status 07 | signal 6ce9 | snr 3270 | ber 0000ff00 | unc 00000000 |
status 1f | signal c08d | snr d344 | ber 00001800 | unc 00000000 | FE_HAS_LOCK

Если FE_HAS_LOCK, значит всё ОК - сигнал схвачен. Также удобно поставить пакет net-analyser/tcpdump и смотреть, есть ли на интерфейсе трафик:

foo@localhost~$ tcpdump -ni dvb0_0

Если трафик есть, значит всё сделано верно - можно открывать шампанское( или что-нибудь покрепче :) ). Осталось настроить соответствующее оборудование для передачи пакетов( обычно это gprs-мобильник или модем ), поставить акселератор( обычно его роль выполняет globax ) и писать статьи на BLUG.







Belgorod Linux User Group

Code by 107. Design by ULT.
modx-cmf