Kodi Community Forum

Full Version: Latest version of lirc actually installs
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I wasn't sure whether to post in "How to get a seamless remote experience" or this separate thread, but it'll probably be easier to find here (for now). And this may be widely known information, but I was happy that the lirc install glitch has been recognized and apparently fixed (as of 2020-05-19 20:13:17 UTC) in the now accessible version lirc 0.10.1-6.1ubuntu1.1 (+). I can confirm that it will install or upgrade from the Universe repository. It kind-of works, but I haven't figured out how to do the customizations available in the 0.9.0 version. I was previously able to add some of my mceusb remote keys through ~/.kodi/userdata/Lircmap.xml. Changes there no longer seem to have an effect. I think they need to be made now in the kernel drivers. And I don't seem to be able to add a different remote (like my mini-hp mce remote) by putting in new /etc/lirc/hardware.conf and lircd.conf files. Again, this now seems to be built into the kernel remote drivers (not likely available for the mini-hp remote). If some of you have experience making these types of changes for lirc 10, I'd love to see them. I'm at the point of cutting back my effort on this...

Fortunately, the ~/.kodi/userdata/keymaps/gen.xml file (and maybe keyboard.xml and keymaps.xml files) still have an effect. I tend to use gen.xml and I put in the following additions there to get more keys doing what I want:

<keymap><global><keyboard><key id="248">ActivateWindow(ShutdownMenu)</key><key id="247">ActivateWindow(TVTimers)</key><key id="7">ToggleFullScreen</key></keyboard></global><fullscreenvideo><keyboard><key id="205">ActivateWindow(TVGuide)</key><key id="247">ActivateWindow(TVTimers)</key><key id="235">showsubtitles</key><key id="221">Seek(-10)</key><key id="223">Seek(+30)</key><key id="169">PlayerControl(tempodown)</key><key id="168">PlayerControl(tempoup)</key></keyboard></fullscreenvideo></keymap>

This augments keymap built in to the kernel/lirc for the following (should be further augmented for Context Menu and Erase Recording):
Radio -> Exit Menu
Videos -> Toggle Fullscreen
DVD Menu -> Open Timers Page
----During video view/playback---
Left Button -> Slow Playback Speed
Right Button -> Increase Playback Speed
Eject -> Toggle Subtitles
Left Skip -> Skip Back 10 sec
Right Skip ->Skip Forward 30 sec

Next post is my "full" NextPVR/Kodi/lirc install sequence. This is for my HP receiver 5188-1667 and HP remote TSGH-IR02. Just FYI, I did not install ir-keytable for this...

b
Install sequence for NextPVR/Kodi/lirc for my  HP 5188-1667  IR receiver and and HP TSGH-IR02 remote:

Install or update to Ubuntu/Kubuntu 20.04
-------------------
Get tuner firmware if needed (for me, ATI Wonder, Kworld USB and Pinnacle HDTV stick - dvb-fe-nxt2004.fw  and xc3028-v27.fw)
https://github.com/CoreELEC/dvb-firmware...nxt2004.fw
https://github.com/OpenELEC/dvb-firmware...028-v27.fw
cd ~/Downloads (or wherever)
sudo cp dvb-fe-nxt2004.fw /lib/firmware/
sudo cp xc3028-v27.fw /lib/firmware/
-------------------
On Windows dual boot systems where most space is in Windows ntfs partition:
Reference: https://github.com/OpenELEC/dvb-firmware...028-v27.fw
Unmount ntfs drive or partition using File Manager and get partition UUID
sudo blkid
sudo gedit /etc/fstab

Add lines to define accessible ntfs partition
# change the "UUID" to your partition UUID
UUID=<retrieved from blkid> /media/windows ntfs-3g auto,users,permissions 0 0

Make a new accessible mount point for ntfs partition
sudo mkdir /media/windows

Mount the partition for access
mount /media/windows

Create folder for kodi recordings
sudo mkdir /media/windows/kodi_store

do chmod, chown and group (for my <username> and assume video group for NextPVR)
sudo chown <username>:video /media/windows/kodi_store
sudo chmod 775 /media/windows/kodi_store

Set subdirectories to use base user:group
sudo chmod g+s /media/windows/kodi_store
-------------------
Install NextPVR (curl first)
cd ~/Downloads (or wherever)
sudo apt install curl
curl https://nextpvr.com/nextpvr-helper.deb -O
sudo apt install ./nextpvr-helper.deb --install-recommends
-------------------
You can create a limited scan set for NextPVR. For Madison, I created in file /usr/share/dvb/atsc/us-WI-Madison
 
[CHANNEL]
DELIVERY_SYSTEM = ATSC
FREQUENCY = 201028615
MODULATION = VSB/8
INVERSION = AUTO
[CHANNEL]
DELIVERY_SYSTEM = ATSC
FREQUENCY = 497028615
MODULATION = VSB/8
INVERSION = AUTO
[CHANNEL]
DELIVERY_SYSTEM = ATSC
FREQUENCY = 503028615
MODULATION = VSB/8
INVERSION = AUTO
[CHANNEL]
DELIVERY_SYSTEM = ATSC
FREQUENCY = 509028615
MODULATION = VSB/8
INVERSION = AUTO
[CHANNEL]
DELIVERY_SYSTEM = ATSC
FREQUENCY = 515028615
MODULATION = VSB/8
INVERSION = AUTO
[CHANNEL]
DELIVERY_SYSTEM = ATSC
FREQUENCY = 545028615
MODULATION = VSB/8
INVERSION = AUTO
[CHANNEL]
DELIVERY_SYSTEM = ATSC
FREQUENCY = 689028615
MODULATION = VSB/8
INVERSION = AUTO
-------------------
Increase days shown in the NextPVR EPG guide (from default 9 to 13 in this case, but could be more)
Reference: https://forums.nextpvr.com/showthread.php?tid=58685

Edit /var/opt/nextpvr/config.xml wtih change:
<SchedulesDirectDays>9</SchedulesDirectDays>
to
<SchedulesDirectDays>13</SchedulesDirectDays>
-------------------
Open NextPVR page and do setup from browser (default login admin/password). For me, atsc tuner(s) with Schedules Direct EPG
http://127.0.0.1:8866
Setting>Devices: Click ATSC Local Recorder (adapter)>Scan Channels>Pick either us-ATSC-center...062009 or us-WI-Madison (or your equiv)
Select channels of interest and Save
Settings>Guide: Log in to Schedules Direct account
Settings>Channels>Advanced Tools>Auto Map  (should set EPG Source to Schedules Direct for all channels)
Settings>Guide>Download Channel Icons
Settings>About>Update EPG
Settings>General: change "Live TV Buffer Directory" and "Recording Directory" to /media/windows/kodi_store (per above)
Test things out by going to TV Guide and watching channels and possibly recording
-------------------
Install Kodi from repository (not from Ubutuntu Software Install store)
sudo add-apt-repository ppa:team-xbmc/ppa
sudo apt update
sudo apt install kodi
-------------------
Install NextPVR plugin for Kodi
sudo apt-get install kodi-pvr-nextpvr
-------------------
Test and set up Kodi
Add-ons>My add-ons>>PVR clients>NextPVR PVR Client>Enable
Check Channels: (home)>TV>Channels
Check Guide: (home)>TV>Guide
Check Recording (if made one previously): (home)>TV>Recordings
Set EPG days displayed (menus to Expert): (home)>Settings>PVR & Live TV>Guide>Future days to display..to 13
Set up subtitles (menus to Expert): (home)>(settings)>Player>Language>Enable parsing for closed captions ... ON
    Default TV show service ... use Subscene
    Default movie service ... use Subscene
-------------------
Fix possible Kodi playback issues (especially with recording skip forward)
Reference: https://kodi.wiki/view/HOW-TO:Modify_the_video_cache
Create/Edit file ~/.kodi/userdata/advancedsettings.xml  (this is for ~4Gb free memory system)
<advancedsettings>
  <cache>
    <buffermode>1</buffermode>
    <memorysize>104857600</memorysize>
    <readfactor>20</readfactor>
  </cache>
</advancedsettings>
-------------------
For Ubuntu 20.04, the latest lirc (0.10.1-6.1ubuntu1.1+) has been fixed and should now install
sudo apt-get update
sudo apt-get install lirc
-------------------
Verify that mce-usb/eHome remote receiver is on /dev/lirc0 (default) device. Can verify with:

mode2 --driver default --list-devices

Reboot if necessary. (not sure of procedure if it comes up as lirc1 or something else)
-------------------
Customize lirc for mceusb Windows Media receiver and remote use on Kodi
Create/edit ~/.kodi/userdata/keymaps/gen.xml

<keymap><global><keyboard><key id="248">ActivateWindow(ShutdownMenu)</key><key id="247">ActivateWindow(TVTimers)</key><key id="7">ToggleFullScreen</key></keyboard></global><fullscreenvideo><keyboard><key id="205">ActivateWindow(TVGuide)</key><key id="247">ActivateWindow(TVTimers)</key><key id="235">showsubtitles</key><key id="221">Seek(-10)</key><key id="223">Seek(+30)</key><key id="169">PlayerControl(tempodown)</key><key id="168">PlayerControl(tempoup)</key></keyboard></fullscreenvideo></keymap>

This augments keymap built in to the kernel/lirc for the following (should be further augmented for Context Menu and Erase Recording):
Radio -> Exit Menu
Videos -> Toggle Fullscreen
DVD Menu -> Open Timers Page
----During video view/playback---
Left Button -> Slow Playback Speed
Right Button -> Increase Playback Speed
Eject -> Toggle Subtitles
Left Skip -> Skip Back 10 sec
Right Skip ->Skip Forward 30 sec
-------------------
irexec must be run to stop the mce remote from acting on the normal desktop. Use remote "Green Button" to start Kodi with irexec
Reference: https://twosortoftechguys.wordpress.com/...s-of-lirc/

