Key mapping/Key settings for Original Apple IR Remote (currently weird)

  • Dear all,

    I know, there are lots of post on similar topics already raised in the forum and maybe i miss some notes ... but please believe me, I already check the forum and either the problem is mentioned for a very older version, the "solutions" didn't work for me or they are discussion on Kodi on MacOS.

    Basically I have one issue right now (posted in another Request as well, but I doubt that no one recognized it) ...

    I want to setup und use LibreELEC on a Macmini 3,1 ... Installation done, all works pretty well, but ...

    Original Mac Remote is working out-of-the-box with LibreELEC/Kodi, but the Remote keys are not set correctly, up/down = Volume up/down; Left/right = No action etc. not like the key setting for LibreELEC for AppleTV.

    I tried different things mentioned in other posts (use different keymap.config etc.) but all without success.

    Funny thing, when you install Kodi as an application on MacOS, original Mac Remote is working much better, not perfect but key settings are better.

    Who can help me with adapting the settings for the Mac remote (white and silver one) or even give me a hint were i need to look for ...

    As I said, if tried different "solutions" but they where all mentioned for an earlier Kodi version. I use version 9.97.1

    Thanks !!

  • Thanks for the reply ...

    This is exactly what i tested and read before ... but i failed ..

    Okay ...

    I stoped Kodi and Lircd

    -> systemctl stop kodi

    -> systemctl stop eventlircd

    I try ir-keytable

    -> ir-keytable

    /sys/class/rc: No such file or directory

    No device found

    Afterwards I tried to load some of the examples (zotac, rc6_mce)

    -> ir-keytable -c -w /usr/lib/udev/rc_keymaps/rc6_mce

    Read rc6_mce table

    /sys/class/rc/: No such file or directory

    No device found

    .... Does it mean that the OS didn't found the ir device ... and only Kodi do ??

    Sorry ... to stupid ... attached you can find my dmesg as well ...


  • There is an interrupt that cannot be handled:

    IRQ 20 is used for PCI Interrupt Link [LUS0] enabled at IRQ 20 (IMO the USB) and PCI Interrupt Link [Z00F] enabled at IRQ 20 (no idea what this is).

    Likely a driver for the Z00F device is missing.

    Try adding the mentioned irqpoll kernel parameter to the APPEND line in /flash/syslinux.cfg (after mount -o remount,rw /flash).

  • Many thanks for the reply ...

    I try your suggestion but without success ...

    Furthermore I updated to librelec 10.0 and I didn't see the same IRQ error as before ... Furthermore I searched for IR in dmesg ...

    [ 8.917583] input: Apple Computer, Inc. IR Receiver as /devices/pci0000:00/0000:00:04.0/usb3/3-5/3-5:1.0/0003:05AC:8242.0004/input/input6

    [ 8.972505] appleir 0003:05AC:8242.0004: input,hiddev96,hidraw3: USB HID v1.11 Device [Apple Computer, Inc. IR Receiver] on usb-0000:00:04.0-5/input0

    But with ir-keytable I got the same results ..

    miniELEC:/usr/lib/udev/rc_keymaps # ir-keytable
    No devices found
    miniELEC:/usr/lib/udev/rc_keymaps #
    miniELEC:/usr/lib/udev/rc_keymaps # ir-keytable -c -w /usr/lib/udev/rc_keymaps/l
    Read rc6_mce table
    No devices found
    miniELEC:/usr/lib/udev/rc_keymaps #

    Attached you will find newest dmesg as well ...

  • Even on another LibreElec MC, I got the same results when I run ir-keytable ... No device found ...

    For my Apple TV 1 ... The same ...

    and on my AppleTV1 everything is working well.

    Sorry, but i don't understand this lirc topic ... ;-(

  • AppleTV (mk1) uses "atvclient" to process events from the receiver, see GitHub - chewitt/atvclient: AppleTV Remote XBMC Event Client for Linux .. but we dropped the package from LE several years ago now. It's my understanding that the kernel should be able process the events via USBHID, but you will need to use LIRC which is disabled by default. I'm not very clued up on LIRC usage, but…n/ir-remotes#lirc-support and iMacIntel - Debian Wiki might give some hints on what to do.

  • Thanks for the reply Chewitt

    This was the first missing link ...

    "Since LibreELEC 8.2.0 LIRC is disabled by default"

    And this seems to be removed or disabled as well ...

    ", but can be enabled in LibreELEC Settings > Services > Lirc."

    In 10.0.0 its not available for me ... and i never recognized that settings

    Nevertheless ... i will try to run licrd manually

  • I think the settings add-on stuff was removed around 9.0 or 9.2 as it wasn't really needed. These days we detect /storage/.config/lircd.conf (via lircd.service) which runs a helper looking for /storage/.config/lirc_options.conf before executing /usr/sbin/lircd .. no conf files = no need to start lircd (only eventlirc).

  • Hi Chewitt,

    many thanks for the reply ... Sorry I didn't had the time and the mood the last days to test it out ... but finally looks like i'm to stupid ...

    okay ...let's start from the beginning ...

    Apple Remote is working out of the box !!! ---- but with the wrong key settings ...

    Means: "key up" = "volume up" ; "key down" = "volume down"

    Okay ... next i checked for LIRC options ...

    I copied etc/lirc/lirc_option.conf to /storage/.config/lirc_option.conf

    and i created a new lircd.conf in /storage/.config/ from a sample file for Apple Remote (white and silver)

    furthermore ..


    (no keys recognized with irw ... but still the same in Kodi "key up" = "volume up" ; "key down" = "volume down")

    also i tried the keymap.xml solution ...

    i created a new keymap.xml in /storage/.config/ based on an example for the Apple Remote ...

    No success

    So whatever i do ... nothing changes the configuration of the keysettings of my remote

    Finally i'm total confused and total stucked. There are so many "How to" but all slightly different

    Sorry to bother all of you again with my problems ...

  • The "lsusb" output isn't helpful, we know the kernel driver probes/loads and is running and it just (conf)uses space in the post. I think you're going wrong at the lirc level. I have low personal knowledge of this stuff, but I know you need to create the conf and options conf and reboot to effect the changes, not simply restart Kodi. Maybe HiassofT has suggestions when he returns from vacation.

  • Hi Chewitt,

    many thanks for the reply ... Sure, i have restarted the box several times ... But it looks like that the Conf and Option_conf files are not used by the system, for whatever reason ...

    As I said ... in the LIRC documents it's stated that i need to create the lirc.conf with the irrecord command and the irrecord command is running with a named "lirc driver". The Lirc driver is configured in /etc/lirc/hardware.conf ... which is not existing in the default libreelec installation but available (macmini and default)...

    but ...

    HiassofT would be really appreciate if you can advice me ..

  • Hi chewitt, hi HiassofT ,

    finally I managed, based on the other description, to setup the Apple Remote (silver and white).

    Summary ... LIRC is not required, System Tools not required, atvclient not available beginning from Libreelec 9.2, Apple Remote is supported since LE 9.2 out of the Box, but keymapping is different and needed to be adapted.

    The solution is quite simple (but some documentations confusing a lot ...).

    Just place a customized keymap.xml in ... .kodi/userdata/keymaps/ ... is required.

    I used the recommended settings, and it works best for me with all versions above LE 9.2

    Many thanks for the great support !!!




      (350 Byte, downloaded 1 times, last: )
  • Many thanks for the support again !!

    After some testing I figured out that the solution is working well, but some of the "feature" keymapping needed to be adapted. Ex. When you watch a movie, fast forward with remote is not working/configured. But I guess some smarter guys will be able to adapt the keymap.xml for more advanced behavior.

    Navigation works fine with the mentioned keymaps.

    Because of some other reasons, I decided to run LE 9.2 on my macmini3,1 for the moment, and I decided to use the atvclient solution mentioned in the other post as well (works little smarter for me, but I know that this solution is outdated and not supported).

    -> Create a new directory /storage/bin

    -> Copy the atvclient file to the directory /storage/bin/

    -> Copy the atvclient.service file to the directory /storage/.config/system.d/

    Run the following two commands to enable the service:


    systemctl enable atvclient.service
    systemctl start atvclient.service

    Furthermore I recognized that the atvclient solution unfortunately not works with LE 10.0 (just a quick) run.