It is currently March 28th, 2024, 8:03 pm

Call for a Coder to build a Tempurature Monitor

Share and get help with Plugins and Addons
Yoshimanitsu
Posts: 9
Joined: December 7th, 2009, 9:05 am

Re: Call for a Coder to build a Tempurature Monitor

Post by Yoshimanitsu »

This is one idea, I can't wait to see happen :O
User avatar
Alex2539
Rainmeter Sage
Posts: 642
Joined: July 19th, 2009, 5:59 am
Location: Montreal, QC, Canada

Re: Call for a Coder to build a Tempurature Monitor

Post by Alex2539 »

A30N wrote:CoreTemp has a few addons, one of which is an MIRC script. It includes the GetCoreTempInfo.dll and instructions on how to customize output. I bet it wouldn't be hard for someone to convert it for use with RainMeter. There's also a Vista Sidebar Gadget for CoreTemp, but after extracting it, it looks much more complicated to reverse-engineer.
If you read the description of the mIRC script and the Sidebar gadget, you'll see that it requires CoreTemp to be running. In this case, it is no better or worse than the current SpeedFan plugin (which works great by the way). The idea here is to instead find a solution such that no other program needs to be running. This is, after all, what puts some peolpe off of the SpeedFan plugin. It works, but they don't want something extra to be running.

The hunt continues!
ImageImageImageImage
Shade
Posts: 2
Joined: January 26th, 2010, 10:40 am

A solution

Post by Shade »

Ladies and gents, this is a strange situation indeed. A solution already exists in NVidia driver. It is as simple as

Code: Select all

#include <windows.h>
#include <stdio.h>
typedef BOOL (__cdecl* NvCplGetThermalSettings)(IN UINT nWindowsMonitorNumber,OUT DWORD* pdwCoreTemp,OUT DWORD* pdwAmbientTemp,OUT DWORD* pdwUpperLimit);
int main(int argc,char *argv[])
{
  HINSTANCE hNV=LoadLibrary(TEXT("NvCpl.dll"));
  if(hNV==NULL)
    printf("failed to load 'NvCpl.dll' library.\n");
  else
  {
    NvCplGetThermalSettings fNvCplGetThermalSettings=(NvCplGetThermalSettings)GetProcAddress(hNV,"NvCplGetThermalSettings");
    if(fNvCplGetThermalSettings==NULL)
      printf("failed to get function address 'NvCplGetThermalSettings()'.\n");
    else
    {
      unsigned long current;
      unsigned long ambient;
      unsigned long limit;
      if(fNvCplGetThermalSettings(0,& current,&ambient,&limit)==false)
        printf("failed to aquire current gpu temperature.\n");
      else
        printf("gpu temperature: %d\n",current);
    }
    FreeLibrary(hNV);
  }
  return 0;
}
(c) http://www.gamedev.ru/flame/forum/?id=81047
One of the first things I've found on the net while searching for rainmeter GPU temperature monitor.
If anyone would please create a widget with line measures, my desktop would be complete.
Pretty please?

PS: The doc on the forum above describes a lot of interesting stuff by the way. But the first thing would be temp of cource.

PPS: Does anyone know if Rainmeter line diagrams can fold their history? Like "

Code: Select all

up to now moment - 2 minutes the diagram is normal with timeline taking 2/3 of the available timeline, 
now - 2 -- now - 5 is folded with medium degree and its timeline keeping 1/6 of the total timeline, 
now - 5 -- now - 10 (or 15) is folded hard so its timeline if folded to the remaining 1/6 of the timeline
and earlier results are omitted
"
?
I didn't find this sort of widgets, yet it would be invaluable monitoring tool.
the-cortex
Posts: 2
Joined: February 8th, 2010, 6:19 pm

Re: Call for a Coder to build a Tempurature Monitor

Post by the-cortex »

ok with that code you can accsses all single core Nvidia GPUs, you still have to find a way to accesses the Multi cores, Intel extreams, Vias, ATIs and the other GPUs, as for CPUS temp the problem lies in that there is no stadard way to moniter the temp. so asus use pc probe, intels use there own software, to be honist i dont think there is a way of doing with with out usesing speed fan or HW5. then again you have to make sure your system is supported by speed fan XD
Shade
Posts: 2
Joined: January 26th, 2010, 10:40 am

Re: Call for a Coder to build a Tempurature Monitor

Post by Shade »

the-cortex wrote:then again you have to make sure your system is supported by speed fan XD
My system isn't.
As for other cards -- their functions are sure to be described at corresponding docs.
the-cortex
Posts: 2
Joined: February 8th, 2010, 6:19 pm

Re: Call for a Coder to build a Tempurature Monitor

Post by the-cortex »

Dont worry my system is not supported, i have been looking in to it and there are WAY to many varables to find the infomation. the best program i found is CPUID HWMoniter which was mentioned before,
groen
Posts: 12
Joined: February 21st, 2010, 5:58 pm

Re: Call for a Coder to build a Tempurature Monitor

Post by groen »

lavalys everest has a 3rd party section on their forum/website, maybe they would be so kind to help

http://www.lavalys.com/forum/index.php?showforum=15

sorry, no help there either

http://www.lavalys.com/forum/index.php?showtopic=2866
User avatar
elestel
Developer
Posts: 57
Joined: May 6th, 2009, 6:06 am

Re: Call for a Coder to build a Tempurature Monitor

Post by elestel »

By C# code from openhardwaremonitor.org, I write a small C++ util to test WinRing0 (modified BSD license) and nvapi.dll. So far it works good on my Intel CPU/NVIDIA GPU. AMD/ATI support is in progress but I have no actual hardware to test.
User avatar
UNleash
Posts: 50
Joined: December 13th, 2009, 4:28 am
Location: North-West Germany

Re: Call for a Coder to build a Tempurature Monitor

Post by UNleash »

For the GPU, I offer myself to help you (ATi HD 4850).
Because I want that .. ;)
Image
sgtevmckay

Re: Call for a Coder to build a Tempurature Monitor

Post by sgtevmckay »

elestel wrote:By C# code from openhardwaremonitor.org, I write a small C++ util to test WinRing0 (modified BSD license) and nvapi.dll. So far it works good on my Intel CPU/NVIDIA GPU. AMD/ATI support is in progress but I have no actual hardware to test.
I almost would not worry too much....I am using an Intel C2D with intel graphics....either way, I would suggest throwing on to the forums here, and get as much input from as many resources as possible

Just my thoughts