[x86-64] CEC broke after updating to LE 12.2.0

  • Same here!

    Lg tv (hdmi2 arc) -- ( hdmi out arc)lg soundbar (hdmi in) -- pulse eight hdmi cec -- intel nuc

    the cec config resets it self always, how can we install the old 4.0.7 over the 7.1.1 in libreelec 12.2.1???

  • Me too. RPi4B and LG C3 OLED 2023. CEC worked for the longest time and then it just stopped working. I've tried everything I found in any thread on the internet (including deleting cec_CEC_Adapter.xml), but no luck at all.

  • Same. Was working on 12.0. 12.2.1 starting having issues.

    I have Libreelec on a ASUS NUC connected to port 1 of my tuner, then port 2 (eARC) of an LG. I set the "Connected to HDMI Device" option to "Amplifier / AVR device" and everything works, but on next reboot it gets reset to "TV" and subsequent reboots then try to change the TV's HDMI port to port 1.
    It will also try to change the port on the TV to 1 whenever I start to play a video, so I have to change the setting back every time it starts up.

  • Have you tried resetting the CEC settings to default? If in doubt, stop kodi and delete the CEC settings file (systemctl stop kodi; rm /storage/.kodi/userdata/peripheral_data/cec_CEC_Adapter.xml) and reboot.

    LE 12.2 ships with a newer libcec (latest version 7.1.1 instead of the ancient 4.0.7 in LE12) and some of your old settings may be incompatible or wrong.

    so long,

    Hias

    Worked for me. Had the same issue on an Inte NUC5 Connected to a Panasonic via a Yamaha AVR. Going to default settings and setting the HDMI Port to the port number it‘s plugged in to the AVR did the trick.

  • Same. Was working on 12.0. 12.2.1 starting having issues.

    I have Libreelec on a ASUS NUC connected to port 1 of my tuner, then port 2 (eARC) of an LG. I set the "Connected to HDMI Device" option to "Amplifier / AVR device" and everything works, but on next reboot it gets reset to "TV" and subsequent reboots then try to change the TV's HDMI port to port 1.
    It will also try to change the port on the TV to 1 whenever I start to play a video, so I have to change the setting back every time it starts up.

    I've exactly the same issue with my Yamaha receiver and 12.2.1. The remote works once with the setting "Amplifier / AVR device" but after reboot it is reset to "TV" and the remote won't work anymore.

    I've stopped kodi and removed the CEC XML config file, rebooted and configured the CEC adapter again. But still, after the next reboot it's "TV" again and the remote is not working until I switch the setting back with a USB-Keyword. Very annoying :(

  • ok it seems nobody can help with tis problem, is there any way to change in libreelec 12.2.1 the libcec 7.1.1 back to libcec 4.0.7 manualy ( linux code or somthing) or could somebody give us an image of the libreelec 12.2.1 with the libcec 4.0.7 addon????

  • I'm also experiencing issues on LE 12.2.1 (x86_64). I noticed the following settings, and possibly more, are getting reset sometime after saving...

    * Connected to HDMI device = Amplifier / AVR Device > TV
    * Physical address )overrules HDMI port) = 1100 > 1000

    Are we sure it is because of the update to libCEC 7.1.1? I assume the configuration file is managed by Kodi, not the driver, but I could be wrong.


    I tried the following to stop kodi from overwriting the settings once they were correct, it seemed to have worked but I will need to do more testing to make sure I fix it permanent and I didn't break anything.

    systemctl stop kodi
    chmod 444 /storage/kodi/userdata/peripheral_data/usb_2548_1002_CEC_Adapter.xml
    chattr +i /storage/kodi/userdata/peripheral_data/usb_2548_1002_CEC_Adapter.xml
    reboot

    Edited 2 times, last by josh4trunks: Merged a post created by josh4trunks into this post. (April 1, 2026 at 6:28 AM).

  • I know that the CEC settings with libCEC could be a mess in conjunction with different KODI versions.

    Please note, however, that manually configuring the HDMI port and/or physical address is pointless. If no general changes have been made to libCEC, the system will always rely on the implemented automatic detection of this information.

    These Information are extracted from the provided EDID data of your TV / AVR combination. If you have some trouble with unexpected port settings, you should investigate there and maybe use getedid create to use a fixed working copy of EDID data. https://wiki.libreelec.tv/configuration/edid

    • Physical Address: 1100 would be correct for : TV (HDMI 1) <- AVR (HDMI 1) <- KODI
    • Physical Address: 1000 would be correct for : TV (HDMI 1) <- KODI

    Explanation of the 4 digits of the physical address from left to right:

    • x.1.0.0: HDMI port number of the HDMI sink (TV or Projector) where the HDMI source (AVR, Set-Top-Box, Bluray player, ...) is physical connected to
    • 1.x.0.0: HDMI port number of the first HDMI switch (mostly an AVR or Soundbar) where the HDMI source is physical connected to behind the HDMI sink
    • 1.1.x.0: HDMI port number of the second HDMI switch behind the first HDMI first switch - seldom in use
    • 1.1.0.x: HDMI port number of the third HDMI switch behind the second HDMI switch - seldom in use

    The TV / Projector (HDMI sink) is the main component in the HDMI chain (imagine a pyramid) and always has the physical address 0.0.0.0 (unless you connect a second TV at the same time).

    Edited once, last by HarryH (April 1, 2026 at 4:49 PM).

  • HarryH Thanks for the information. Yes 1100 should be the correct setting for my setup.

    I did use getedid create after a fresh install of LE 12.2.1, but the CEC settings are getting reset on this OS version.

    I knew about getedid create from previous versions of LE, not sure what problem it fixed for me before, but I remember I needed it to get everything working perfectly with CEC a few years ago. On LE 12.0.2, settings were not getting reset randomly, and CEC worked as expected.

    Regarding the chattr +i and chmod 444 fix, these don't seem to work 100% as expected. Even though the xml file isn't being changed anymore, the Kodi GUI is still showing changes to the settings I mentioned earlier. So you are probably correct, libCEC is getting information from somewhere other than just the config file.

    I will investigate with getedid to see if I can learn more about what libCEC is reading/savings. It's just strange how this was not a problem with earlier versions.

  • Do you have already checked against a LE 13 nightly build whether the issue is there too? It's not unusual that also KODI can trigger the problem. It's not expected to get another KODI 21.x release.

  • Do you have already checked against a LE 13 nightly build whether the issue is there too? It's not unusual that also KODI can trigger the problem. It's not expected to get another KODI 21.x release.

    I haven't tried that yet. Only 12.0.2 which was working, and now 12.2.1 which is not working. Ok, something to try in the future too.

  • According to the LE 12.2.0 release notes first paragraph, the 12.2.x was intented primary to update the underlying software stack (kernel, display components, libraries ...) required for the hardware support of new devices, without changing KODI at the same time. As if your hardware does not require the new kernel and libraries, the compatibility with 12.0.x could deliver the better experience.
    In my case (RPi4) I had to add the command line parameter since version 12.2.x to force a working HDMI output (EDID data). Maybe some changes in timing of the new kernel trigger that - worked also before without this parameter: video=HDMI-A-1:1920x1080M@60D

    Also LE 13 (don't be scared about the nightly build tag) could again have a better user experience, as I assume a recent KODI version is better adapted to recent kernel and library changes.

    Edited 3 times, last by HarryH (April 3, 2026 at 11:10 AM).

  • The kernel change between LE12/12.2/13 is significant on pretty much all platforms except for RPi, as RPi is the most code-complete codebase and there's no new hardware. Generic needs the bumps to support hardware. All other ARM SoC platforms need them to add features and capabilities.