GitSquared / edex-ui

A cross-platform, customizable science fiction terminal emulator with advanced monitoring & touchscreen support.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CPU temperature not displaying any value.

uKaigo opened this issue · comments

Technical information

Using version:

  • master (running from GitHub-published source code, currently v2.2.8-pre)
  • latest (latest release, currently v2.2.7)
  • vX.X.X (specify other version)

Running on:

  • Linux
  • Windows
  • macOS

How comfortable you are with your system and/or IT in general:

  • I'm kind of lost, honestly
  • I know what's up, I could help you run some commands or checks
  • My machine is fully under my control, tell me what you need
  • I attended Defcon last year

Problem

The temperature indicator of the CPU is not showing anything, instead displaying null.

screenshot

It's not working in v2.2.6 either.

commented

could you try running from the source itself?

Done, and the same thing happens.

Mmmh. Let's try checking the reported value directly from the system information library.

Could you:

  • start edex from source
  • open the debugger (ctrl+shift+i)
  • paste this in the Console: window.si.cpuTemperature().then(d => console.log(d))
  • share the results here?

Here's a screenshot of what it should look like once you're done.

image

Thanks for your help!

Here's what I get:
image

commented

which linux distro are you on, as a few dont have a sensor package installed by default

Mint 20.1 Ulyssa

Could you try these two shell commands:

cat /sys/class/thermal/thermal_zone*/type 2>/dev/null; echo "-----"; cat /sys/class/thermal/thermal_zone*/temp 2>/dev/null;

for mon in /sys/class/hwmon/hwmon*; do for label in "$mon"/temp*_label; do if [ -f $label ]; then value=$(echo $label | rev | cut -c 7- | rev)_input; if [ -f "$value" ]; then echo $(cat "$label")___$(cat "$value"); fi; fi; done; done;

They should help us determine what sensors are available on your hardware and successfully detected by the kernel.

There's no thermal_zone* file in /sys/class/thermal/ (only cooling_device*).

The last command only returned a 0 exit code (without echoing anything).

But I get

k10temp-pci-00c3
Adapter: PCI adapter
temp1:        +41.5°C  (high = +70.0°C)

from the sensors command

Interesting, what directories are there in /sys/class/hwmon?

The sensors output show a thermometer on the PCI bridge but that's not what edex is looking for. I've pulled up the specs of your CPU (using the model name from the first screenshot you posted), and I'm starting to think it might not have an on-die thermal diode at all, but maybe I'm mistaken.

Here's what sensors looks like for me, for reference:

iwlwifi_1-virtual-0
Adapter: Virtual device
temp1:        +47.0°C  

coretemp-isa-0000
Adapter: ISA adapter
Package id 0:  +42.0°C  (high = +100.0°C, crit = +100.0°C)
Core 0:        +39.0°C  (high = +100.0°C, crit = +100.0°C)
Core 1:        +40.0°C  (high = +100.0°C, crit = +100.0°C)
Core 2:        +39.0°C  (high = +100.0°C, crit = +100.0°C)
Core 3:        +40.0°C  (high = +100.0°C, crit = +100.0°C)
Core 4:        +41.0°C  (high = +100.0°C, crit = +100.0°C)
Core 5:        +39.0°C  (high = +100.0°C, crit = +100.0°C)

BAT0-acpi-0
Adapter: ACPI interface
in0:          12.64 V  
curr1:       1000.00 uA 

acpitz-acpi-0
Adapter: ACPI interface
temp1:        +25.0°C  (crit = +107.0°C)

You can see there's both a PCI bridge sensor and on-die sensors on the cpu, which is what edex is trying to find.

I see. There's only one directory in /sys/class/hwmon:
hwmon0 -> ../../devices/pci0000:00/0000:00:18.3/hwmon/hwmon0

Well that confirms it, you're missing the hardware sensor we're trying to read... I'm going to close this for now but I'll look with downstream dependencies to see if it's worth reading other sensors as a fallback and displaying that in edex.

Thanks for submitting a report & going through the debugging steps!