Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: HOW-TO Установка HTPC сервера на основе Ubuntu 9.10 +XBMC + Lirc (ПДУ) + AutoRun  (Прочитано 31997 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн obsessionsys

  • Автор темы
  • Любитель
  • *
  • Сообщений: 54
    • Просмотр профиля
    • IT-MEHANIKA
Задался целью, сделать для своих любимых дома HTPC сервер.
Используемая аппаратная часть:
Корпус: MiniATX 90W
Motherboard: Intel Atom 330
HDD: Samsung 1Tb + радиатор
Привод: DVD-RW IDE от ноутбука
RAM: 1Gb Transcend х 2 шт.

Шаги создания:
1. Установка Ubuntu 9.10 Desktop;
2. Настройка сетевого интерфейса;
3. Обновление установленной системы;
4. Установка XBMC 9.11;
5. Создание автоматического входа в систему;
6. Пайка IR-приемника (не пугаться, очень легко);
7. Настройка IR-приемника;
8. Настройка запуска XBMC с кнопки "POWER" с ПДУ;
9. Настройка XBMC, для управления с пульта ДУ.

Ну что начнем. Сильно не ругайте, так как это мой первый пост на форуме. Если что то неправильно написал или сделал, ткните пальцем.

Шаг 1. Установка Ubuntu 9.10 Desktop


Устанавливаем Ubuntu 9.10 Desktop стандартно.
Думаю что осложнений не будет с этим.

Будем считать что у нас домашняя сеть со следующими параметрами
Имя ПК: xbmc
IP address static: 192.168.1.5
Network: 192.168.1.0
Gateway: 192.168.1.1 # ADSL настроен в виде роутера


Шаг 2: Настройка сетевого интерфейса eth0

Запускаем терминал.
Удаляем avahi-daemon и network-manager-gnome командой:
$ sudo aptitude remove avahi-daemon network-manager
Редактируем /etc/hosts и добавляем следующую строчку:


$ sudo nano /etc/hosts
127.0.0.1    xbmc
127.0.1.1    xbmc
192.168.1.5    xbmc xbmc.local xbmc
...
Сохраняемся!!!

Редактируем /etc/hostname


$ sudo nano /etc/hostname
xbmc.local
 

Редактируем файл /etc/network/interfaces

$ sudo nano /etc/network/interfaces

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
           address 192.168.1.5 #IP адресс компьютера в домашней сети
           netmask 255.255.255.0 #Маска подсети
           network 192.168.1.0 #Сеть в которой находится ПК
           broadcast 192.168.1.255
           gateway 192.168.1.1 # Шлюз в нашей домашней сети

Сохраняемся!!!

Перезапускаем интерфейс командой:

$ sudo /etc/init.d/networking restart
Перезапускаем сетевой интерфейс командой:

$ sudo /etc/init.d/networking restart
Шаг 3 : Обновление установленной системы

Производим обновление системы:

$ sudo aptitude update
$ sudo aptitude upgrade

Шаг 4: Установка XBMC 9.11

Добавляем в source.list репы XBMC командой:

$ sudo add-apt-repository ppa:team-xbmc
Обнавляем репозитории командой

$ sudo aptitude update
Устанавливаем XBMC командой:
$ sudo aptitude install xbmc
Еще раз обнавляем репозитории:

$ sudo apt-get update
При такой установке Вам не нужно будет добавлять PPA ключи. XBMC уже установлен.

Шаг 5: Создание автоматического входа в систему

Идем: Система -> Администрирование -> Экран входа в систему (System -> Administration -> Login Window)
Нажимаю кнопочку: Разблокировать и ввожу пароль пользователя User (например)
Далее нажимаю кнопку: Закрыть.

Шаг 6: Пайка IR-приемника

Сразу не надо ужасаться, потому что ничего сложного нет вообще. Схема очень проста, даже проще некуда. Выпаял IR приемник с умершего видеомагнитофона.  COM разъем купил, он не дорогой. Аккуратно спаял схему и встроил в корпус. А схема вот такая:



Обязательно надо что бы ИК-приемник был 5-ти вольтовый. Даже не задумываясь, выпаял несколько резисторов с платы старого видеомагнитофона, и диод, даже не зная марки его. Резисторы номиналом не такие были.

Шаг 7: Настройка IR-приемника

Устанавливаем LIRC командой:

$ sudo aptitude install lirc liblircclient0  lirc-modules-source setserial
Нам выкинет окно с выбором IR приемника, честное слово я незнал какой именно выбирать, выбрал примерно 16550A port Srial port, а на следующий вопрос ответил Custom, выбрал /dev/ttyS0 и все.

В файле /var/lib/setserial/autoserial.conf удаляем все и прописываем это если приемник на СОМ1:

$ nano /var//lib/setserial/autoserial.conf

/dev/ttyS0 uart none
или это если приемник на СОМ2.

/dev/ttyS1 uart none
Копируем этот файл в /etc

$ sudo cp /var/lib/setserial/autoserial.conf /etc/serial.conf
Подгружаем собранный модуль:

$ sudo modprobe lirc_serial

смотрим подгрузился он или нет

$ lsmod | grep lirc
У меня получилось следующее:

user@xbmc:~$ lsmod | grep lirc
lirc_serial            11892  0
lirc_dev               10804  1 lirc_serial

Потом надо было проверить само устройство, вообще оно работает???

Делаем символьную ссылку на /dev/lirc

$ sudo ln -s /dev/lirc0 /dev/lirc
Запускаю:

$ sudo mode2
Беру любой пульт старый как раз от того видеомагнитофона который уже давно отошел в мир иной, и начинаю клацать на кнопочки направляя на свой ИК приемник, уаля, у меня побежали вот такие цыфры.

Цитировать
space 1831558
pulse 9076
space 4451
pulse 610
space 1652
pulse 589
space 517
pulse 615
space 519
pulse 640
space 493
pulse 592
space 1653
pulse 643
space 1606


Значит ИК-приемник работает, и пульт еще тоже живой.
Редактируем файлик /etc/lirc/hardware.conf удаляем все и вписываем нижние строчки

$ sudo nano /etc/lirc/hardware.conf

LOAD_MODULES=true
MODULES="lirc_serial"
LIRCD_CONF="/etc/lirc/lircd.conf"

REMOTE_DEVICE="/dev/lirc0"

Рестартим lirc

$ sudo /etc/init.d/lirc restart
Цитировать
sudo /etc/init.d/lirc restart
* Stopping remote control daemon(s): LIRC                               [ OK ]
* Loading LIRC modules                                                              [ OK ]
* Starting remote control daemon(s) : LIRC                               [ OK ]


Теперь мне осталось сделать конфиг пульта, который от видеомагнитофона
Для создания своего конфига запускаем специальную программу:

$ sudo irrecord -d /dev/lirc0 ~/lircd.conf
Нажимаем 2 раза Enter. Здесь нас просят понажимать кнопки на пульте, должны пройти две полоски по 80 точек. После этого появится приглашение ввести имя считываемой кнопки, а только потом нажать эту кнопку для записи в конфиг


Цитировать
Please enter the name for the next button (press to finish recording)

Вводим имя кнопки (например: Menu) и жмем Enter, нажимаем кнопку Menu на пульте, и повторяем это для всех остальных кнопок пульта. Главное при создании конфига пульта не медлить, если программа не дождется от вас действий в течении 5 сек, то она оборвет создание конфига и прийдется начинать все с начала.
Записанный конфиг копируем в /etc/lirc/lircd.conf

$ sudo cp ~/lircd.conf /etc/lirc/lircd.conf
Немного отредактируем файлик /etc/lirc/lircd.conf

$ sudo nano /etc/lirc/lircd.conf
и изменим в поле name, где у нас прописан путь, просто удалим, и напишем например myir

(Например)

cat /etc/lirc/lircd.conf

Цитировать
# Please make this file available to others
# by sending it to
#
# this config file was automatically generated
# using lirc-0.8.6(default) on Fri Dec 11 01:23:03 2009
#
# contributed by
#
# brand:                       /root/lircd.conf
# model no. of remote control:
# devices being controlled by this remote:
#

begin remote

name  myir
bits           16
flags SPACE_ENC|CONST_LENGTH
eps            30
aeps          100

header       9075  4448

[...]

Сохраняемся

Проверить как работает пульт можно командой irw, она же показывает имя нажимаемой кнопки

Цитировать
user@xbmc:~$ irw
000000008c73817e 00 Power myir
000000008c73837c 00 Up myir
000000008c73a35c 00 Enter myir

Теперь осталось создать конфиг для приложения, которым мы будем управлять дистанционно. Управляться с LIRC могут не все приложения, а только те которые имеют его поддержку. Но XBMC точно поддерживает lirc.

Шаг 8:Настройка запуска XBMC с кнопки "POWER" с ПДУ

Заходим в терминал, и в папке /home/user/ создаем файл .lircrc и заполняем следующими строчками

$ cd /home/user
$ sudo touch .lircrc
$ sudo nano .lircrc

begin
prog = irexec
button = Power
config = sh ~/.scripts/irexec/xbmc.sh
end

Далее в папке /home/user/ создаем следующие директории /.scripts/irexec  и создаем файлик xbmc.sh и даем права на запуск.

$ sudo mkdir .scripts
$ cd .scripts
$ sudo mkdir irexec
$ cd irexec
$ sudo touch xbmc.sh
$ sudo nano xbmc.sh

#/bin/sh

if [ "`ps -C xbmc.bin -o comm=`" != 'xbmc.bin' ]; then
nohup xbmc &
exit 1
fi
Огромную благодарность приношу за помощь в этом Виталию Катраеву  по нику Zawullon.

Теперь при запуске в консоле irexec  и нажатии кнопки Power на пульте, запускается XBMC

Шаг 9: Настройка XBMC, для управления с пульта ДУ.

Раньше в старых версиях xbmc необходимо было настраивать файл Lircmap.xml в папке /home/user/.xbmc/userdata/Lircmap.xml , а сейчас в данной версии, надо просто будет отредактировать файл Lircmap.xml в папке /usr/share/xbmc/system и вписать туда названия наших кнопок, они выделены жирным шрифтом

В данном файле можно просто дописав свою конфигурацию под свой пульт, но я не стал себя сильно утруждать, и исправил прямо в первой же конфигурации под свои нужды.
Пример вот такой:

$ cat /usr/share/xbmc/system/Lircmap.xml
(Нажмите, чтобы показать/скрыть)

Осталось последнее, добавить запуск irexec в автозапуск

Идем в Система -> Параметры -> Запускаемые приложения -> Добавить
Имя: Запуск Irexec
Команда: irexec -d

Сохраняемся и перезапускаем систему. Все. С настройкой видеокарты для ТВ, я думаю осложнений не вызовет. А настройка самого xbmc для просмотра, видеорежима, калибровки и локализации ничего сложного, выполняеться в самом XBMC Могу добавить, для перевода на русский шрифт, выберите в настройках, язык Русский, и обязательно укажите Шрифт Arial, и будет у вас русский XBMC

Далее создаем папку для видео, фото на жестком диске. А в XBMC указываем папки назначения. Сам интерфейс XBMC очень понятен и красиво сделан.
Все
« Последнее редактирование: 16 Март 2010, 13:39:06 от obsessionsys »
Что бы хорошее становилось лучшим, а лучшее - совершенным!

Оффлайн Helek

  • Участник
  • *
  • Сообщений: 116
    • Просмотр профиля
Отлично!!! Спасибо!!! Собираюсь собрать такую же систему.
А можно схему Инфракрасника для USB и реально ли это?

Оффлайн obsessionsys

  • Автор темы
  • Любитель
  • *
  • Сообщений: 54
    • Просмотр профиля
    • IT-MEHANIKA
Отлично!!! Спасибо!!! Собираюсь собрать такую же систему.
А можно схему Инфракрасника для USB и реально ли это?

Когда анализировал и собирал информацию по IR приемникам, тоже хотел сделать на USB, но из-за сложности сборки USB IR приемника, не стал заморачиваться. Выбрал самый простой способ реализации его. Таким образом пришел к выводу что самая простая и рабочая схема, представлена мной. При правильной пайке, и подключении, приемник работает 100%. Есть схемы и на USB только там необходимо программатор для микроконтроллера. Кому интересно, вот пожалуйста, ссылки на USB IR приемник:

1я-   http://msevm.com/main/igorusb/index.htm
2-я   http://www.msevm.com/2009/02/igorplug2.htm
Что бы хорошее становилось лучшим, а лучшее - совершенным!

Оффлайн Nesmit

  • Старожил
  • *
  • Сообщений: 1295
    • Просмотр профиля
О, спасибо. В близжайшее время займусь :)
Месяц назад бился с лирком, никак не мог заставить работать встроенный IR. Пока что 1/0 в его пользу.
"*nix нужен в первую очередь тем, кто сам МОЖЕТ, и самое главное ХОЧЕТ думать" (с)mechanic

