
Совсем новичок в этом низкоуровневом драйвере, так много мест, где можно сделать ошибки. В основном я пытаюсь получить ИК-передатчик с lirc. У меня есть ИК-светодиод на выводе 23 с транзистором, однако там ничего нет /dev/lirc
или/dev/lirc0
Я установил lirc с помощью apt-get install lirc
,
затем добавлено dtoverlay=lirc-rpi,gpio_out_pin=23,gpio_in_pin=22
и config.txt
изменено lirc_options.conf
на
driver = default
device = /dev/lirc0
Однако в ничего нет /dev
, и если я попытаюсь отправить с помощью, то irsend
получу hardware does not support sending
. Состояние системы для lircd показывает эту ошибку:
Error: could not get file information for /dev/lirc0
Я использую RPi 3B с установленной Linux raspberrypi 4.19.42-v7+ #1219
прошивкой Raspbian Stretch.
Я не знаю, какой еще дамп команд вам может понадобиться, поэтому просто оставьте комментарий, и я дополню вопрос.
ПРИМЕЧАНИЕ: Я читал о gpio-ir
том, что, похоже, это только приемник. Любая ссылка на любую библиотеку с ИК-передачей также будет оценена.
решение1
Кажется, в более новом ядре lirc-rpi
больше не существует /boot/overlays/
. Я обнаружил, /boot/overlays/README
что мы должны использовать gpio-ir
(Receiver) или/и gpio-ir-tx
(Transmitter) вместоlirc-rpi
Мне это помогло изменить:
dtoverlay=lirc-rpi,gpio_out_pin=23,gpio_in_pin=22
к:
dtoverlay=gpio-ir,gpio_pin=22 #(without: in)
dtoverlay=gpio-ir-tx,gpio_pin=23 #(without: out)
На данный момент мне придется закомментировать один из них, потому что он работает либо gpio-ir
ИЛИ gpio-ir-tx
, а не оба одновременно (для меня).
Дж.
решение2
У меня есть uname -a
то, что дает
Linux Hostname 4.9.35-v7+ #1014 SMP Fri Jun 30 14:47:43 BST 2017 armv7l GNU/Linux
и после добавления этой строки /boot/config.txt
и перезагрузки
dtoverlay=lirc-rpi,gpio_in_pin=22,gpio_out_pin=23
Я наконец-то получил/dev/lirc0
решение3
Я использую Lirc для своего Smarthome с "fhem" для отправки сигналов на телевизор и получения сигналов от пульта ДУ для переключения некоторых лампочек. На данный момент я могу только отправлять сигналы. Мой путь на свежем и обновленном STRETCH:
apt-get install lirc ir-keytable
Обновите следующую строку в /boot/config.txt:
(#dtoverlay=gpio-ir,gpio_pin=27)
dtoverlay=gpio-ir-tx,gpio_pin=23
Обновите следующие строки в /etc/lirc/lirc_options.conf:
драйвер = по умолчанию
устройство = /dev/lirc0
установить LircClient:
оболочка perl -MCPAN -e
установить Lirc::Клиент
Я могу использовать свой старый записанный lircd.config для отправки сигналов на мой телевизор. Но я не могу использовать ".lircrc" по-старому, для приема сигналов. Может быть, есть кто-то, кто знает, как это сделать? Надеюсь, это поможет! J