It is currently April 25th, 2024, 11:44 am

CoreTemp shows the wrong temperature until Rainmeter is restarted

Get help with creating, editing & fixing problems with skins
jn_meter
Posts: 136
Joined: December 27th, 2016, 12:04 pm

CoreTemp shows the wrong temperature until Rainmeter is restarted

Post by jn_meter »

Dear all

I notice that - since I don't know when - CoreTemp, accessed via Rainmeter, gives the wrong value for CPU temp (taken as a mean across cores) until Rainmeter is restarted. Thus, on boot: wrong values. Let me detail my setup.

- CoreTemp version 1.18; temperature polling interval 3000 milliseconds.
- Rainmeter 4.5.17.3700 (64-bit)
- Windows 10 Pro 22H2 (build 19045.2604) 64-bit - English (2057)
- My source for what I take to be the actual CPU (mean core) temperature is the program called 'Speccy'.

Relevant Rainmeter code:

Code: Select all

update_cpuTemp=4

[measure_cpu_temp_firstCore]
; (update divider x update ) should not be less than CoreTemp's 'temperature polling interval'. 
CoreTempIndex=0
CoreTempType=Temperature
Measure=Plugin
Plugin=CoreTemp
UpdateDivider-1

[measure_cpu_temp_secondCore]
CoreTempIndex=1
CoreTempType=Temperature
Measure=Plugin
Plugin=CoreTemp
UpdateDivider=-1

[measure_cpu_temp_thirdCore]
CoreTempIndex=2
CoreTempType=Temperature
Measure=Plugin
Plugin=CoreTemp
UpdateDivider=-1

[measure_cpu_temp_fourthCore]
CoreTempIndex=3
CoreTempType=Temperature
Measure=Plugin
Plugin=CoreTemp
UpdateDivider=-1

[measure_tempOfCores]
DynamicVariables=1
Formula=Round(( measure_cpu_temp_firstCore + measure_cpu_temp_secondCore + measure_cpu_temp_thirdCore + measure_cpu_temp_fourthCore ) / 4)
Measure=CALC
UpdateDivider=#update_cpuTemp#


[meter_cpu_value_cpuTemp]
ClipString=1
DynamicVariables=1
MeasureName=measure_tempOfCores
Meter=String
Text=%1°
ToolTipIcon=info
ToolTipText=[measure_tempOfCores:1]°
ToolTipTitle=CPU temperature
ToolTipType=0
Might the problem be those instances of UpdateDivider=-1? I forget why I have them.

Thanks.
User avatar
eclectic-tech
Rainmeter Sage
Posts: 5406
Joined: April 12th, 2012, 9:40 pm
Location: Cedar Point, Ohio, USA

Re: CoreTemp shows the wrong temperature until Rainmeter is restarted

Post by eclectic-tech »

UpdateDivider=-1 may very well be your problem.

That updates the measures when the skin is loaded or refreshed, but never again unless specified in an !UpdateMeasure {yourmeasurename} bang somewhere in the code. I would also check the value of Update=1000 in the [Rainmeter] section is not set to Update=-1..

Note: You have a typo in [measure_cpu_temp_firstCore] measure, you have UpdateDivider-1 and it is missing the equal sign; UpdateDivider=-1
jn_meter
Posts: 136
Joined: December 27th, 2016, 12:04 pm

Re: CoreTemp shows the wrong temperature until Rainmeter is restarted

Post by jn_meter »

eclectic-tech:

thank you very much.

I have corrected the typo that you spotted. So doing led (before a reboot, anyway) to Rainmeter under-reporting CPU temperature, whereas before it was over-reporting it (!).

It seems to me that the following might explain - and warrant - the '-1' updateDividers:

Code: Select all

[measure_tempOfCores]
DynamicVariables=1
Formula=Round(( measure_cpu_temp_firstCore + measure_cpu_temp_secondCore + measure_cpu_temp_thirdCore + measure_cpu_temp_fourthCore ) / 4)
Measure=CALC
UpdateDivider=#update_cpuTemp#
And Rainmeter's output for the CPU temperature does change over time. Yet, does the code shown immediately really above update the measures for the individual cores?

Just now I tried commenting out those UpdateDividers - thereby leaving the update divider for the relevant measures to be set by this line earlier in the script: Update=1000. And once I had done that, Rainmeter seemed to over-report the CPU temperature.

It is hard to know what is going on. Here is why.

- CoreTemp has a particular (adjustable) polling interval; Speccy's interval appears to be one second, but even when I set the CoreTemp interval to one second, the Rainmeter-Speccy discrepancy persists.

- CoreTemp seems to lack the ability to show the mean temperature of the cores. So I cannot directly compare CoreTemp's UI to that which Rainmeter pulls from CoreTemp.

- The difference between (1) what Rainmeter says when the PC has been rebooted, and (2) what Rainmeter says when the PC has been rebooted and the relevant skin refreshed - that difference perplexes. Perhaps the updateDividers do have something to do with that.

I add: the tool HWMonitor gives a yet further different value for the CPU temp, though one that is considerably closer to the value that Speccy reports than to the value that Rainmeter is reporting-via-CoreTemp (!).
jn_meter
Posts: 136
Joined: December 27th, 2016, 12:04 pm

Re: CoreTemp shows the wrong temperature until Rainmeter is restarted

Post by jn_meter »

Aha: removing the 'round' from

Formula=( measure_cpu_temp_firstCore + measure_cpu_temp_secondCore + measure_cpu_temp_thirdCore + measure_cpu_temp_fourthCore ) / 4

yields output that is closer to the output from the other tools. But let me try a reboot . .
jn_meter
Posts: 136
Joined: December 27th, 2016, 12:04 pm

Re: CoreTemp shows the wrong temperature until Rainmeter is restarted

Post by jn_meter »

Speccy and Rainmeter show fairly similar values now, even after a reboot (and with the update dividers not set to -1). Yet, after refreshing the skin, and whether or not I remove the '-1' updateDividers, I get an even closer alignment - so there is still something odd going on!