Hi all,
here's my setup:
I run the latest and greatest ArchLinux ARM on my Raspberry PI2 and I connected a TSOP4838 proofed IR receiver to the GPIO, Ports 1,6,12 (GPIO 18).
My intention is to enable my AppleTV Remote to work with my Kodi installation.
I went through different Tutorial to setup lirc for this setup, the connection is working, but apparently there seems to be a Kernel/Module bug. Here's some further description:
I installed lirc and made sure lirc-rpi is loaded:
Basic configuration in /boot/config.txt
$this->bbcode_second_pass_code('', 'device_tree_overlay=lirc-rpi
device_tree_param=gpio_out_pin=17
device_tree_param=gpio_in_pin=18
device_tree_param=gpio_in_pull=down')
-> Test:
$this->bbcode_second_pass_code('', 'lsmod | grep lirc
lirc_rpi 6646 0
lirc_dev 8181 1 lirc_rpi
rc_core 16932 1 lirc_dev')
-> Result: Seems good!
Next thing to check is the /dev entry and the gpio
$this->bbcode_second_pass_code('', '[root@pi2 ~]# ls /dev/lirc*
/dev/lirc0
[root@pi2 ~]# cat /sys/kernel/debug/gpio
GPIOs 0-53, platform/3f200000.gpio, pinctrl-bcm2835:
gpio-35 (led1 ) in hi
gpio-47 (led0 ) out lo ')
-> Result: /dev/lirc0 is there, but gpio-18 is missing ... (which shouldn't be the case)
But:
$this->bbcode_second_pass_code('', '[root@pi2 ~]# dmesg | grep lirc
[ 7.164522] lirc_dev: IR Remote Control driver registered, major 246
[ 7.288414] lirc_rpi: module is from the staging directory, the quality is unknown, you have been warned.
[ 8.247930] lirc_rpi: auto-detected active low receiver on GPIO pin 18
[ 8.266144] lirc_rpi lirc_rpi: lirc_dev: driver lirc_rpi registered at minor = 0
[ 8.279193] lirc_rpi: driver registered!')
Shows GPIO18
and mode2 -d /dev/lirc0 shows me my inputs when using my IR remote.
That concludes that the IR receiver is connected correctly and works.
I'm also able to use irrecord to record the inputs of my remote and save the config file for them.
Though, irw which should show me my inputs (when lircd is running) does nothing (no output at all)
Conclusion:
- The IR receiver is connected correctly.
- The RPI receives the signals correctly when going directly through /dev/lirc0
- irw doesn't work
- The GPIO pins used, are not allocated correctly
I suspect this to be a kernel problem and or a module problem with lirc_rpi. Any help in solving this is highly appreciated. I already spend well over a day trying to figure this out!