Этот ответ предполагает, что RPi работает под управлением raspbian (версия Buster, июнь 2019 г.). Также предполагается знание терминала, базовых команд из командной строки и редактирования текстовых файлов.
Шаг 1. Установите lirc
1) Откройте окно терминала и установите LIRC. Имейте в виду, что это, скорее всего, вызовет ошибку «Не удалось запустить поддержку приложений удаленного ввода-вывода с гибкой ИК-подсветкой», поскольку к установленным файлам теперь добавлен .dist, а суффикс необходимо удалить, как указано ниже. Не тяжело, но неприятно.
$ sudo apt-get update
$ sudo apt-get install lirc
----НЕ ВОЛНУЙСЯ! так как это, скорее всего, вызовет ошибку «Не удалось запустить поддержку приложения удаленного ввода/вывода гибкого ИК», поскольку суффикс .dist необходимо удалить из lirc_options.conf. Просто скопируйте файл, как показано.
$ sudo cp /etc/lirc/lirc_options.conf.dist /etc/lirc/lirc_options.conf
2) Переустановите lirc теперь, когда файл lirc_options.conf был переименован.
$ sudo apt-get install lirc
Шаг 2. Отредактируйте файл lirc_options.conf
Отредактируйте /etc/lirc/lirc_options.conf следующим образом, изменив эти две строки:
:
:
driver = default
device = /dev/lirc0
:
:
Шаг 3. Выполните копирование, чтобы удалить суффикс .dist из файла lircd.conf.dist
Удалить суффикс .dist из /etc/lirc/lircd.conf.dist
$ sudo cp /etc/lirc/lircd.conf.dist /etc/lirc/lircd.conf
Шаг 4. Отредактируйте файл config.txt
Отредактируйте /boot/config.txt, добавив одну строку в раздел модуля lirc-rpi следующим образом. В этом примере предполагается, что RPi «прослушивает» контакт 17 BCM для ИК-приемника, но можно использовать любой контакт ввода-вывода RPi. Я еще не пробовал, но если вы хотите отправлять команды из RPi, добавьте и раскомментируйте 4-ю строку, как показано ниже, чтобы отправлять ИК-команды на контакт 18 BCM.
:
:
:
# Uncomment this to enable the lirc-rpi module
#dtoverlay=lirc-rpi
dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18
:
:
:
Шаг 5. Проверьте состояние и перезагрузите компьютер
1) Остановите, запустите и проверьте состояние lircd, чтобы убедиться в отсутствии ошибок!
$ sudo systemctl stop lircd.service
$ sudo systemctl start lircd.service
$ sudo systemctl status lircd.service
2) Перезагрузить
$ sudo reboot
Шаг 6. Проверьте удаленное управление
Этот шаг предполагает, что у вас есть ИК-приемник, подключенный к вашему RPi через контакт, указанный в config.txt.
1) остановите службу LIRCD и протестируйте удаленный доступ с помощью команды mode2
$ sudo systemctl stop lircd.service
$ sudo mode2 -d /dev/lirc0
3) Направьте пульт на приемник и нажмите несколько кнопок. Вы должны увидеть что-то вроде этого:
:
:
space
pulse
:
:
4) Нажмите Ctrl-C, чтобы выйти
5) Ваш ИК-приемник настроен и готов перейти к части 2 и получить доступ к нему в Python.
person
user1200233
schedule
09.08.2019