Интернет радио из Raspberry Pi управляемое любым пультом. Статья 1 – подключаем пульт.

29.09.2013 19:19

За основу взята статья с хабра http://habrahabr.ru/post/193572/.

Только я не стал заморачиваться с передатчиком(в моем проекте он пока не нужен) а сделал только приемник.

Приемник был выпаян из нерабочего DVD проигрывателя  и маркировки не имеет, но судя по надписям на плате и резистору в цепи питания,

он таки должен нормально работать от 3,3 вольт.

Схема подключения.

Так все выглядит вживую.

 

Можно приступать к «приручению» пульта.

Предполагается, что на raspberry уже установлен и работает rasbian(легкий debian для raspberry).

И нам нужно только доустановить пакет lirc, который содержит все необходимое

для использования практически любых пультов .

Устанавливаем сам lirc:

sudo apt-get install lirc

Поправим /etc/modules для того, что бы lirc знал какими выводами пользоваться

для приема и отправки ИК сигналов:

sudo nano /etc/modules

добавляем в файл две строки:

lirc_dev

lirc_rpi gpio_in_pin=11

После этого возможно нужно перегрузиться и остановить демона lircd:

sudo service lirc stop

а может и так:

sudo killall lircd

Проверяем работает ли наш модуль командой:

sudo mode2 -d /dev/lirc0

Если поползли цифры при нажатии на кнопки, значит ИК приемник работает.

Для просмотра доступных имен кнопок:

irrecord --list-namespace

Теперь настроим наш пульт:

irrecord -d /dev/lirc0 ~/lircd.conf

Программа попросит понажимать кнопки на пульте.

Нажимаем пока не заполниться строка или две.

Теперь программа опять просит нажимать кнопки пока не заполниться строка.

Нажимаем, и наконец прога просит ввести соответствия зарезервированым

названиям кнопок кнопки на пульте, короче вводим:

KEY_POWER, нажимаем энтер и соответствующую кнопку на пульте.

И так пока не забьем все кнопки.

Теперь прога попросит:

Пожалуйста, нажмите произвольную кнопку несколько раз как можно быстрее.

Все теперь файл настройки пульта создан, можно передохнуть :).  Это была самая утомительная часть работы.

А теперь "Горбатый", начинаем настройку управления программ!
Далее необходимо скопировать созданный файл настроек:

sudo mv /etc/lirc/lircd.conf /etc/lirc/lircd.conf.bak

sudo cp ~/lircd.conf /etc/lirc/lircd.conf

Теперь нужно отредактировать файл /etc/lirc/hardware.conf, чтобы

он имел примерно такое содержание:

########################################################

# /etc/lirc/hardware.conf

#

# Arguments which will be used when launching lircd

LIRCD_ARGS="--uinput"

# Don't start lircmd even if there seems to be a good config file

# START_LIRCMD=false

# Don't start irexec, even if a good config file seems to exist.

# START_IREXEC=false

# Try to load appropriate kernel modules

LOAD_MODULES=true

# Run "lircd --driver=help" for a list of supported drivers.

DRIVER="default"

# usually /dev/lirc0 is the correct setting for systems using udev

DEVICE="/dev/lirc0"

MODULES="lirc_rpi"

# Default configuration files for your hardware if any

LIRCD_CONF=""

LIRCMD_CONF=""

########################################################

И перегрузиться:

sudo restart

Для проверки используем программу :

irw

Если все настройки правильные программа будет ждать нажатия кнопок на пульте

И отображать их соответствие командам в файле конфигурации:

0000000000001801 00 KEY_1 /home/pi/lircd.conf

0000000000001801 01 KEY_1 /home/pi/lircd.conf

0000000000001801 02 KEY_1 /home/pi/lircd.conf

0000000000001002 00 KEY_2 /home/pi/lircd.conf

0000000000001002 01 KEY_2 /home/pi/lircd.conf

В следующих статьях я расскажу про связку lirc+mpd+mpc.

Овсянников Константин.