Начать новую тему Ответить на тему  [ 1 сообщение ] 
WinLIRC для управления Windows-приложениями 
Автор Сообщение
Супермодератор

Зарегистрирован: 20 сен 2009, 12:49
Сообщения: 2134
Сообщение WinLIRC для управления Windows-приложениями
WinLIRC для управления Windows-приложениями с помощью практически любого пульта

WinLIRC позволяет управлять Windows-приложениями с помощью практически любого пульта от видеомагнитофона или телевизора. Только вот что-то наши русские пульты (от "Горизонта") подкачали, да еще некоторые модели от Panasonic - в них несущая частота около 400 Кгц, у компа нет шансов поймать (в большинстве пультов 30-40 КГц).

Для получения удовольствия пользования пультом вам придется собрать небольшую схему. Схема такая:

Вложение:
docosd_html_m64747ad8.gif


Практически любой элемент может быть заменен на аналог. Автор приобрел первый попавшийся фотоприемник для телевизора - "TK-19", хотя в продаже были еще какие-то аналоги. Как это обычно приговаривают: схема работает сразу и в настройке не нуждается. Подключается все это безобразие к любому COM-порту. Стабилизатор может быть любой 5-ти вольтовый, например очень хорошо подходят наши «кренки».

Плату травить вовсе не обязательно, все можно сделать навесным монтажом, вот что получилось у автора:

Вложение:
docosd_html_10602f96.jpg


Далее что бы все это окультурить, и удобно расположить под телевизором, нам понадобиться:

1. Розетка RG-45 — 1шт., конектор RG-45 – 1 шт.

2. Витая пара — растояние «компьютер-телевизор», но не более 7м.

3. Разъем DB-9 “мама”, донором может служить шнур от бесперебойников.

4. Кусок двухстороннего скотча, чтобы приклеить коробку под телевизором.

5. Прямые руки с паяльником :)

вот что получилось у автора:

Вложение:
docosd_html_m73b73656.jpg


Ну и в законченом варианте:

Вложение:
docosd_html_m6c409022.jpg


Еще вам потребуется сам сервер WinLIRC: http://winlirc.sourceforge.net/
Там же лежит плюгин к WinAMP, чтобы и его можно было пользовать с кровати.

Установить его не сложно, довольно проблематично его настроить. Показателем настроенности программы будет служить помигивание зеленым индикатором в трэе при нажатии кнопок на пульте.

Предположим, Вы правильно спаяли схему из исправных деталей. Соответственно она должна быть рабочей. Идём на http://www.lirc.org/ и по ссылке "supported remote controls" переходим на http://lirc.sourceforge.net/remotes/. Ищем там свой пульт. Если есть - повезло, скачиваем конфиг для него; нет - не страшно. Подключаем схему к свободному COM-порту. Запускаем WinLIRC. Для определённости я описываю порядок тыканья по кнопкам в версии 0.6.4 (не помню, что там было в более ранних). Если оно уходит в трей, то правой кнопкой мыши выбираем "Toggle window" -> "Reconfigure". Выбираем тот порт (COM1, COM2), к которому прицеплен приёмник. Для схемы, приведенной выше параметр "Receiver Type" должен быть RX device. Speed - 115200 Вообщем все должно выглядеть как на рисунке:

Вложение:
docosd_html_m2e05aacc.jpg


И не забудьте обязательно выставить в настройках ком-порта в диспечере устройств такую же скорость как вы указали в WinLirc, вообщем все должно выглядеть так:

Вложение:
docosd_html_m7591c436.jpg


Если конфиг к своему пульту удалось найти, то идём в "Config" -> "Browse" выбираем его. Переходим к пункту "Всё готово". Если готовый конфиг найти не удалось, начинает обучать программу своему пульту. Итак:

1. В окне "Config" пишем MY_REMOTE.CF (ну или типа того).

2. Нажимаем "Raw codes". Тыкаем любые кнопки на пульте. Должны бежать цифры в окне. Значит, всё пучком. Закрываем крестиком и переходим к

3. Learn. Вас спросят
This will record the signals from your remote control
and create a config file for WinLIRC. Please enter a name for this remote.

Надо ввести название Вашего пульта. Здесь и далее названия лучше давать латинскими (английскими) буквами, без пробелов.

4.
When learning and analyzing signals, a margin of error is used in order to
handle the normal variations in the received signal. The margin of error ranges
from 1% to 99%. The default is 25%, but larger values might be necessary depending
on your hardware and software. If you are having trouble using your remote,
try increasing this value. You may enter the allowable margin of error now,
or press ENTER to use the default. Desired margin of error for this remote?
(1-99, enter=25)

Очень много слов, просто нажимаем "Enter"

5.
Step One: Determine signal gap, signal length, and repeat codes.
-----------------------------------------------------------------------------------
You will be asked to press an arbitrary button a number of times.
Please hold it in for at least one s second each time, and wait at least
one second between keypresses. If you want to manually enter a signal gap
and signal length, you may do so now (ie, "31000 52").
Otherwise, just hit ENTER. Gap and length?

Опять очень много слов, просто нажимаем "Enter"

6.
Press a button. Please wait a second and press it again.

Нажмите и отпустите любую кнопку (на пульте). Подождите секунду и нажмите и отпустите её опять. Появится строчка
Baseline initialized.

