Posts by HiassofT

    I did some more digging but I'm still not sure who's to blame for the wakeup issues. Could be kernel 4.11, could be atvclient - no idea.

    I think the best solution is to build the hid-appleir driver as a module. Other major linux distributions do this as well, people can still use the remote without atvclient and it's also easy to disable the driver via a simple modprobe blacklist entry.

    Could you please do a test with this build: LibreELEC-Generic.x86_64-8.2-devel-20171108132958-r26201-g0285ca7ff1.tar

    This build includes the appleir driver as a module, to disable it create a file /storage/.config/modprobe.d/disable-appleir.conf with the following content:

    Code
    blacklist hid_appleir

    I've also enabled wake-from-suspend per default on the appleir USB device so you should no longer need the "echo enabled > /sys/bus/usb/devices/2-1.8.2/power/wakeup" line in autostart.sh.

    Could you create the modprobe file and remove the wakeup link from your autostart.sh and test if that setup works?

    so long,

    Hias

    USB remote dongles are often not configurable via lirc or ir-keytable, they appear to the system like a USB keyboard. The Gmyle / Ortek VRC-1100 dongle is one such example, Another common example for this class of IR receivers is the FLIRC dongle.

    gpio-ir is one of the most flexible IR receivers as it supports both in-kernel decoding and can also be used with lirc. In this case it's important that only one configuration method (either ir-keytable or lirc) is used, otherwise you have 2 configuration schemes fighting against each other - a classical race condition.

    so long,

    Hias

    Thanks for the info!

    This is very puzzling. Systemctl start atvclient does exactly the same, it runs atvclient -m, and no errors are logged. No idea why one invocation should work but not the other.

    You could try playing around with the Harmony settings. A lot of IR issues stem from the Harmony working quite differently than original remotes. For example, command repeat should be set to 0. Another thing to check is the configured remote profile - there are 2 different apple remotes, see eg here: Apple remote - Official Kodi Wiki . Try both the 6 and 7 button remote profiles.

    If none of this helps, it's worth testing with lircd instead of atvclient. First disable atvclient:

    Code
    systemctl mask atvclient

    then reboot (you can later re-enable atvclient with "systemctl unmask atvclient" plus rebooting).

    Now copy /etc/lirc/lirc_options.conf to /storage/.config/lirc_options.conf and change the driver and device configuration:

    Code
    driver          = macmini
    device          = /dev/usb/hiddev0

    Note: if you have more than one /dev/usb/hiddev* file, test with all of them.

    You'll also need a /storage/.config/lircd.conf file matching your remote. You can either try the one from the kodi wiki page linked above or this one - depending on which remote you have configured - lircd.conf.macmini

    If you use the latter you have to change the KEY_... definitions to KEY_UP, KEY_DOWN, KEY_LEFT, KEY_RIGHT, KEY_OK and KEY_BACK to get normal control.

    Now you can enable Lirc in LibreELEC Settings -> Services and see if it works.

    If none of the lircd.conf files work, you can try to create your own using irrecord. Make sure you disable lirc in LE settings before, otherwise irrecord can't access the IR receiver device.

    Code
    irrecord -H macmini -d /dev/usb/hiddev0

    After running that copy the newly created REMOTENAME.lircd.conf file to /storage/.config/lircd.conf and enable lirc in LE settings again.

    Note: I haven't tested this myself (don't have the hardware), so it could be that I got something wrong. In this case just post here :)

    so long,

    Hias

    This sounds like atvclient might be starting a bit too early.

    Could you test if it works after running the following commands:

    Code
    systemctl stop atvclient
    systemctl start atvclient

    also please post the output of the following commands (after running the commands above)

    Code
    cat /proc/bus/input/devices | paste
    systemctl status atvclient | paste

    so long,

    Hias

    Hi Jeroen,

    interesting that atvclient always worked for you - I'll probably need have a closer look into the differences between your setup and the one where atvclient failed.

    Here's a build without the apple-ir driver: LibreELEC-Generic.x86_64-8.2-devel-20171030102100-r26198-g0239080387.tar

    It would also be great if you could run the following commands on 8.0.2, 8.2.0, 8.2.0 with atvclient disabled, and the build above and post the output - this should hopefully give some hints if other wakeup related settings have changed:

    Code
    cat /proc/acpi/wakeup
    find /sys/devices -name wakeup | xargs grep .

    so long,

    Hias

    If I understand the config correctly eventlircd will translate the button presses from the firetv remote into lirc events - and longpress won't work.

    You could try disabling that, then button presses will show up as keyboard events in kodi - with some different key ids though, eventlircd also remaps a few buttons, eg KEY_KPENTER to KEY_OK - see /etc/eventlircd.d/aftvsremote.evmap. No guarantee all buttons will work and you'll also have to create a keyboard.xml file on your own.

    Easiest way to do this is to run the following command and then reboot - eventlircd will still be running but it won't translate any remote events into lirc events:

    Code
    : > /storage/.config/udev.rules.d/98-eventlircd.rules

    If it doesn't work just remove the empty udev rule file and reboot:

    Code
    rm /storage/.config/udev.rules.d/98-eventlircd.rules

    so long,

    Hias

    According to this post atvclient didn't work at all until we enabled the appleir driver atvclient working but kodi does nothing

    I 've just kicked off a build without that driver and can upload it tomorrow but I suspect wake-from-suspend will still not work and atvclient won't work either.

    BTW: just noticed that you wrote that wakeup didn't work with 8.0 either and you manually had to add something to autostart: Apple IR Remote (atvclient) not working in v7.90.010 ALPHA

    8.2 uses a newer kernel (4.11 instead of 4.9 in 8.0) so probably some other change(s) might be needed...

    so long,

    Hias

    The previous versions contained no driver for the apple remote at all :)

    We added the apple-ir driver because we got reports that atvclient no longer worked without it. Also using lirc with the macmini / usbhid driver seems to require it.

    Unfortunately none of us LibreELEC developers have such hardware to test.

    BTW: are you using atvclient? If yes, uninstall it, then reboot, then ssh in, run the command from above and test again if wakeup works.

    IIRC atvclient unbinds the USB device so the command I posted could silently fail. Without atvclient probably only ENTER and volume up / down will be working, but that should be enough to test this. Better connect a USB keyboard during tests though.

    If that works, install atvclient, check if the remote works normally, and then check if suspend / remote wakeup works. Don't reboot in between, otherwise the wakeup settings from manually running wakeup_enable might be lost.

    so long,

    Hias

    One difference is that we enable the apple-ir driver in 8.2.0 - this could be what's causing the issue, although I have no idea why wakeup worked before.

    Could you test if wakeup works after running the following command on 8.2.0:

    Code
    DEVPATH="/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.8/2-1.8.2/2-1.8.2:1.0/0003:05AC:8242.0001/input/input4" /usr/lib/udev/wakeup_enable

    so long,

    Hias

    Try decreasing the command repeat settings in the harmony software as described here: Fixing Repeats

    We recently diagnosed an issue with harmony remotes on kernel 4.14, and it looks like the harmony command feature uses a too long delay (about 240ms between signals instead of the expected ~100ms), setting command repeat to 0 or 1 fixed that.

    so long,

    Hias