[mythtv-users] remote control mostly stopped working

TODD ANDERSON drtodd13 at comcast.net
Sat Nov 28 06:07:22 UTC 2020


> On Thu, 26 Nov 2020 20:07:01 -0800 (PST), you wrote:
> 
> >> On Thu, 26 Nov 2020 00:59:39 -0800 (PST), you wrote:
> >> 
> >> >> Am Dienstag, 24. November 2020, 06:46:57 CET schrieb TODD ANDERSON:
> >> >> > It seems that some Ubuntu update screwed up my remote control.  I have a
> >> >> > Hauppauge remote and the arrow keys still work but basically nothing else. 
> >> >> > From ir-keytable, it seems like /etc/rc_keymaps/hauppauge isn't being
> >> >> > loaded at startup anymore.  If I load the file manually with ir-keytable -c
> >> >> > -w /etc/rc_keymaps/hauppague then ir-keytable -t will report the correct
> >> >> > scancodes and mappings when I push the remote buttons but it is like those
> >> >> > keystrokes aren't sent to mythfrontend because still only the arrow keys
> >> >> > work.
> >> >> > 
> >> >> > In mythfrontend setup, when using ir-keytable, I just want to make sure that
> >> >> > LIRC daemon socket should be empty.  Should the evdev device name go
> >> >> > anywhere in the mythfrontend setup?
> >> >> > 
> >> >> > Any suggestions for what the problem could be?
> >> >> 
> >> >> Like Stephen suggested, the configs and mappings are configured different. My 
> >> >> appraoch for this (debian not ubuntu, and I'm lazy) was to just configure 
> >> >> mythfrontend to react to the unmapped values. So you can just go to config 
> >> >> screen, if you call the menu with blue-button (like I do) try to map menu to 
> >> >> blue-button in frontend instead of mapping blue-button to m in system.
> >> >
> >> >I have previously tried "edit keys" and was able to map a couple additional buttons.
> >> >However, for some buttons (like the 4 color buttons at the bottom of the remote)
> >> >when I go into edit keys and select the function I want to map to and select an
> >> >empty slot and it asks me to press the key on the remote, I do, and then nothing
> >> >happens.  The buttons that I really miss are pause and the 4 color buttons.
> >> 
> >> Do the non-working keys show up when you test them with ir-keytable
> >> -t?  If not, then there is a problem with the keymap.  What version of
> >> Ubuntu are we talking about?  I found that there have been some
> >> changes to the names of the keys in the keymap files between 18.04 and
> >> 20.04.  And the keymap files themselves have changed - they now have a
> >> .toml extension and are found in /lib/udev/rc_keymaps.
> >> 
> >> The first thing to do is to make sure that all the keys on the remote
> >> work with ir-keytable -t.  That is necessary for using lirc or using
> >> the key mappings directly in MythTV.
> >> 
> >> Next, you have to decide whether you are going to use lirc or not.  If
> >> you have more than one program that you want to use lirc with (eg
> >> MythTV, mplayer and irexec in my case), then it is almost certain that
> >> you will need to use lirc.  If you want to be able to select which
> >> keys will autorepeat or not, and the autorepeat rate, you also need to
> >> use lirc.
> >> 
> >> If you decide not to use lirc, you may need to use a custom keymap
> >> file to remap any keys that MythTV can not see to KEY_ values it is
> >> able to use.  Find the hauppauge.toml file in /lib/udev/rc_keymaps and
> >> copy it to /etc/rc_keymaps and edit it there.  In /etc/rc_maps.cfg,
> >> change the "hauppauge.toml" entry to "/etc/rc_keymaps/hauppauge.toml".
> >> 
> >> It has been a while since I last modified my key mappings - I have
> >> reverted to using the standard mappings and changing things in the
> >> lirc config.  But if I remember correctly, to test your changes you
> >> need to run "ir-keytable -a" or if you have multiple remote receivers,
> >> "ir-keytable -a -s rcX" (with X set to the remote number).  That
> >> should load your new keymap and you can then test it with "ir-keytable
> >> -t".  I am not sure if that is sufficient to get your new keytable
> >> loaded on boot though - try rebooting and see if your changes are
> >> still there.  If not, you will need to add your "ir-keytable -a"
> >> command to /etc/rc.local or create a systemd unit to run that command
> >> at boot.
> >> 
> >> In 20.04, the valid KEY_ names you can use are found in:
> >> 
> >> /usr/src/linux-headers-xxxxx/include/uapi/linux/input-event-codes.h
> >> 
> >> where xxxxx is your current kernel version number.
> >
> >I am using Ubuntu 20.  I just copied and customized the new hauppauge.toml
> >file and put it in the directory you mention above.  Then I rebooted and
> >ran ir-keytable -t and the keymappings in hauppauge.toml are not being used.
> >If I explicitly do ir-keytable -c -w /etc/rc_keymaps/hauppauge.toml then
> >ir-keytable -t will return the correct values.  However, after that, the
> >buttons do still not work in the frontend.  Is it necessary to restart
> >the frontend after changing ir-keytable?
> 
> Not that I know of.  The key tables are in the kernel, so if they show
> up in ir-keytable -t, they should be available to all programs.  But,
> remember how mythfrontend works - it uses keystrokes available from a
> normal keyboard.  When using lirc, the KEY_ values generated by IR
> remotes get translated by lirc to normal keyboard keystrokes.  So for
> example, the KEY_INFO keystroke might be translated in lirc to I which
> is what mythfrontend expects for the Info screen.  Mythfrontend is
> unlikely to be able to see KEY_INFO directly, so you would need to
> change hauppauge.toml so that the I key on the remote does not send
> KEY_INFO, but instead sends I (KEY_I).  You will need to change the
> hauppauge.toml settings for most keys.  You may even need to change
> the numeric keys, as the keyboard numeric keys are encoded as KEY_0
> etc, where the new encoding in 20.04 for the IR numeric keys is
> KEY_NUMERIC_0, which are keyboard numeric keypad versions of the
> numeric keys.

Thanks to everyone for their help.  I still don't know why hauppauge.toml
isn't loading automatically but I put ir-keytable -c -w hauppauge.toml
in some start-up file to get it to happen at boot-up.  After I did that,
I added /dev/lirc0 to the frontend's lirc device and now things seem to
be working normally.


More information about the mythtv-users mailing list