Create/edit startkodi.sh in ~/scripts/startkodi.s with chmod +x 

#!/bin/bash
# For Kodi V18 change AE_SINK=ALSA to KODI_AE_SINK=ALSA and
# all instances of kodi.bin to kodi-x11
# MJR -- Left as AE_SINK=ALSA and kodi.bin 5_23_20

# In the line below replace yourusername with your actual
# user name in Ubuntu (this will probably be the same as
# the name of your user directory)
export USER=m

# Now try to kill existing Kodi if it is running
if ps -ef|grep -v grep|grep -i kodi.bin
then
ps aux|grep -i $USER|grep -v grep|grep -i kodi.bin|awk '{print $2}'|xargs kill
sleep 3
fi

# If it's still running, force kill it using kill -9
if ps -ef|grep -v grep|grep -i kodi.bin
then
ps aux|grep -i $USER|grep -v grep|grep -i kodi.bin|awk '{print $2}'|xargs kill -9
sleep 3
fi

# If it's STILL running it won't die, so exit
if ps -ef|grep -v grep|grep -i kodi.bin
then
exit
fi

# Delete old Kodi crashlogs (optional)
/bin/rm -f ~/kodi_crashlog-HuhHuh??_HuhHuh.log

# Start Kodi using ALSA sound system
AE_SINK=ALSA nice -20 kodi --standalone &
exit

----------

Create/edit .lircrc in ~/.lircrc

begin
 prog = irexec
 button = KEY_MEDIA 
 config = ~/scripts/startkodi.sh &
 repeat = 0
end

----------

Add irexec -d to Startup

-------------------

+++++++++++++++++++++++++

Have Fun!
b
(2020-05-26, 00:45)bluesight Wrote: [ -> ]new /etc/lirc/hardware.conf and lircd.conf files

Nope, because one of those files has been deprecated.  Use /etc/lirc/lirc_options.conf instead of hardware.conf.  You should be able to add another remote though in lircd.conf although you also need to add it (with the relevant keymappings) to ~/.kodi/userdata/Lircmap.xml otherwise Kodi will not use it.

BTW, the lirc_options file is where you define the device to use
(2020-05-26, 01:02)bluesight Wrote: [ -> ]not sure of procedure if it comes up as lirc1 or something else

eg device = /dev/lircX  Changing it in hardware.conf will have no effect.
(2020-05-26, 00:45)bluesight Wrote: [ -> ]I wasn't sure whether to post in "How to get a seamless remote experience" or this separate thread, but it'll probably be easier to find here (for now). And this may be widely known information, but I was happy that the lirc install glitch has been recognized and apparently fixed (as of 2020-05-19 20:13:17 UTC) in the now accessible version lirc 0.10.1-6.1ubuntu1.1 (+). I can confirm that it will install or upgrade from the Universe repository. It kind-of works, but I haven't figured out how to do the customizations available in the 0.9.0 version. I was previously able to add some of my mceusb remote keys through ~/.kodi/userdata/Lircmap.xml. Changes there no longer seem to have an effect. I think they need to be made now in the kernel drivers. And I don't seem to be able to add a different remote (like my mini-hp mce remote) by putting in new /etc/lirc/hardware.conf and lircd.conf files. Again, this now seems to be built into the kernel remote drivers (not likely available for the mini-hp remote). If some of you have experience making these types of changes for lirc 10, I'd love to see them. I'm at the point of cutting back my effort on this...

Just out of curiosity, did you ever actually try installing the 0.9.0 version of lirc, as shown in "Make LIRC work in Ubuntu 18.04, so that you can use your infrared remote in Kodi"?  I haven't upgraded my system to Ubuntu 20.04 yet but when I do I would much rather keep using lirc 0.9.0 (or any 0.9.x version) rather than the horrible 0.10.whatever versions that are giving people such grief.  I will say again that I wish some kind programmer would fork the last 0.9 version and release it under a different name so that it does not get overwritten by the current awful version of lirc.  I say the new version is awful for at least three reasons, most of which would not be applicable to all users, but all of which are causing problems for some users:
 
  1. As far as I can tell, it no longer supports sending IR, that is, using an infrared transmitter.  And I haven't found any other software that will do that either.  Most users never used that particular feature but for those who did, the 0.10 versions are a major step backwards.
  2. It no longer has the nice menu that comes up when you install that allowed you to simply pick your remote (and your IR sender if you used one) from a list.  Instead in the new version you have to manually edit files and cross your fingers and hope you got it right, which turns a one minute easy install into several hours of frustration and grief for some users, and some users are simply unable to get the new version to work as well as the 0.9 versions did.
  3. And it seems to no longer have some functionality that was present in the 0.9 versions, as evidenced by the quoted part above.  It may be that the functionality either no longer exists, or it may be that it's there but few or no users can figure it out.