Оффлайн obsessionsys

  • Автор темы
  • Любитель
  • *
  • Сообщений: 54
    • Просмотр профиля
    • IT-MEHANIKA
О, спасибо. В близжайшее время займусь :)
Месяц назад бился с лирком, никак не мог заставить работать встроенный IR. Пока что 1/0 в его пользу.

Могу сказать что IR-приемник определяеться в Ubuntu как устройство /dev/ttyS0 как первичное или как вторичный /dev/ttyS1
Что бы хорошее становилось лучшим, а лучшее - совершенным!

Оффлайн Helek

  • Участник
  • *
  • Сообщений: 116
    • Просмотр профиля
Ещё вопрос, есть инфракрасник, старый, который раньше использовали для телефонов, Джениус. Его с пультом ДУ можно подружить?

Оффлайн obsessionsys

  • Автор темы
  • Любитель
  • *
  • Сообщений: 54
    • Просмотр профиля
    • IT-MEHANIKA
Ещё вопрос, есть инфракрасник, старый, который раньше использовали для телефонов, Джениус. Его с пультом ДУ можно подружить?

Какой у него интерфейс, USB, COM или джек? Вообще любой IR-приемник можно подружить с Ubuntu через Lirc. Правда не все программное обеспечение поддерживает LIRC, в статье писал.
Что бы хорошее становилось лучшим, а лучшее - совершенным!

Оффлайн Helek

  • Участник
  • *
  • Сообщений: 116
    • Просмотр профиля
USB ну вот завтра буду пробовать. COMе конечно элементарная схема, для 8 класника, но если уже есть то зачем паять,:) Да и COMа на буке у меня нет, а так лень к нему бегать кнопки нажимать когда его к телеку подключаю для просмотра фильмов.:)

Оффлайн viakon

  • Участник
  • *
  • Сообщений: 138
    • Просмотр профиля
У меня с IR приемником на ком порту возникли проблемы со ждущим режимом. Мешали модули лирца, при выходе из ждущего черный экран и все. С USB на ft232 нормально просыпается, но лирц перестает работать.

Оффлайн obsessionsys

  • Автор темы
  • Любитель
  • *
  • Сообщений: 54
    • Просмотр профиля
    • IT-MEHANIKA
USB ну вот завтра буду пробовать. COMе конечно элементарная схема, для 8 класника, но если уже есть то зачем паять,:) Да и COMа на буке у меня нет, а так лень к нему бегать кнопки нажимать когда его к телеку подключаю для просмотра фильмов.:)

Конечно можно если USB, без проблем. В соседнем топике про lirc было описание настройки usb ir + lirc, вот ссылка https://forum.ubuntu.ru/index.php?topic=37309.0

Пользователь решил продолжить мысль 19 Март 2010, 00:21:20:
У меня с IR приемником на ком порту возникли проблемы со ждущим режимом. Мешали модули лирца, при выходе из ждущего черный экран и все. С USB на ft232 нормально просыпается, но лирц перестает работать.

Надо смотреть было логи, выявить что именно мешало выходу из ждущего режима. У меня такой проблемы нет, да и в принципе небыло. На другие проги lirc не настраивал, но в xbmc есть свой собственный ждущий режим, телевизор меркнет до определенного состояния, и находиться в ждущем режиме, пока не нажмеш на пульте кнопку, просыпается сразу и без проблем. Может быть ты имел ввиду из спящего режима? В спящем режиме не проверял, но были случаи что лирц просто не подгружался, почему понять не смог, в логах ничего подозрительного не узрел, но это было очень редко.
« Последнее редактирование: 19 Март 2010, 00:21:20 от obsessionsys »
Что бы хорошее становилось лучшим, а лучшее - совершенным!

Оффлайн obsessionsys

  • Автор темы
  • Любитель
  • *
  • Сообщений: 54
    • Просмотр профиля
    • IT-MEHANIKA
Формунчане, столько просмотрело уже топик, ну скажите у кого-нибудь получилось сделать?
Что бы хорошее становилось лучшим, а лучшее - совершенным!

Оффлайн vr70

  • Активист
  • *
  • Сообщений: 608
    • Просмотр профиля
У меня HTPC с MythTV, про xbmc слышал уже давно, но поставить собрался только на днях. Понравилось! Во многом xbmc превосходит MythTV, стыкуется с бакендом мифа элементарно, качество картинки по крайне мере не хуже. Com-портовый приемник - это на любителя, учитывая что майкрософтовский пульт стоит 300-400р (еще и с трансмиттером!) смахивает немного на крохоборство. Настройка сети - у меня также интернет также раздает роутер и для настройки сети я не делал ровным счетом ничего, только папки расшарил, что то у вас все сложно как то. А теперь собственно мой вопрос к знатоку xbmc - эта замечательная фиговина забирает себе все управление с клавиатуры, нельзя его ни свернуть ни на другой стол переключиться! У меня не "чистый" HTPC , я иногда и другими программами пользуюсь и в игры играю, причем иногда одновременно. Можно ли что нибудь с этим сделать? И еще - почему то скрипты не работают, не знаю зачем они нужны, но раз есть должны же работать?

Оффлайн obsessionsys

  • Автор темы
  • Любитель
  • *
  • Сообщений: 54
    • Просмотр профиля
    • IT-MEHANIKA
У меня тоже он не чистый HTPC, но переключение между столами мне не дало результата, я просто настроил видеокарту на два рабочих стола, один через s-video -> телевизор, а рабочий стол оставил для себя, что бы закидывать bittorrent, копировать и т.д. для всякого рода действий по мультимедия...
Что бы хорошее становилось лучшим, а лучшее - совершенным!

Оффлайн weezer

  • Любитель
  • *
  • Сообщений: 88
    • Просмотр профиля
    • http://forum.ubuntu.ru/index.php?topic=90707.0
автор молодец! давно мечтаю себе собрать такое чудо, даже эту схему ик нашёл, да вот руки ни как не дотянуться

Оффлайн vr70

  • Активист
  • *
  • Сообщений: 608
    • Просмотр профиля
Мда, а меня один только телевизор, и без второго стола - никак! Что то такое xbmc делает нехорошее с иксами, как бы его укоротить, что бы вел себя как программа, а не как DE.

 

Страница сгенерирована за 0.066 секунд. Запросов: 24.