Posts by HiassofT
-
-
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?
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:
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:
CodeLibreELEC:~ # 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.
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 = ..."
CodeLibreELEC:~ # 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).
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:
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:
Code
Display MoreLibreELEC:~ # ir-keytable -c -w /storage/.config/rc_keymaps/wdtv-live -t Read wdtv-live table Old keytable cleared Wrote 6 keycode(s) to driver Protocols changed to nec Testing events. Please, press CTRL-C to abort. 1491296520.391503: event type EV_MSC(0x04): scancode = 0x847907 1491296520.391503: event type EV_KEY(0x01) key_down: KEY_LEFT(0x0001) 1491296520.391503: event type EV_SYN(0x00). 1491296520.644387: event type EV_KEY(0x01) key_up: KEY_LEFT(0x0001) 1491296520.644387: event type EV_SYN(0x00). 1491296522.156906: event type EV_MSC(0x04): scancode = 0x847908 1491296522.156906: event type EV_KEY(0x01) key_down: KEY_OK(0x0001) 1491296522.156906: event type EV_SYN(0x00). 1491296522.431047: event type EV_KEY(0x01) key_up: KEY_OK(0x0001) 1491296522.431047: event type EV_SYN(0x00).
To make this permanent create a rc_maps.cfg file in /storage/.config/
Insert the following line to automatically load your keymap (on any ir receiver with any kernel default keymap):
Save the file, then run the following command to test if everything's setup correctly:
CodeLibreELEC:~ # ir-keytable -a /storage/.config/rc_maps.cfg Old keytable cleared Wrote 6 keycode(s) to driver Protocols changed to nec
so long,
Hias
-
This could be the culprit. Please upload the full dmesg
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 occurredIt should print "throttled=0x0", if you got anything else please post the full output.
so long,
Hias
-
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?CodeLibreELEC:~ # /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: GIGXThanks! 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:
Codesystemctl 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:
Codeeventlircd[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
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
First check the exact event number via ir-keytable, it might change, so you'll have to adjust the command above.
so long,
Hias
-
Thanks for the feedback and the logs!
I guess I found the culprit (udev rules were too tight). Could you please download this file and copy it to /storage/.config/udev.rules.d/
98-lircd.rulesThen reboot - lircd should automatically start. If you already added the lircd/lircd-uinput calls to autostart.sh please remove them before.
so long,
Hias
-
Very puzzling. Could you run a few more commands and post the output?
Codels -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:
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
-
Thanks for the logs. dmesg, lsmod and ir-keytable output look fine but there are no traces of lircd starting in journalctl.
Stupid question: have you enabled lirc in LE settings (Settings->LibreELEC->services)?
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
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 · GitHubso long,
Hias
-
The "44.1" did it for me. So the default setting "optimized" isn't that optimal.
This looks like a bug in the hifiberry-amp driver to me. If the card only works at 44.1kHz the driver should have setup a constraint for that. It's best to contact hifiberry about this, it'll probably be the same with Raspbian, OSMC, ... as well.
so long,
Hias
-
I have the exact same behaviour on my pi zero in OE 8. Will this bug be corrected with the 8.0.1 release? And can I use the above mentiomed rpi1 bugfix release safely on my pi zero?
Use the recently released 8.0.0.1 version, it includes all RPi0 fixes:
LibreELEC (Krypton) v8.0.0.1 for Pi Zero W – LibreELECso 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 itQuote
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
Quote
created a/storage/.config/autostart.sh with
#!/bin/bash
# added temporarily for libreelec 8.0.0
ir-keytable -p rc-6works. 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.tarso long,
Hias