После этого давим ЁТУ ЖЕ кнопку десять (или чуть больше раз), пока не дойдём до нуля.
Please wait a second and press a button again (10 left)
Please wait a second and press a button again (9 left)
Please wait a second and press a button again (8 left)
Press a button.

7. Получаем сообщение:
This is a signal-repeating remote with no special repeat code.
Holding down the button can quickly yield many copies of that button's code.
Therefore, 64 samples of each button will be taken.
You will be prompted to enter each button's name in turn.
To finish recording buttons, enter a blank button name.

8. Теперь обучаем программу ВСЕМ кнопкам пульта. Порядок такой: Вас спрашивают
Button 1 name?

(имя первой кнопки)? Пишем название. Латинскими буквами или цифрами, без пробелов, лучше заглавными то слово, которое есть на пульте на кнопке. Ну типа "1", "2", "PLAY", "FFWD", "STOP", "VOL+". После этого давим на кнопку несколько секунд. В окне будут бежать цифры, примерно вот так:
Baseline initialized.
matches=64, faults=19

Давим, пока matches не дойдёт до 64. Чем меньше будет faults, тем лучше.

9. Появляется слово "Stop" и "Button 2 name (blank to stop)". Пишем имя второй кнопки. Повторяем п.8 до тех пор, пока не кончатся все кнопки.

10. По окончании всех кнопок, нажимаем "Enter", не вводя название. Выдаётся сообщение "Configuration written сукесфули, не забудь analyze". Что мы и делаем.

11. Тыкаем мышой в "Analyze" получаем в ответ "analysis successfully"

12. Радуемся.

13. "Всё готово" - Нажимаем OK, затем "Hide window".


Запускаем DVBDream, идем в опции — пульт ду
Выбираем :

Вложение:
docosd_html_739cfbf4.jpg


Вложение:
docosd_html_3b917278.gif


Нам для OSD написанного мною, понадобиться всего 4 кнопки: Optional1-«up», Optional2-«down», Ok-«Ok», EXIT- «exit». Остальные кнопки можете назначить на свое усмотрение.

Для этого дважды щелкаем на соответствующем пункте и при появившейся надписи «Waiting for button store» нажимаем кнопку на пульте, если все сделано правильно, то напротив команды вы увидите наименование кнопки которое вы задали, когда обучали пульт в WinLirc.

Вложение:
docosd_html_28603741.gif


Все пульт мы привязали, осталось только подключить модуль OSD, для этого копируем файл big_OSD.mod из архива в папку «C:\DVBDream\Modules».

Немного терпения, сразу наверное зададитесь вопросом «а нахрена нам надо еще одно OSD, ведь есть simosd и dosd (их кстати рекомендую отключить)» или что побудило меня написать собственное OSD.

Ну вопервых, переключать канал по номеру это просто издевательство если их больше 100 (если у вас модуля на гиг в башке не стоит и вы помните все номера каналов :) ), да и не очень удобно это делать например в ddosd, то не введется цифра то их введется 2. Конечно есть simosd и как вариант радио мышь, вот я со своим зрением с расстояния 4-х метров нихрена список каналов не могу прочитать, да и не очень удобно мышью тыкать. Поэтому я посмотрел менюхи в легендарном DreamBox-е, в OpenBox-e, и триколоровском DRE-5000. Меню реализовал
как в дриме без всяких бесполезных наворотов, алгоритм прокрутки мне больше понравился в Open-е , а управление от триколора (одно нажатие «ОК»- выдает меню со списком каналов, кнопками «up» «down» прокрутка каналов вверх-низ соответственно, повторное нажатие кнопки «ОК» переключает канал, и наконец кнопка exit убирает меню.

Конечно были мысли с размешение списка каналов в несколько столбцов как у триколора или расположение рядом анонса как в дримбоксе, но ни то ни другое не позволяет сделать размер шрифта, а это как вы помните и было первостепенной задачей. Цвета старался подобрать не раздражающие и что бы было видно менюху из далека. Вобщем сделал менюху для комфортного , как в ресивере переключения списка каналов. Получилось очень неплохо, прокрутка меню из 140 каналов занимает секунды, при этом скорость не слишком высокая, так что успеваешь заметить нужный канал, за что спасибо разработчикам DVBDream API для плагинов предоставили «реальное» :).

В следующих версиях планируется:

Будет шкала звука
Название передачи и процентовка внизу списка каналов.
Полное инфо

Если все это вас заинтересовало то пишите предложения:

mail: [email protected]
или оставляйте сообщения в гостевой http://big-town.narod.ru

Вот так все это выглядит сейчас:

Вложение:
docosd_html_m4c8ba87f.gif


OSD с инструкцией по установке.

Вложение:
OSD.ZIP


WinLirc c конфигом пульта от TT-4200.

Вложение:
winlirc.zip


OSD 1.1
В новой версии 1.1:
добавлена OSD на звук
организован фильтр по четырем спутникам (по умолчанию EutilSat w4 36e), который доступен по F9, или через меню "Модули", дабы не отображать вам все каналы, у меня например позиционер+дисект и одвременно мне нужны 2-спутника, а не весь лист с 90е по 5е, думаю что фильтр будет полезен

Вложение:
OSD11.ZIP


У вас нет необходимых прав для просмотра вложений в этом сообщении.

_________________
Правила подачи запроса при проблемах

Лучший форум по Сат ТВ:Спутниковый Мир - satsis.info


24 дек 2009, 22:00
Профиль
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти: