Posts by HiassofT


    I needed to add

    Code
    ir-keytable -a /storage/.config/rc_maps.cfg


    to the autostart.sh file to make it work after rebooting.

    Thanks for the feedback!

    It's odd that you needed to add that command to autostart.sh, the system should pick up .config/rc_maps.cfg automatically on boot.

    Could you please run the following commands and post the URL you got from the last one?

    Code
    udevadm control -l debug
    udevadm trigger --action=add -s input
    journalctl -a | paste

    so long,

    Hias

    Since the remote is supported by the kernel it's best to create an ir-keytable file instead of using userspace lircd.

    First stop eventlircd and kodi so they don't interfere:

    Code
    systemctl stop kodi
    systemctl stop eventlircd

    Then we need to find out which protocol the remote is using. To do that we need some info about the IR receiver which we can get with "ir-keytable". The output should look like this:

    Code
    LibreELEC:~ # ir-keytable
    Found /sys/class/rc/rc0/ (/dev/input/event1) with:
    Driver (null), table rc-dib0700-rc5
    Supported protocols: rc-5 nec rc-6
    Enabled protocols: rc-5
    Name: IR-receiver inside an USB DVB re
    bus: 3, vendor/product: 2040:7060, version: 0x0100
    Repeat delay = 500 ms, repeat period = 125 ms


    The important things are the supported and enabled protocols. Since you already got scancode output from "ir-keytable -t" you only need to test within the "Enabled protocols", otherwise you'd need to go through all "Supported protocols" (except "lirc", which isn't a real protocol).

    Now test with each protocol if you get scancode output. Run the following command (change the protocol after "-p") and press buttons on your remote.

    Code
    ir-keytable -p nec -t

    If you get no event output try the next protocol.

    If you set the correct protocol the output should look like this - note the EV_MSC events with "scancode = ..."

    Code
    LibreELEC:~ # ir-keytable -p nec -t
    Protocols changed to nec
    Testing events. Please, press CTRL-C to abort.
    1491293447.763188: event type EV_MSC(0x04): scancode = 0x847908
    1491293447.763188: event type EV_SYN(0x00).
    1491293448.029412: event type EV_MSC(0x04): scancode = 0x847908
    1491293448.029412: event type EV_SYN(0x00).
    1491293448.351181: event type EV_MSC(0x04): scancode = 0x847908
    1491293448.351181: event type EV_SYN(0x00).


    (BTW: the output above is with a WDTV live remote which I happened to have sitting in a box)

    Now that we have determined the protocol we can create a keytable file for the remote in /storage/.config/rc_keymaps/ - let's name it "wdtv-live". Open another ssh session and start an editor (keep "ir-keytable -t" running in the other session, we need that to get the scancodes).

    Code
    nano /storage/.config/rc_keymaps/wdtv-live

    In the very first line we have to put a header with the name of the table (the actual name is not important, better avoid blanks in it but you can name it anything you like) and the protocol (after "type: "). The protocol is the important thing here. The header should look like this:

    Code
    # table wdtv-live, type: NEC

    Now we have to map the buttons. Press a button on the remote, record the scancode you got from ir-keytable (the 0x... code after "scancode = ...") and add it to the keytable file together with the key name. Note: you have to use the official linux keynames as listed in linux/include/uapi/linux/input-event-codes.h - Elixir - Free Electrons

    When you're done the keytable file should look like this:

    Code
    # table wdtv-live, type: nec
    0x847905 KEY_UP
    0x847900 KEY_DOWN
    0x847907 KEY_LEFT
    0x847909 KEY_RIGHT
    0x847908 KEY_OK
    0x84791b KEY_BACK

    Save the file, stop "ir-keytable -t" and test if the keytable file is correct. Run the following command (it clears the current kernel keytable, loads your newly created one and then starts test mode) and press keys on the remote. Note that you should now also see EV_KEY events with the keycodes:

    To make this permanent create a rc_maps.cfg file in /storage/.config/

    Code
    nano /storage/.config/rc_maps.cfg

    Insert the following line to automatically load your keymap (on any ir receiver with any kernel default keymap):

    Code
    * * wdtv-live

    Save the file, then run the following command to test if everything's setup correctly:

    Code
    LibreELEC:~ # ir-keytable -a /storage/.config/rc_maps.cfg
    Old keytable cleared
    Wrote 6 keycode(s) to driver
    Protocols changed to nec

    so long,

    Hias


    [Edit]: Saw some interesting errors in the log files.

    Code
    mceusb 1-1.5:1.0: Error: urb status = -32


    This could be the culprit. Please upload the full dmesg

    Code
    dmesg | paste


    The majority of USB errors on RPi are caused by insufficient power supplies. Try another power supply and also check with the following command if an undervoltage condition has occurred

    Code
    vcgencmd get_throttled

    It should print "throttled=0x0", if you got anything else please post the full output.

    so long,

    Hias


    I've killed these two process before starting eventlircd, and, before plugged in the USB stick:

    Code
    Mar 28 19:42:54 LibreELEC lircd-0.9.4c[749]: Info: closing '/dev/input/event14'


    Ah, sorry, I've missed that before.

    Logs and config all look fine: the eventlircd udev rule is processed correctly by udevd (it calls wakeup_enable) but for some reason eventlircd doesn't want to pick up the input device.

    I ran an identical test on my RPi with a Hauppauge USB dongle and eventlircd picked up the input device just fine.

    Very odd, no idea what's going wrong here - maybe I missed something or maybe there's a bug hiding somewhere.

    So until we have a better fix just stick to the lircd devinput workaround, at least this seems to be working fine :)

    so long,

    Hias


    Ok. maybe libreelec detect the wrong device?

    Code
    LibreELEC:~ #  /usr/sbin/eventlircd -vvv -f --evmap=/etc/eventlircd.d --socket=/run/lirc/lircd
    eventlircd[966]: /etc/eventlircd.d/default.evmap: using 0 valid keyboard shortcut mappings
    eventlircd[966]: input device /dev/input/event2: grabbed

    This text was displayed before I plug my device. No more text was displayed after I plugged it.

    journalctl -> dZDA


    Saw in the log that you also had lircd running. Could you repeat the test with lircd/lircd-uinput disabled?

    The "/dev/input/event2: grabbed" output is normal, this is eventlircd handling your powerbutton. But in addition to that event14 should be listed there, too after you plugged in the receiver. Could be that lircd grabbed the input device before eventlircd, therefore the need to run the test without lircd in the background.

    so long,

    Hias


    I've posted the output of udevadm here: GIGX

    Thanks! The output looks OK and the remote should have been picked up by eventlircd (or kodi). Very strange, not sure what's going on there.

    Could you try the following:

    Unplug the Terratec receiver, then power up your libreelec box. When it's up ssh in and run these commands:

    Code
    systemctl stop kodi
    systemctl stop eventlircd
    udevadm control -l debug
    /usr/sbin/eventlircd -vvv -f --evmap=/etc/eventlircd.d --socket=/run/lirc/lircd

    Then plug in your Terratec receiver. After a few seconds eventlircd should have detected the IR receiver and output some info. If it succeeded it should look like this:

    Code
    eventlircd[801]: /etc/eventlircd.d/default.evmap: using 0 valid keyboard shortcut mappings
    eventlircd[801]: input device /dev/input/event3: events of unsupported event type EV_MSC will be discarded
    eventlircd[801]: input device /dev/input/event3: event code 0x04 of unsupported event type EV_MSC will be discarded
    eventlircd[801]: input device /dev/input/event3: events of unsupported event type EV_REP will be discarded
    eventlircd[801]: input device /dev/input/event3: grabbed

    Then stop eventlircd with CTRL-C and post the output you got on the terminal and the journal

    Code
    journalctl -a | paste

    so long,

    Hias


    I've a Terratec USB Cinergy HTC Stick which stopped working when I upgraded my install from 7.95.1 to 8.0. I've already read other post related to Remote Control issue, but, I did not find a simple guide to solved my issue:

    ir-keytable seems to be OK:

    > Found /sys/class/rc/rc0/ (/dev/input/event14) with:

    Could you please post the output of

    Code
    udevadm info -a -n /dev/input/event14


    First check the exact event number via ir-keytable, it might change, so you'll have to adjust the command above.

    so long,

    Hias

    Very puzzling. Could you run a few more commands and post the output?

    Code
    ls -la /storage/.config/
    ls -la /storage/.cache/services/
    ls -la /dev/lirc*
    systemctl -a | paste
    udevadm info -a -n /dev/lirc0 | paste

    It would also be interesting if starting lircd manually works. Open 2 ssh sessions, in the first one run this (it's a single line, forum display will break it but copy-paste should work):

    Code
    /usr/sbin/lircd --nodaemon --loglevel=debug --driver=default --device=/dev/lirc0 --output=/run/lirc/lircd-lirc0 --pidfile=/run/lirc/lircd-lirc0.pid --release=_LIRCUP /storage/.config/lircd.conf

    If this worked (you should see "Notice: lircd(default) ready, using /run/lirc/lircd-lirc0") run the following command in the second ssh session:

    Code
    /usr/sbin/lircd-uinput --loglevel=debug --release=_LIRCUP /run/lirc/lircd-lirc0

    At this point you should have a working remote in kodi.

    Please also post the console output you got from these commands.

    so long,

    Hias

    Good news, everyone!

    I'm happy to announce that we integrated support for the Wolfson and Cirrus Logic cards into LibreELEC. Starting with today's 8.0.1 release these cards will work with official builds.

    LibreELEC (Krypton) v8.0.1 MR – LibreELEC

    If you've been using my 8.0.0 build just do a manual update to the official 8.0.1 version. This is going to be a seamless update, all your configuration settings will be preserved.

    HOW TO:Update LibreELEC - LibreELEC

    If you are new to this and do a fresh install with 8.0.1 don't forget to enable the card in config.txt via

    Code
    dtoverlay=rpi-cirrus-wm5102

    so long,

    Hias


    I use a lirc-server in the network and starting lirc from autostart like this helps to get irw showing me all the keypresses:
    mkdir -p /var/run/lirc
    /usr/sbin/lircd -c infrared-pi -O /storage/.config/lirc/lircd_options.conf /storage/.config/lirc/lircd.conf

    ..just kodi is not picking it up, it used to work for me like that.

    You also need to run lircd-uinput (adding the --uinput option of lircd might still work, but this is deprecated). See for example the lircd start script of LE:
    LibreELEC.tv/lircd_helper at libreelec-8.0 · LibreELEC/LibreELEC.tv · GitHub

    so long,

    Hias


    I have the same problem. But the develop fix does not work for me. Here is my Log: iTiA Would you mind to take a look? Did I miss something? Version 7 works perfectly fine.


    You seem to have some garbage in .config/modprobe.d/xpad.conf - better remove that file completely or try doing a fresh install on a separate card to check if you have some old cruft sitting around.

    But I think the real problem is somewhere else, the xbox receiver disconnects and reconnects to USB - this usually points to USB or power supply problems. Also try without the mouse and use another power supply.

    so long,

    Hias


    in .config there actually really is a
    -rw-r--r-- 1 root root 0 Feb 2 2016 lircd.conf
    but its empty.


    Then better remove it :)

    Quote


    your command produced a strange output
    mediacenter:~/.config # ir-keytable -p rc-6 /sys/class/rc/rc0/
    ir-keytable: Too many arguments


    ah, sorry, that should have been

    Code
    ir-keytable -p rc-6 -s rc0


    Quote


    created a

    /storage/.config/autostart.sh with
    #!/bin/bash
    # added temporarily for libreelec 8.0.0
    ir-keytable -p rc-6

    works. will check again with new version of libreelec.

    Could you disable the autostart.sh and test if this 8.0.1 preview build works:
    LibreELEC-Generic.x86_64-8.0.1.tar

    so long,

    Hias