site  contact  subhomenews

Pmcputemp now has hardware profiling

November 15, 2020 — BarryK

A special feature of EasyOS is hardware profiling. EasyOS is typically booted from a USB-stick, which may be inserted into different PCs -- if the user has configured video or sound for one PC, it will likely be wrong if the stick is booted on another PC. Hardware profiling takes care of that automatically. Here are some posts about video and audio profiling:

https://bkhome.org/news/202001/further-improved-video-hardware-profiling.html

https://bkhome.org/news/202001/audio-hw-profiling-supports-usb-cards.html

Pmcputemp is a CPU temperature tray applet, created by Mick (01micko in the forums), and it has been in the back of my mind that this also needs to have hardware profiling. It creates /root/.config/pmcputemp/pmcputemprc once, that is possibly going to be wrong if the stick is booted on another PC.

Firstly, some background. Mick put pmcputemp onto github:

https://github.com/01micko/pmcputemp

In June 2020, I identified an issue with writes to the drive, and modified the source, created version 1.1:

https://bkhome.org/news/202006/pmcputemp-modified-to-remove-drive-writes.html

And just for the record, here is an earlier post, when I first adopted pmcputemp:

https://bkhome.org/news/201707/pmcputemp-cpu-temperature-monitor.html

I have now created version 1.2, with hardware profiling. Here is the config file on my PC:

img1

...a string is appended, that identifies the hardware that is currently running. I could have used 'dmidecode' to obtain motherboard information, but that does not work on ARM boards. So instead I just read /proc/cpuinfo -- in theory, if different PCs have the same CPU, will get the same string, so not ideal.

So, if boot on another PC, if it creates a different hardware-string, then it will generate a new pmcputemprc.<profile> file.

There was also another problem, that forum member 'banned' and others identified:

https://easyos.org/forum/showthread.php?tid=83

'banned' was getting a temperature reading that was "off the scale", so I put in checking that the node in /sys where temperature is being read, is within a valid range -- if over 110000 (110 degC), rejected.

Here is the source for version 1.2:

http://distro.ibiblio.org/easyos/source/alphabetical/p/

Here is a PET compiled for Debian Buster:

http://distro.ibiblio.org/easyos/amd64/packages/pet/pet_packages-buster/pmcputemp-1.2-buster64.pet

I will let Mick know about this, it is his decision whether he wants any of these changes on his github repo. For the record, here is Mick's thread on the old forum:

http://oldforum.puppylinux.com/puppy/viewtopic.php?t=98299

I vaguely recall, Mick did create another temperature monitor, that might have been intended to supersede pmcputemp, but I can't locate that. Hmmm, the memory is lurking in my brain, recall some email communications with Mick, yes, "poorercputemp". Here it is:

http://oldforum.puppylinux.com/puppy/viewtopic.php?t=119042

EDIT 2020-11-16:
Mick sent me an email, letting me know that he is now working on a third iteration, "pcputemp" (without the "m"):

https://forum.puppylinux.com/viewtopic.php?f=106&t=674

He was having trouble with pmcputemp crashing on his laptop:

I have abandoned cairo because my recently acquired laptop, for some reason I can't fathom, crashes with pmcputemp after a few hours or several days to even weeks but it crashes. Doesn't matter about distro or kernel. It's a cairo bug but I can't nail it down so I gave up. My newer versions 'printf' the svg icon from the C code.  

Tags: easy