To add to the problem the lirc authors apparently never saw fit to try to help their existing user base in converting from an 0.9 to an 0.10 version; it appears they basically threw their users in the waters of configuration files and obscure settings and fixes and in effect said "learn to swim, or don't, we don't care."  I have no idea why they did this, and I have no idea why the packagers of Ubuntu didn't just stick with the last 0.9 version (other than that at heart they are also Linux geeks so maybe they like it when things are difficult) but as I say, I truly wish that some kind programmer would take a day or two and fork lirc 0.9 and release it in a form that could be installed directly under Ubuntu 20.04 - you would be a hero to those of us who have come to rely on lirc over the years.

Edit: In case anyone is looking for it, here are some places to get the older version source files: 0.9.0, 0.9.1, 0.9.1a, 0.9.2, 0.9.2a, 0.9.3, 0.9.3a, 0.9.4, 0.9.4a, 0.9.4b, 0.9.4c, 0.9.4d.  Also there were proposed builds of lirc 0.9.4c-9 for Ubuntu Zesty, with builds for amd64, arm64, armhf, i386, ppc64el, and s390x but I do not know if these were ever actually released because I never used anything other than a LTS version of Ubuntu.  All of those are meaningless to me because I'm not a programmer, but might be helpful to someone.  It should be noted that even the 0.9.4 versions caused problems for some users.
The lirc 0.9.0 version works on 20.04 per the "Make LIRC work" page. So that is a functional fall back. I may end up back there since I will want to eventually use my HP mini-remote. Else I need to spend more time on lirc 10.0 configuration, per above recommendations. Working with lirc 10 is partly an issue because I think the on-line docs are not consistently up-to-date. They seem split between the old and new, so never sure what will work/not work/is deprecated. 

b
You know you can do man lircd and man lircd.conf from command line to see the manual pages for those things ?  You can also do man irsend which is fully supported in lirc 0.10.1-6 .
Man pages are both too much and too little. Lots of information. Limited examples. With limited linux experience, it's hard to figure out what is important to change and what can stay as defaults. 

I tried putting my mini-remote lirc.conf in and it has an effect, but no button recognition with irw:
(status when starting lircd with it)

sudo service lircd status
● lircd.service - Flexible IR remote input/output application support
     Loaded: loaded (/lib/systemd/system/lircd.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2020-05-26 12:14:53 CDT; 6s ago
TriggeredBy: ● lircd.socket
       Docs: man:lircd(8)
             http://lirc.org/html/configure.html
   Main PID: 55833 (lircd)
      Tasks: 2 (limit: 9362)
     Memory: 984.0K
     CGroup: /system.slice/lircd.service
             └─55833 /usr/sbin/lircd --nodaemon

May 26 12:14:53 m-G6 lircd-0.10.1[55833]: Notice: Options: dynamic_codes: (null)
May 26 12:14:53 m-G6 lircd-0.10.1[55833]: Notice: Current driver: devinput
May 26 12:14:53 m-G6 lircd-0.10.1[55833]: Notice: Driver API version: 4
May 26 12:14:53 m-G6 lircd-0.10.1[55833]: Notice: Driver  version: 0.10.0
May 26 12:14:53 m-G6 lircd-0.10.1[55833]: Notice: Driver  info: See file:///usr/share/doc/lirc/plugindocs/devinput.html
May 26 12:14:53 m-G6 lircd-0.10.1[55833]: Info: lircd:  Opening log, level: Info
May 26 12:14:53 m-G6 lircd-0.10.1[55833]: Notice: Using systemd fd
May 26 12:14:53 m-G6 lircd-0.10.1[55833]: Warning: Running as root
May 26 12:14:53 m-G6 lircd-0.10.1[55833]: Info: Using remote: mceusb.
May 26 12:14:53 m-G6 lircd-0.10.1[55833]: Notice: lircd(devinput) ready, using /var/run/lirc/lircd

-----
The lirc.conf file (/etc/lirc/lircd.conf.d/mcemini.lircd.conf  ..  only one active in the directory) is (per earlier 0.9.0 implementation post):

# Please make this file available to others
# by sending it to <[email protected]>
#
# this config file was automatically generated
# using lirc-0.9.0(default) on Mon May  4 19:52:07 2020
#
# contributed by 
#
# brand:                       mceusb replacement
# model no. of remote control: 
# devices being controlled by this remote:
#

begin remote

  name  mceusb
  bits           37
  flags RC6|CONST_LENGTH
  eps            30
  aeps          100

  header       2690   884
  one           425   457
  zero          425   457
  gap          106164
  toggle_bit_mask 0x8000
  rc6_mask    0x100000000

      begin codes
          KEY_POWER                 0x037FEE7BF3
          KEY_EPG                   0x037FEE7BB0
          KEY_BACK                  0x037FEE7BB5
          KEY_VIDEO                 0x037FEE7BDB
          KEY_HOME                  0x037FEE7BF2
          KEY_RECORD                0x037FEE7BED
          KEY_STOP                  0x037FEE7BE6
          KEY_REWIND                0x037FEE7BEA
          KEY_PLAY                  0x037FEE7BE9
          KEY_FORWARD               0x037FEE7BEB
          KEY_TV                    0x037FEE7BEC
          KEY_AGAIN                 0x037FEE7BE4
          KEY_UP                    0x037FEE7BE1
          KEY_NEXT                  0x037FEE7BE5
          KEY_LEFT                  0x037FEE7BDF
          KEY_OK                    0x037FEE7BDD
          KEY_RIGHT                 0x037FEE7BDE
          SlideShow                 0x037FEE7BDC
          KEY_DOWN                  0x037FEE7BE0
          KEY_INFO                  0x037FEE7BF0
          KEY_VOLUMEDOWN            0x037FEE7BEE
          KEY_MUTE                  0x037FEE7BF1
          KEY_VOLUMEUP              0x037FEE7BEF
       end codes

end remote
-----
Lircmap.xml has the mceusb remote definition that should work.

There doesn't seem to be a correspondence that I can make out between what is in my hardware.conf and what is in lirc_options.conf. In any case, the hardware.conf is pretty generic from the mseusb remote and I didn't change it for the mini-mceusb remote. I would expect the generic equivalent would come over to lirc_options.conf. 

Anyways...I tried but couldn't pull it off...   lirc 0.9.0 beckons   ...

b

PS...after reboot, status looks a little different, but still no response to irw. Don't like the notice that client is removed...not too into deciphering logs, but that would be next...

● lircd.service - Flexible IR remote input/output application support
     Loaded: loaded (/lib/systemd/system/lircd.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2020-05-26 14:19:52 CDT; 1min 45s ago
TriggeredBy: ● lircd.socket
       Docs: man:lircd(8)
             http://lirc.org/html/configure.html
   Main PID: 924 (lircd)
      Tasks: 2 (limit: 9362)
     Memory: 2.8M
     CGroup: /system.slice/lircd.service
             └─924 /usr/sbin/lircd --nodaemon

May 26 14:20:37 m-G6 lircd[924]: lircd-0.10.1[924]: Notice: accepted new client on /var/run/lirc/lircd
May 26 14:20:37 m-G6 lircd[924]: lircd-0.10.1[924]: Info: initializing 'auto'
May 26 14:20:37 m-G6 lircd-0.10.1[924]: Notice: accepted new client on /var/run/lirc/lircd
May 26 14:20:37 m-G6 lircd[924]: lircd-0.10.1[924]: Info: Using device: /dev/input/event8
May 26 14:20:37 m-G6 lircd-0.10.1[924]: Info: initializing 'auto'
May 26 14:20:37 m-G6 lircd-0.10.1[924]: Info: Using device: /dev/input/event8
May 26 14:21:08 m-G6 lircd[924]: lircd-0.10.1[924]: Notice: accepted new client on /var/run/lirc/lircd
May 26 14:21:08 m-G6 lircd-0.10.1[924]: Notice: accepted new client on /var/run/lirc/lircd
May 26 14:21:21 m-G6 lircd[924]: lircd-0.10.1[924]: Info: removed client
May 26 14:21:21 m-G6 lircd-0.10.1[924]: Info: removed client

--------

when it works correctly with the BIG remote:

● lircd.service - Flexible IR remote input/output application support
     Loaded: loaded (/lib/systemd/system/lircd.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2020-05-26 14:30:09 CDT; 7s ago
TriggeredBy: ● lircd.socket
       Docs: man:lircd(8)
             http://lirc.org/html/configure.html
   Main PID: 2213 (lircd)
      Tasks: 2 (limit: 9362)
     Memory: 1008.0K
     CGroup: /system.slice/lircd.service
             └─2213 /usr/sbin/lircd --nodaemon

May 26 14:30:09 m-G6 lircd-0.10.1[2213]: Info: Using remote: devinput-32.
May 26 14:30:09 m-G6 lircd-0.10.1[2213]: Notice: /etc/lirc/lircd.conf.d/devinput.lircd.conf: devinput-3>
May 26 14:30:09 m-G6 lircd-0.10.1[2213]: Notice: /etc/lirc/lircd.conf.d/devinput.lircd.conf: devinput-3>
May 26 14:30:09 m-G6 lircd-0.10.1[2213]: Notice: /etc/lirc/lircd.conf.d/devinput.lircd.conf: devinput-3>
May 26 14:30:09 m-G6 lircd-0.10.1[2213]: Notice: /etc/lirc/lircd.conf.d/devinput.lircd.conf: devinput-3>
May 26 14:30:09 m-G6 lircd-0.10.1[2213]: Notice: /etc/lirc/lircd.conf.d/devinput.lircd.conf: devinput-3>
May 26 14:30:09 m-G6 lircd-0.10.1[2213]: Notice: /etc/lirc/lircd.conf.d/devinput.lircd.conf: devinput-3>
May 26 14:30:09 m-G6 lircd-0.10.1[2213]: Notice: /etc/lirc/lircd.conf.d/devinput.lircd.conf: devinput-3>
May 26 14:30:09 m-G6 lircd-0.10.1[2213]: Info: Using remote: mceusb.
May 26 14:30:09 m-G6 lircd-0.10.1[2213]: Notice: lircd(devinput) ready, using /var/run/lirc/lircd
(2020-05-26, 17:43)bluesight Wrote: [ -> ]The lirc 0.9.0 version works on 20.04 per the "Make LIRC work" page. So that is a functional fall back. I may end up back there since I will want to eventually use my HP mini-remote. Else I need to spend more time on lirc 10.0 configuration, per above recommendations. Working with lirc 10 is partly an issue because I think the on-line docs are not consistently up-to-date. They seem split between the old and new, so never sure what will work/not work/is deprecated.

I'm really glad to hear the old version still works.  Doesn't surprise me that the new version docs are incomplete.
 
(2020-05-26, 18:27)black_eagle Wrote: [ -> ]You know you can do man lircd and man lircd.conf from command line to see the manual pages for those things ?  You can also do man irsend which is fully supported in lirc 0.10.1-6 .
 
(2020-05-26, 21:15)bluesight Wrote: [ -> ]Man pages are both too much and too little. Lots of information. Limited examples. With limited linux experience, it's hard to figure out what is important to change and what can stay as defaults.
Unfortunately man pages seem to be written by developers as a kind of cryptic puzzle for other developers to solve.  I have almost never found a man page that was actually understandable by typical users and it doesn't surprise me that the man pages for the new version of lirc would be indecipherable by most Kodi users.  This is my whole issue with the new lirc in the first place, why did they have to take something that was piece of cake easy and change it it to something so terribly difficult?

black eagle, I'm not sure if you are a programmer, but if you are and really want to do a service for Kodi users, we could really use one of three things:
  1. A maintained fork of one of the 0.9 versions of lirc as I mentioned in my previous post, or,
  2. A installation/configuration script for the new version of LIRC that would make it as easy to install as the 0.9 versions AND that would allow the use of a .lircrc file as in the 0.9 versions, or
  3. As a last resort some understandable "cookbook-style" instructions (in other works, the opposite of man pages) that even users with very limited Linux experience can follow and end up with a remote that works as well as it did under the 0.9 version of lirc.
The first would require at least some level of commitment but would hands down be the most useful thing right now.  The second would at least help most users get the new version of lirc working.  The third would likely be something that some users not intimately acquainted with Linux still could not understand, unless you can write it at a really dumbed-down level (which is something a lot of programmers seem genetically incapable of) but at least it might help some of the intermediate level users.
@bluesight Can you post the output of ir-keytable please. Your systemctl status lircd output doesn't seem to show the lirc protocol enabled and this is, as far as I am aware, needed to pass events to lirc.  For ref, this is my lirc status immediately after I restarted the service.

xml:
● lircd.service - Flexible IR remote input/output application support
     Loaded: loaded (/lib/systemd/system/lircd.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2020-05-27 08:51:58 BST; 3min 47s ago
TriggeredBy: ● lircd.socket
       Docs: man:lircd(8)
             http://lirc.org/html/configure.html
   Main PID: 3784131 (lircd)
      Tasks: 2 (limit: 16631)
     Memory: 1.7M
     CGroup: /system.slice/lircd.service
             └─3784131 /usr/sbin/lircd --nodaemon

May 27 08:51:59 Diamond lircd[3784131]: lircd-0.10.1[3784131]: Info: [lirc] protocol is enabled
May 27 08:51:59 Diamond lircd[3784131]: lircd-0.10.1[3784131]: Info: removed client
May 27 08:51:59 Diamond lircd[3784131]: lircd-0.10.1[3784131]: Notice: accepted new client on /var/run/lirc/lircd
May 27 08:51:59 Diamond lircd[3784131]: lircd-0.10.1[3784131]: Info: [lirc] protocol is enabled
May 27 08:51:59 Diamond lircd-0.10.1[3784131]: Info: [lirc] protocol is enabled
May 27 08:51:59 Diamond lircd-0.10.1[3784131]: Info: removed client
May 27 08:51:59 Diamond lircd-0.10.1[3784131]: Notice: accepted new client on /var/run/lirc/lircd
May 27 08:51:59 Diamond lircd-0.10.1[3784131]: Info: [lirc] protocol is enabled
May 27 08:52:09 Diamond lircd[3784131]: lircd-0.10.1[3784131]: Notice: accepted new client on /var/run/lirc/lircd
May 27 08:52:09 Diamond lircd-0.10.1[3784131]: Notice: accepted new client on /var/run/lirc/lircd

And this is the output of ir-keytable (Note that I have two IR receivers but you can ignore all references to the Winfast device as I'm not using that one.
xml:
Found /sys/class/rc/rc1/ with:
    Name: cx88 IR (WinFast DTV1000-T)
    Driver: cx88xx
    Default keymap: rc-winfast
    Input device: /dev/input/event14
    LIRC device: /dev/lirc1
    Attached BPF protocols: Permission denied
    Supported kernel protocols: other
    Enabled kernel protocols: other
    Extra capabilities: <access denied>
Found /sys/class/rc/rc0/ with:
    Name: Media Center Ed. eHome Infrared Remote Transceiver (0471:0815)
    Driver: mceusb
    Default keymap: rc-rc6-mce
    Input device: /dev/input/event8
    LIRC device: /dev/lirc0
    Attached BPF protocols: Permission denied
    Supported kernel protocols: lirc rc-5 rc-5-sz jvc sony nec sanyo mce_kbd rc-6 sharp xmp imon rc-mm
    Enabled kernel protocols: lirc
    Extra capabilities: <access denied>
I avoided installing ir-keytable just to be sure that the "standard" remote would work without it. But I'll try it...On my "test" system the receiver was found (same receiver anyway), but the ir-keytable -t didn't see the mini remote. 

What seems strange it that the mseusb (BIG) remote seems to be the default and works, basically, out of the box. It's nice that not a lot had to be done for that. Going from that the to the potential (unlimited) hassle of going getting the mini-remote working is a discouragement...

b
I take that back...the mini-remote does send "scancodes", but I can't get the mapped key codes to come up...And, regardless, irw gives no response to the min-remote...

Here's my ir-keytable output...pretty much the same for yours (for mce remote)
----
m@m-G6:/etc/lirc/lircd.conf.d$ sudo ir-keytable
Found /sys/class/rc/rc1/ with:
    Name: Pinnacle PCTV HD Pro Stick
    Driver: em28xx
    Default keymap: rc-pinnacle-pctv-hd
    Input device: /dev/input/event14
    LIRC device: /dev/lirc1
    Supported kernel protocols: rc-5 nec 
    Enabled kernel protocols: rc-5 
    bus: 3, vendor/product: 2304:0227, version: 0x0110
    Repeat delay = 500 ms, repeat period = 125 ms
Found /sys/class/rc/rc0/ with:
    Name: Media Center Ed. eHome Infrared Remote Transceiver (0471:0815)
    Driver: mceusb
    Default keymap: rc-rc6-mce
    Input device: /dev/input/event8
    LIRC device: /dev/lirc0
    Attached BPF protocols: Operation not supported
    Supported kernel protocols: lirc rc-5 rc-5-sz jvc sony nec sanyo mce_kbd rc-6 sharp xmp imon rc-mm 
    Enabled kernel protocols: lirc rc-6 
    bus: 3, vendor/product: 0471:0815, version: 0x0000
    Repeat delay = 500 ms, repeat period = 125 ms

A few responses for mini remote...
---
m@m-G6:/etc/lirc/lircd.conf.d$ sudo ir-keytable -t
Testing events. Please, press CTRL-C to abort.
78491.802478: lirc protocol(rc6_6a_32): scancode = 0x80110416
78491.802524: event type EV_MSC(0x04): scancode = 0x80110416
78491.802524: event type EV_SYN(0x00).
78492.101477: lirc protocol(rc6_6a_32): scancode = 0x80118416
78492.101521: event type EV_MSC(0x04): scancode = 0x80118416
78492.101521: event type EV_SYN(0x00).
78492.208054: lirc protocol(rc6_6a_32): scancode = 0x80118416
78492.208098: event type EV_MSC(0x04): scancode = 0x80118416
78492.208098: event type EV_SYN(0x00).
78493.058912: lirc protocol(rc6_6a_32): scancode = 0x80110416
78493.058959: event type EV_MSC(0x04): scancode = 0x80110416


And a few from the BIG remote:
----
m@m-G6:/etc/lirc/lircd.conf.d$ sudo ir-keytable -t
Testing events. Please, press CTRL-C to abort.
78790.352957: lirc protocol(rc6_mce): scancode = 0x800f041e toggle=1
78790.352999: event type EV_MSC(0x04): scancode = 0x800f041e
78790.352999: event type EV_KEY(0x01) key_down: KEY_UP(0x0067)
78790.352999: event type EV_SYN(0x00).
^[[A78790.460114: lirc protocol(rc6_mce): scancode = 0x800f041e toggle=1
78790.460148: event type EV_MSC(0x04): scancode = 0x800f041e
78790.460148: event type EV_SYN(0x00).
78790.590856: event type EV_KEY(0x01) key_up: KEY_UP(0x0067)
78790.590856: event type EV_SYN(0x00).
78791.135145: lirc protocol(rc6_mce): scancode = 0x800f041f
78791.135182: event type EV_MSC(0x04): scancode = 0x800f041f
78791.135182: event type EV_KEY(0x01) key_down: KEY_DOWN(0x006c)
78791.135182: event type EV_SYN(0x00).
^[[B78791.242375: lirc protocol(rc6_mce): scancode = 0x800f041f
78791.242408: event type EV_MSC(0x04): scancode = 0x800f041f
78791.242408: event type EV_SYN(0x00).
78791.370863: event type EV_KEY(0x01) key_up: KEY_DOWN(0x006c)

PS--I (again) tracked down where the rc-rc6-mce keymap appears to come from and it looks to be the rc-rc6-mce.ko file which I understand is the driver file derived originally from rc-rc6-mce.c that is compiled into the kernel. Finding an equivalent keymap file for the mini-remote that is compiled into the kernel is unlikely, and I'm not qualified to compile my own driver (or at least I don't want to). That's why I was hoping the lirc  0.9.0 method of defining a new keymap would work in 10.0
Umm, for what its worth, the 0.10.x version(s) have a python file included with them that apparently converts from the older hardware.conf based lirc versions to the new lirc_options.conf version.  I haven't run it myself because I configured my installation manually after I had realized why it didn't work.  However, I mention it because it may help.  To run it you will need to be root. Either that, or if you want to try a similar experience that @oldtvwatcher referred to (config box) you could try lirc-setup.  I'd suggest not running that as root but as your regular user.  It will probably complain about group permissions and ask you to add your user to the lirc group (it gives you the command line instructions on how to do it) but you can use it to configure the correct receiver, remote(s) to use etc etc.
Do you have the name of the conversion program? I tried to use the lirc-setup "utility", and it wants me to join the "lirc" group. But...the lirc group doesn't appear to exist. Always something in the way...but thanks for the info...

b
Doh, sorry!!  Yeah its /usr/share/lirc/lirc-old2new.  It expects a path to the location of hardware.conf, but if you don't give it one it will use /etc/lirc/hardware.conf which is likely correct for an Ubuntu install anyway.
Tried it, but no joy...I have to give up on this (but it's hard)...fix is just around the corner in this rabbit hole...

I get:

m@m-vaio:/etc/lirc$ sudo /usr/share/lirc/lirc-old2new /etc/lirc
Traceback (most recent call last):
  File "/usr/share/lirc/lirc-old2new", line 247, in <module>
    main()
  File "/usr/share/lirc/lirc-old2new", line 234, in main
    options_conf = get_lircd_options(hardware_conf, etcdir)
  File "/usr/share/lirc/lirc-old2new", line 134, in get_lircd_options
    and hardware_cf['modules']:
KeyError: 'modules'

----
and can't really track the error from the py source (not a py programmer)...and not enough context in traceback data...
(lines 133 and 134 - 'load_modules' is true - if case isn't an issue - ...I don't see a definition for 'modules', so probably a glitch there. This is for the "standard" mceusb hardware.conf - I think)

133    if 'load_modules' in hardware_cf and hardware_cf['load_modules'] \
134    and hardware_cf['modules']:

----hardware.conf---
# /etc/lirc/hardware.conf
#
#Chosen Remote Control
REMOTE="Windows Media Center Transceivers/Remotes (all)"
REMOTE_MODULES="lirc_dev mceusb"
REMOTE_DRIVER=""
REMOTE_DEVICE="/dev/lirc0"
REMOTE_SOCKET=""
REMOTE_LIRCD_CONF="mceusb/lircd.conf.mceusb"
REMOTE_LIRCD_ARGS=""

#Chosen IR Transmitter
TRANSMITTER="None"
TRANSMITTER_MODULES=""
TRANSMITTER_DRIVER=""
TRANSMITTER_DEVICE=""
TRANSMITTER_SOCKET=""
TRANSMITTER_LIRCD_CONF=""
TRANSMITTER_LIRCD_ARGS=""

#Disable kernel support.
#Typically, lirc will disable in-kernel support for ir devices in order to
#handle them internally.  Set to false to prevent lirc from disabling this
#in-kernel support. 
#DISABLE_KERNEL_SUPPORT="true"

#Enable lircd
START_LIRCD="true"

#Don't start lircmd even if there seems to be a good config file
#START_LIRCMD="false"

#Try to load appropriate kernel modules
LOAD_MODULES="true"

# Default configuration files for your hardware if any
LIRCMD_CONF=""

#Forcing noninteractive reconfiguration
#If lirc is to be reconfigured by an external application
#that doesn't have a debconf frontend available, the noninteractive
#frontend can be invoked and set to parse REMOTE and TRANSMITTER
#It will then populate all other variables without any user input
#If you would like to configure lirc via standard methods, be sure
#to leave this set to "false"
FORCE_NONINTERACTIVE_RECONFIGURATION="false"
START_LIRCMD=""

----
You seem to be on top of the lirc 10.0 implementation, so I am supplying this just as feedback at this point. No real need to respond, because I need to give up on 10.0 and revert to 0.9.0. But thanks for all the help and interest...

b