Core Temp Monitor extension

User feature requests
Planned features for Core Temp
Post Reply
fgw
Registered User
Registered User
Posts: 13
Joined: Sat Feb 10, 2007 6:59 pm

Core Temp Monitor extension

Post by fgw »

hi Arthur,

stumbled over CoreTempRemoteServer and the corresponding smartphone apps recently and like the possibility to show cpu temperatures and loads on my smartphone! i understand, coretemp is designed with cpu monitoring only in mind and thus is not supporting monitoring any other values. think its a shame, to limit this useful program to show cpu temp and load only!

anyway, im thinking of writing a small program which uses CoreTempRemoteServer and the smartphone app to display additional info like gpu temps and some other values i'm interested in.

have not started yet, but from looking at the sources supplied in the sdk it should be fairly easy to write this little program!

but there are two features i would like to be added to CoreTempRemoteServer and the app running on the smartphone.

coretemp shared memory:

in order to display correct labels and units it would be required to add two additional elements to core_temp_shared_data

current structure

Code: Select all

typedef struct core_temp_shared_data
{
	unsigned int	uiLoad[256];
	unsigned int	uiTjMax[128];
	unsigned int	uiCoreCnt;
	unsigned int	uiCPUCnt;
	float			fTemp[256];
	float			fVID;
	float			fCPUSpeed;
	float			fFSBSpeed;
	float			fMultiplier;	
	chars			CPUName[100];
	unsigned char	ucFahrenheit;
	unsigned char	ucDeltaToTjMax;
}CoreTempSharedData,*LPCoreTempSharedData,**PPCoreTempSharedData;
extended structure

i'm thinking of

char sLabelName[256][64];
char sUnit[256][16];

Code: Select all

typedef struct core_temp_shared_data
{
	unsigned int	uiLoad[256];
	unsigned int	uiTjMax[128];
	unsigned int	uiCoreCnt;
	unsigned int	uiCPUCnt;
	float			fTemp[256];
	float			fVID;
	float			fCPUSpeed;
	float			fFSBSpeed;
	float			fMultiplier;	
	char			sCPUName[100];
	unsigned char	ucFahrenheit;
	unsigned char	ucDeltaToTjMax;
	char			sLabelName[256][64];
	char			sUnit[256][16];
}CoreTempSharedData,*LPCoreTempSharedData,**PPCoreTempSharedData;
to allow for idividual labels and units for every monitored item.

if this two elements are added to the end of the structure, there should be no compatibility issues with current applications, though sLabelNameand sUnit needs to be initialized to "Core x" and "°C" by coretemp for all cpu cores available on the system. this way current plugins and also the "extended" versions of CoreTempRemoteServer.dll and smart phone app can use the new version of core_temp_shared_data. no need to tell the apps what version of core_temp_shared_data is coming along. old apps will just ignore the added elements and behave as before. new apps will use the added elements and use them to display the strings as initialized by coretemp.



CoreTempRemoteServer.dll and the android app

in order to use the above described labels and units CoreTempRemoteServer.dll needs to be modified to pass the newly added elements to the app running on the smartphone and the app itself needs to be modified to use the data supplied in core_temp_shared_data.sLabelName[x] and core_temp_shared_data.sUnit[x] for display instead of the hardcoded values of "Core x" and "°C".

if CoreTempRemoteServer.dll is already passing the whole data structure of core_temp_shared_data, there should be no need to change anything here. the smartphone app needs to be modified anyway!

as i'm using an adroid smart phone updating the android app would do it for now. but if apps for the other platforms get updated they will be able to use this features in the same way.



did i miss anything? what do you think arthur?

cheers
f

Post Reply

Return to “Development”