Alexey Woronov Posted August 4, 2019 Posted August 4, 2019 (edited) Hello! Recently, Armbian Debian 10 was installed on my ODROID-C2 I can't configure lircd, but it worked on Odrobian Debian 9! Quote # uname -a Linux odroid 4.19.57-meson64 #5.90 SMP PREEMPT Sat Jul 6 15:54:33 CEST 2019 aarch64 GNU/Linux # modprobe meson_ir # modprobe lirc_dev modprobe: FATAL: Module lirc_dev not found in directory /lib/modules/4.19.57-meson64 # grep LIRC /boot/config-* # CONFIG_LIRC is not set how to setup lircd? # cat /etc/lirc/hardware.conf LIRCD_ARGS="--uinput" LOAD_MODULES=true DRIVER="default" DEVICE="/dev/lirc0" MODULES="meson-ir" LIRCD_CONF="" LIRCMD_CONF="" Please, explain how they configure LIRC to 4.19 now without /dev/lirc*? WBR, WRA-RIPE Edited August 4, 2019 by Alexey Woronov Correction of topic
Igor Posted August 4, 2019 Posted August 4, 2019 1 hour ago, Alexey Woronov said: but it worked on Odrobian Debian 9! Which most likely uses stock 3.14.y/3.16.y kernel ... which we don't support anymore, but you can try to install it from armbian-config -> system -> alternative kernels ... or manually. Perhaps lirc support exists in this kernel as well, but I haven't tested it.
Alexey Woronov Posted August 4, 2019 Author Posted August 4, 2019 Perhaps it is enough to build a kernel with the CONFIG_LIRC=m option and everything will be fine? What might not work there? WBR, WRA-RIPE
Igor Posted August 4, 2019 Posted August 4, 2019 I am having Lepotato (which is very similar to Odroid C2) on my desk running this kernel and IR is properly recognised: [ 9.754917] input: meson-ir as /devices/platform/soc/c8100000.bus/c8100580.ir/rc/rc0/input4 Other data: http://ix.io/1QC9
Alexey Woronov Posted August 4, 2019 Author Posted August 4, 2019 Can you tell, how to configure lircd to use /devices/*/input* instead of /dev/lirc* ? Thank you in advance root@odroidc2:~# dmesg | grep meson-ir [ 6.405957] rc rc0: meson-ir as /devices/platform/soc/c8100000.bus/c8100580.ir/rc/rc0 [ 6.407347] input: meson-ir as /devices/platform/soc/c8100000.bus/c8100580.ir/rc/rc0/input5 [ 6.408476] meson-ir c8100580.ir: receiver initialized I use Samsung remote control and I can’t configure it via input, only via lirc device bits 32 flags SPACE_ENC|CONST_LENGTH eps 30 aeps 100 header 4489 4453 one 554 1668 zero 554 565 ptrail 560 gap 107568 toggle_bit_mask 0x0 begin codes KEY_RED 0xE0E036C9 KEY_GREEN 0xE0E028D7 KEY_YELLOW 0xE0E0A857 ... etc ... WBR, WRA-RIPE
Igor Posted August 4, 2019 Posted August 4, 2019 1 hour ago, Alexey Woronov said: Can you tell, how to configure lircd to use /devices/*/input* instead of /dev/lirc* ? Thank you in advance I don't know. Use search above.
Alexey Woronov Posted August 5, 2019 Author Posted August 5, 2019 Thank you. LIRC is not needed at all, Linux event subsystem is enough. i needed to run commands in the Linux shell of ODROID-C2 by pressing the colored buttons on the Samsung TV RC, and I used lircd and irexec earlier for this purpose, look above. At first I realized that Samsung remotes use the NEC protocol: ir-keytable --protocol=nec Then I scanned some codes I need: ir-keytable -t -v And place it to file: /lib/udev/rc_keymaps/samsung.toml [[protocols]] name = "samsung" protocol = "nec" variant = "nec" [protocols.scancodes] 0x7076c = "KEY_RED" 0x70714 = "KEY_GREEN" 0x70715 = "KEY_YELLOW" 0x70716 = "KEY_BLUE" The string of code initializing may be placed to rc.local, is it right? /usr/bin/ir-keytable --clear --protocol=nec --write=/lib/udev/rc_keymaps/samsung.toml 2>/dev/null Instead of irexec, I used the utility for handling Linux events: apt-get install triggerhappy And place configuration like this: # Samsung TV Remote Control KEY_RED 1 /usr/local/bin/script.sh red KEY_GREEN 1 /usr/local/bin/script.sh green KEY_YELLOW 1 /usr/local/bin/script.sh yellow KEY_BLUE 1 /usr/local/bin/script.sh blue Thats all, I hope that someone will be useful apt purge lirc WBR, WRA-RIPE 2
Recommended Posts