advancedsettings.xml custom <cputempcommand> doesn't work

  • EDIT: Solved (my bad)

    I noticed that LibreELEC was always reporting wrong CPU temperatures (in fact both gputemp & cputemp reported the temperature reading for the GPU at ~60-80°C) so I went ahead and installed lm_sensors through the unofficial addon repository.

    In an SSH shell I can now see the correct temperature readings for both CPU & GPU:

    Code: sensors output
    LibreELEC:~ # /storage/.kodi/addons/tools.lm_sensors/bin/sensors
    radeon-pci-0100
    Adapter: PCI adapter
    temp1:        +60.5 C  (crit = +120.0 C, hyst = +90.0 C)
    
    coretemp-isa-0000
    Adapter: ISA adapter
    Core 0:       +54.0 C  (high = +78.0 C, crit = +100.0 C)
    Core 1:       +57.0 C  (high = +78.0 C, crit = +100.0 C)

    In order to receive just the CPU temp I run this:

    Code: CPU temperature reading
    LibreELEC:~ # /storage/.kodi/addons/tools.lm_sensors/bin/sensors coretemp-isa-0000 | sed -ne "s/Core 1: \+[-+]\([0-9]\+\).*/\1 C/p"
    55 C

    I added this to my advancedsettings.xml using the <cputempcommand> tag

    After a reboot the Kodi System Information page now shows just a '?' for the CPU temperature. Changing advancedsettings.xml back to <cputempcommand>cputemp</cputempcommand> works but reports the wrong temperature (GPU) again.



    Full hardware specs (GPU is most important):

    it's a fairly old x86_64 System (but great as a powerful Kodi box for years now).

    • CPU: Intel C2D E8400 2x 3.0GHz
    • Mainboard: Gigabyte G41MT-D3V
    • RAM: 2GB DDR3
    • Graphics: ASUS/AMD Radeon HD4670 silent mod (without fan)
    • 8GB SSD

    The LibreELEC version you are running:

    • LibreELEC 8.2.1 Generic.x86_64 build

    Full debuglog:

    TRjD

    dmesg:

    QjcI

  • ahh, dammit ! right after posting I found the issue. Pasting the custom sensors command into advancedsettings.xml led to a linebreak:

    XML: advancedsettings.xml
    <cputempcommand>/storage/.kodi/addons/tools.lm_sensors/bin/sensors coretemp-isa-0000 | sed -ne "s/Core 1: 
    \+[-+]\([0-9]\+\).*/\1 C/p"</cputempcommand>

    I removed the linebreak and now it is working. Guess this report can be closed, but tbh I wish LibreELEC reported the correct CPU temperatures in the first place. I believe fan speed is also controlled by the internally measured value, no?

  • Interesting but not sure what you changed with that..Do you mean the temp LE was showing on UI didn't match the one from ssh "vcgencmd measure_temp"

    Fan control should measure internal temp with that command in script..

  • Interesting but not sure what you changed with that..Do you mean the temp LE was showing on UI didn't match the one from ssh "vcgencmd measure_temp"

    Fan control should measure internal temp with that command in script..

    vcgencmd is only for the rpi

  • The better solution would be to debug the /usr/bin/cputemp script and determine why it isn't using the correct temperature for the Radeon GPU and your Intel CPU.