Server Version#: 1.27.0.5849-99e933842
Player Version#: 1.19.1.3076-b24239e5
The new HTPC app looks great! However, Plex Media Server (still on my system) has full functionality with the old IR Remote; and the new HTPC app does not register input for the up/down buttons. Only left-right (side to side) works.
I am unsure about what to do next. Has anyone seen this behaviour?
I can see those buttons working / being printed in the log.
However when I press UP or DOWN, nothing is printed in the Plex log. It appears Plex doesn’t even register the input.
I used inputlircd and irw to try to understand exactly what keys are printed on the /dev/input/event* stream.
@BigWheel it seems UP is mapped to KEY_VOLUMEUP and DOWN is mapped to KEY_VOLUMEDOWN.
So the input is definitely available on /dev/input/event*, but somewhere between there and Plex it is lost.
PS: interestingly if I use inputlircd, Plex can recognise UP and DOWN (because it reads it from the LIRC socket as opposed to the keyboard). However if I do so I end up in an infinite loop where pressing one button repeats it forever.
Unfortunately this is one of the examples of how IR is fairly broken on Linux. It is likely in irkeytable where the up/down buttons are being swallowed into volume up/down commands. Maybe that can be configured but I’m not certain.
You have to configure lirc to release events release = true and HTPC looks for keys with the suffix _LIRCUP to indicate release (release_suffix = _LIRCUP)
Thanks so much for getting back to me!
Sorry if my understanding is incorrect, but given that the device is showing up as a USB-HID, I thought ir-keytable wouldn’t matter as it’s only used for IR receivers? And indeed I don’t have any rc0 device under /sys.
Regarding LIRC, I was using inputlirc which I guess has no support for automatic release events (it’s a small daemon which reads from /dev/input/event* and writes in LIRC-format to a UNIX socket under /var/run/lirc/lircd). Maybe I’ll try to patch it anyway just for fun :).
My window manager (i3) was swallowing up KEY_VOLUMEUP and KEY_VOLUMEDOWN. I could reproduce easily with xev. I moved to openbox and with a custom inputmap everything works correctly.