Thanks for the suggestions. I did try to modify python code to account for incomplete signals, however it turned out to be devinput issue and how it handles IR signals coming in.
In /etc/lirc/lirc_options.conf i had to change driver to default and device to \dev\lirc0, like shown below. This allowed irrecord to record commands much more accurately and account for signal gaps and other IR signal specific events.
While it did work i noticed another issue where irrecord would report "bits 32" when you learn the remote however it would add another 32bits after the learned code for some reason. If i just remove 0xFFFFFFFF garbage and save my .config file irw command would report everything accurately, there would be no wrong keys reported and python code would just work.
The bug was documented in the following sourceforge ticket https://sourceforge.net/p/lirc/tickets/168/
While i do like working with devinput for hid devices, IR manipulation is still much better of with default driver.
In /etc/lirc/lirc_options.conf i had to change driver to default and device to \dev\lirc0, like shown below. This allowed irrecord to record commands much more accurately and account for signal gaps and other IR signal specific events.
Code:
# These are the default options to lircd, if installed as# /etc/lirc/lirc_options.conf. See the lircd(8) and lircmd(8)# manpages for info on the different options.## Some tools including mode2 and irw uses values such as# driver, device, plugindir and loglevel as fallback values# in not defined elsewhere.[lircd]nodaemon = Falsedriver = defaultdevice = /dev/lirc0output = /var/run/lirc/lircdpidfile = /var/run/lirc/lircd.pidplugindir = /usr/lib/aarch64-linux-gnu/lirc/pluginspermission = 666allow-simulate = Norepeat-max = 600#effective-user =#listen = [address:]port#connect = host[:port]#loglevel = 6#release = true#release_suffix = _EVUP#logfile = ...#driver-options = ...[lircmd]uinput = Falsenodaemon = False# [modinit]# code = /usr/sbin/modprobe lirc_serial# code1 = /usr/bin/setfacl -m g:lirc:rw /dev/uinput# code2 = ...# [lircd-uinput]# add-release-events = False# release-timeout = 200# release-suffix = _EVUP
Code:
begin codes KEY_01 0x4FEE48B7 0xFFFFFFFF KEY_02 0x6ADE609F 0xFFFFFFFF
While i do like working with devinput for hid devices, IR manipulation is still much better of with default driver.
Statistics: Posted by zvonimir256 — Fri Dec 13, 2024 12:26 pm