Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cant show cpu temperature on Orangepi 5(with rk3588s) #1160

Closed
talking-toaster opened this issue Jan 4, 2023 · 8 comments · Fixed by #1411
Closed

cant show cpu temperature on Orangepi 5(with rk3588s) #1160

talking-toaster opened this issue Jan 4, 2023 · 8 comments · Fixed by #1411
Labels
Linux 🐧 Linux related issues question ❔ Further information is requested support request This is not a code issue but merely a support request. Please use the mailing list or IRC instead.

Comments

@talking-toaster
Copy link

I use Ubuntu jummy and install the htop (3.0.5-7build2)
image

this is sensor -u

orangepi@orangepi5:~/code$ sensors -u
gpu_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 33.307

littlecore_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 34.230

bigcore0_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 34.230

tcpm_source_psy_6_0022-i2c-6-22
Adapter: rk3x-i2c
in0:
  in0_input: 0.000
  in0_min: 0.000
  in0_max: 0.000
curr1:
  curr1_input: 0.000
  curr1_max: 0.000

npu_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 34.230

center_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 34.230

bigcore1_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 34.230

soc_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 34.230
  temp1_crit: 115.000

@talking-toaster
Copy link
Author

also cant show the cpu frequency

@BenBE BenBE added support request This is not a code issue but merely a support request. Please use the mailing list or IRC instead. Linux 🐧 Linux related issues labels Jan 4, 2023
@templarundead
Copy link

I can confirm this issue on Orange PI 5, also its appears on Banana BPI-R3

image

@bb5d0
Copy link

bb5d0 commented Feb 8, 2023

I can confirm the temperature issue too on Orange Pi 5 with Kernel: 5.10.110-rockchip-rk3588 (ubuntu/debian & armbian).
I compiled and tried the newest htop release 3.2.2 as well as the current git clone, both with --enable-sensors.
Temp stays N/A.
No problem with frequencies.

@System64fumo
Copy link

System64fumo commented Sep 19, 2023

Can confirm, this also happens on Orange Pi 5 Plus
Tested with kernels: 5.10.110, 5.10.160, 6.5
Works fine with btop however

@BenBE
Copy link
Member

BenBE commented Sep 19, 2023

Mapping the temperature sensors to the proper CPU topology is not implemented, cf. #1284. Is there some documentation available for the mapping?

@BenBE BenBE added the question ❔ Further information is requested label Sep 19, 2023
@System64fumo
Copy link

I'm not sure what you mean by that but sensors -u shows this

npu_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 46.230

center_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 46.230

bigcore1_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 46.230

soc_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 47.153
  temp1_crit: 115.000

tcpm_source_psy_6_0022-i2c-6-22
Adapter: rk3x-i2c
in0:
  in0_input: 0.000
  in0_min: 0.000
  in0_max: 0.000
curr1:
  curr1_input: 0.000
  curr1_max: 0.000

gpu_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 46.230

littlecore_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 47.153

bigcore0_thermal-virtual-0
Adapter: Virtual device
temp1:
  temp1_input: 46.230

@BenBE
Copy link
Member

BenBE commented Sep 19, 2023

I'm not sure what you mean by that but sensors -u shows this

Let me explain (using a shortened version of your output):

npu_thermal-virtual-0
  temp1_input: 46.230

center_thermal-virtual-0
  temp1_input: 46.230

bigcore1_thermal-virtual-0
  temp1_input: 46.230

soc_thermal-virtual-0
  temp1_input: 47.153

gpu_thermal-virtual-0
  temp1_input: 46.230

littlecore_thermal-virtual-0
  temp1_input: 47.153

bigcore0_thermal-virtual-0
  temp1_input: 46.230

This is all the temperatures reported for your Pi. There are temperatures not just for the CPU cores, but also for things like the GPU (gpu_thermal-virtual-0), the overall SoC (soc_thermal-virtual-0), the NPU (npu_thermal-virtual-0). Also the temperatures reported for the CPU are for certain areas on the CPU die. Thus you have one sensor for each of the BIG cores (bigcore0_thermal-virtual-0, bigcore1_thermal-virtual-0), but only one reading for all of the little cores (littlecore_thermal-virtual-0).

In code you can now filter for those sensors and you end up with the three readings that belong to the CPU itself (2x BIG, 1x little). The next step is identifying the CPU topology from the output of /proc/cpuinfo by checking which of the reported CPU threads is a BIG core (and which one) and which CPU threads are little cores. Once that is done you need to map the temperature readings to the corresponding core.

Currently detecting this topology is (somewhat) implemented for Intel CPUs (using the coretemp driver of the kernel), but missing for ARM CPUs as used by the Pi.

NB: The CPU of the Pi uses the so-called BIG.little architecture with a few fully capable CPU cores (BIG) and several, functionally reduced ones (little) to supplement. Hence the name.

@segabor
Copy link
Contributor

segabor commented Mar 11, 2024

I have a hack for Rockchip Rk3588 #1411

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Linux 🐧 Linux related issues question ❔ Further information is requested support request This is not a code issue but merely a support request. Please use the mailing list or IRC instead.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants