Page 3 of 5

Posted: Thu 02 Apr 2015, 14:37
by ally
micko, thanks for the fatdog64 code, working well

:)

Posted: Thu 02 Apr 2015, 20:24
by charlie6
Hi Mick,
01micko wrote:... please try the commands I posted for davids45 ...
here you are:
sh-3.00# find /sys -type f -name 'temp*_input'
sh-3.00#
sh-3.00# find /sys -type f -name 'temp*_input' -exec cat '{}' \;
sh-3.00#
...not the slightest comment ... :(

thanks again for your time !
Charlie

Posted: Thu 02 Apr 2015, 22:00
by 01micko
Hi charlie, thanks for testing.

I'm afraid it looks like your board is unsupported. Not much can be done about that, however there is one possibility, but it is usually only in older kernels.

You can try

Code: Select all

find /proc -type f -iname 'temp*'
then

Code: Select all

find /proc -type f -iname 'temp*' -exec cat '{}' \;
I don't like the chances but you don't know until you try. You can also try a manual search in /proc/acpi/thermal_zone

Further testing of script lines

Posted: Fri 03 Apr 2015, 08:45
by davids45
G'day 01micko,

No luck with the above line, just blank # lines.
Code tried:
find /proc -type f -iname 'temp*'

find /proc -type f -iname 'temp*' -exec cat '{}' \;

Wheezy = nothing, just a new #
Slacko-5.9.3 also nothing
Unicorn-6.0 also no response.
Snowpup-015 also nothing.
The original script in 0.6 seemed to work in finding temperatures, but couldn't pick the right/same "temp_" in every case on this computer. Is this kernel or Pup/Woof related?

"_input" seems the important text.

It has been either "temp1" or "temp2" (when there's only temp2 and temp3 found, no temp1?) that has the lower value of about 35-40 which is assumed to be the cpu operating temperature, the others being "_max" or "_crit". What do the Intel specs say about their processors' operating temperatures?

Still curious to know what happens with a quad core (four temps?).

Random ideas:
Picking the minimum non-zero value from the listing of all found temperatures and calling that the cpu temp?
Averaging the "_input" values to give a single figure for multpiple cores?

David S.

Posted: Sat 04 Apr 2015, 12:08
by charlie6
Hi Mick,
01micko wrote:...
I'm afraid it looks like your board is unsupported
...
try a manual search in /proc/acpi/thermal_zone
sh-3.00# find /sys -type f -iname 'temp*'
sh-3.00# find /sys -type f -iname 'temp*' -exec cat '{}' \;
sh-3.00#
also, there is not any
/proc/acpi/thermal_zone
present.

Thanks anyway !
Charlie

pmcputemp-0.60 in Quirky-7.0.3

Posted: Thu 09 Apr 2015, 05:42
by davids45
G'day 01micko,

New install of Quirky-7.0.3 (32 bit version) produced a pink icon reading around 62C.

Running your script to see full temperature details:
# find /sys -type f -name 'temp*'
/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/hwmon/hwmon0/temp1_crit
/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/hwmon/hwmon0/temp1_crit_hyst
/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/hwmon/hwmon0/temp1_input
/sys/devices/platform/coretemp.0/hwmon/hwmon1/temp3_input
/sys/devices/platform/coretemp.0/hwmon/hwmon1/temp3_label
/sys/devices/platform/coretemp.0/hwmon/hwmon1/temp2_crit_alarm
/sys/devices/platform/coretemp.0/hwmon/hwmon1/temp2_crit
/sys/devices/platform/coretemp.0/hwmon/hwmon1/temp3_crit
/sys/devices/platform/coretemp.0/hwmon/hwmon1/temp3_crit_alarm
/sys/devices/platform/coretemp.0/hwmon/hwmon1/temp2_max
/sys/devices/platform/coretemp.0/hwmon/hwmon1/temp3_max
/sys/devices/platform/coretemp.0/hwmon/hwmon1/temp2_input
/sys/devices/platform/coretemp.0/hwmon/hwmon1/temp2_label
#
# find /sys -type f -name 'temp*' -exec cat '{}' \;
120000
90000
62000
34000
Core 1
0
100000
100000
0
74000
74000
40000
Core 0
The task-bar value (62C) looks like it is the third one in the listing of values which, using the "_label" lines (= Core x) as reference points, means it is the devices/pci temp1_input.
The Core 0 and 1 temp_inputs ('platform') are 40C and 34C by the same reckoning.

How do I find out which or what are these three 'temp_inputs', and which is most important regarding excessive heating? Intel spec. sheet of the cpu, for example?

David S.

Posted: Mon 13 Apr 2015, 11:47
by 01micko
New version posted - see main post

Code: Select all

# git log --pretty
commit d20ec2cb4e78a3375afa5a8514993a182146fb8b
Author: 01micko <01micko@gmail.com>
Date:   Mon Apr 13 20:58:05 2015 +1000

    pmcputemp.sh: hopeful fix for finding temp data

commit a30bd31992c1dc421d1d2fa38039f256798e23a0
Author: 01micko <01micko@gmail.com>
Date:   Mon Apr 13 12:35:52 2015 +1000

    update readme

commit 40ff1d0bd50f0ffb9ca119debe37547d039f1b53
Author: 01micko <01micko@gmail.com>
Date:   Mon Apr 13 12:32:19 2015 +1000

    Add a new colour range and bump up. Add cli switch for delay

commit 5edc92aef70d736fbe5e72b3a0e0eb508e56e857
Author: 01micko <01micko@gmail.com>
Date:   Mon Apr 13 12:31:12 2015 +1000

    Add splash window if temperature file can't be found

commit 37a2e55f09d3a86735dd6fff63c62ebc0c1387b5
Author: 01micko <01micko@gmail.com>
Date:   Mon Apr 13 12:29:19 2015 +1000

    update man page

commit 8b0a19c8af3ae6d4dcff1a98ed87e685b8123a32
Author: 01micko <01micko@gmail.com>
Date:   Mon Apr 13 12:26:24 2015 +1000

    update pot file

commit 4f39d0cb4058624d89fa76af248b6b49cf90b67a
Author: 01micko <01micko@gmail.com>
Date:   Fri Apr 10 10:29:40 2015 +1000

    pmcputemp.c: removed debug code

commit 6202a6d7526aa42c0114f8cdd917ed83b9527cb1
Author: 01micko <01micko@gmail.com>
Date:   Fri Apr 10 10:27:53 2015 +1000

    Add a polling interval, feature request from james

commit 26028ad50c1c5a2b5e340560d92d33b886bee359
Author: 01micko <01micko@gmail.com>
Date:   Thu Apr 2 20:18:40 2015 +1000

    fr.po updated : charlie6
If it fails for you a splash screen will appear. Just uninstall it if you see the orange message.

Enjoy!

Version-0.61 in Wheezy, TahrPup, April-Quirky & Slacko

Posted: Tue 14 Apr 2015, 01:22
by davids45
G'day 01micko,

I have installed pmcputemp-0.61 in four Full Pups and get the same value near enough :lol: .

F'rinstance here's a shot of my Slacko Full, where I included the lmsensors output and a bodgied-up Temp-cpu widget :oops: all of which seem to agree :D . The /root/.config/pmcputemp file is also in the screenshot.

'Sensors' output describes 'temp1' as the graphics card temp? - the same as your previous scripts I tried on this computer.

I will try pmcputemp-0.61 on some other computers around here when I get the time.

Wonder what others will find on other machines?

Thanks for the personalised app.

David S.
(A poor-man :cry: )

Posted: Tue 21 Apr 2015, 01:08
by 01micko
Well David, looks like we (finally!) may have sorted it out for you.


New version 0.63 .. see main post.

Code: Select all

commit 8c1c5bf9900348ede22da2638e6857277d19eaef
Author: 01micko <01micko@gmail.com>
Date:   Tue Apr 21 09:21:23 2015 +1000

    Change error message and bump version

commit c81191c2785f8215666d2d8cae4748768adc820f
Author: 01micko <01micko@gmail.com>
Date:   Tue Apr 21 09:19:53 2015 +1000

    Add feature request to show cpu frequency in tooltip, jamesbond

commit cd865ad5be7f170f139c0eb9cae785bd4eba4391
Author: 01micko <01micko@gmail.com>
Date:   Mon Apr 13 22:10:54 2015 +1000

    update man page date

version-0.63 on this 2-core HP desktop

Posted: Tue 21 Apr 2015, 08:28
by davids45
G'day 01micko,

I have quickly deleted the old /root/.config/pmcputemp directory for 0.61 and installed 0.63 to several full Pups.

Task-bar display was consistent (blue, about "32C" which is about 15C above ambient here)
The cpu core frequencies given in the "hover-box" seemed correct as one did occasionally change as I watched.
As a retired scientist, I could quibble with the meaningfulness of three decimal places shown for the core frequencies :shock: - surely to the nearest MHz is adequate (unless it's too difficult to cull the probably superfluous post-decimal zeros)?

I will try 0.63 on a different old desktop in the attic when I get the chance. It ran 0.61 OK, so should be good with 0.63.

[off-topic] "Interestingly" this attic computer gives a more informative 'sensors' output than the HP I'm now on. I'll try your scripts too to probe this computer.
I'm trying to create a working generic version of the Temp_cpu widget, based on lmsensors & pwidgets, but suspect each computer/motherboard/cpu/kernel/? will need tailoring by its user because of the variable responses by each computer/motherboard/cpu/etc to requests for hardware outputs from lmsensors or similar. [/off-topic]

Thanks for your persistence,
David S.

Posted: Wed 29 Apr 2015, 16:04
by OscarTalks
Thought I would report some findings with pmcputemp-0.63 compiled from source in Dpup Wheezy 3.5.2.11 remastered.

Was given an old desktop yesterday. AMD Duron Spitfire CPU running at just under 900 MHz with SiS chipset MoBo. 256 MB RAM plus 1.5 GB of swap which I created in the 20 GB HD. Frugal install of above Pup in ext3 partition in the remainder of the HD.

Initial try of pmcputemp did not work, got the "Not working on your system" window, but I had seen some temperature readouts in the bios and when I ran Radky's PupSysinfo > devices > sensors it gave me 3 CPU temperature readouts.

I investigated the loaded modules and it looks like PupSysinfo is modprobing 5 modules. Is that possible? They are:-

hwmon
hwmon_vid
it87
k8temp
k10temp

These modules are not loaded at normal boot but after running PupSysinfo I am able to try pmcputemp again and get it to work.

The temp1_input and temp2_input and temp3_input files become available in a directory /sys/devices/platform/it87.656
Without these modules the entire it87.656 directory does not exist.
Looks like the it87 hardware monitoring driver module is needed

If I add those 5 modules via boot manager I can then have pmcputemp start with a script in /root/Startup and all seems fine. Maybe this will offer a suggestion for something that can go into a future version of pmcputemp.

By the way, this is a puny old single-core CPU so if temp1 is the readout we want then do we know what temp2 and temp3 actually are?

Posted: Wed 29 Apr 2015, 22:26
by gcmartin
Had "pmcputemp" report discrepancies reported on the LxPUP64 thread.

So, Ran these commands on same DELL AIO desktop with LxPUP64.

Code: Select all

sh-4.2# find /sys -type f -name 'temp*' 
/sys/devices/virtual/thermal/thermal_zone0/temp
/sys/devices/virtual/thermal/thermal_zone1/temp
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp1_crit_alarm
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp3_input
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp3_label
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp2_crit_alarm
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp1_crit
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp2_crit
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp3_crit
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp3_crit_alarm
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp1_input
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp1_label
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp1_max
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp2_max
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp3_max
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp2_input
/sys/devices/platform/coretemp.0/hwmon/hwmon0/temp2_label
sh-4.2# find /sys -type f -name 'temp*' -exec cat '{}' \;
27800
29800
0
40000
Core 1
0
105000
105000
105000
0
47000
Physical id 0
85000
85000
85000
44000
Core 0
sh-4.2# 
Hope this info can help clarify the reports and the information they provide.

Posted: Thu 30 Apr 2015, 16:27
by nilsonmorales
For spanish users

Posted: Fri 01 May 2015, 04:46
by 01micko
@nilsonmorales - thanks! However your pet doesn't include the .po file. Could you please post one so I can include it in the git source code. TIA.

-----------------------------------------------------

@gcmartin - intels are so inconsistent! At least with AMD i have found only one inconsistency, reported by Oscar above :lol:

Please try the attached script. Unzip - make executable - overwrite the existing version in /usr/bin/

-----------------------------------------------------

@davids45 - the 3 decimal resolution stays - see GC's pic in his link for why :wink:

EDIT: attachment fixed, sorry about that

-----------------------------------------------------

@OscarTalks - try the script attached on a clean boot (ie: drop all your relevant module loading in bootmanager). I've added it87 to my modprobe loop so hopefully that picks up the dependent modules too.

-

Thanks @all.

Posted: Fri 01 May 2015, 05:03
by nilsonmorales
01micko Im sorry, forget the .po

Posted: Fri 01 May 2015, 06:28
by 01micko
Thanks nilsonmorales 8)

-----------------------------------------------

I have pushed the translation and some small changes to github, including the script change. Oscar, you may want to grab that version. I haven't updated packages yet and won't until I get some feedback from the script change.

Posted: Fri 01 May 2015, 15:16
by OscarTalks
I will try the script from Github if it is modified. The one from the forum did give me an error in line 12 when run from terminal.

Code: Select all

# ./pmcputemp.sh
./pmcputemp.sh: line 12: [: missing `]'
Failed to find file
#
I thought this might be a missing space (before the close bracket) (EDIT - or a missing Dollar before the "IT" ??) but when I tried again later the error did not show up. Anyway I am not convinced the load_module_func section is working as intended. It is not working in that AMD machine and the code gives some strange output in terminal. This was after I had inserted what I thought was the missing space. If I simplify it down to a more basic modprobe func and strip out some of the trimmings like the greps and the echoes then it does work. I get a bit lost and dizzy with it after a while though. I will do a bit more testing later after a nice cup of tea.

Posted: Fri 01 May 2015, 22:14
by 01micko
Hi Oscar!

Thanks for testing and sorry for messing up the script.. fixed now. You did the right thing fixing those bugs and continuing. The module *should* load, or at least try to load.

Was the terminal some gdkpixbuf error? If so it's nothing to do with the script, that's a bug in pmcputemp if there is no icon present, a timing error which doesn't happen all the time, and it only happens on first run before the /root/.config/pmcputemp directory is created. It's fixed at github, but I want to see if it works for you before I post a new version.

Posted: Sat 02 May 2015, 00:07
by OscarTalks
Something is still not quite right with it. As it stands it loads k10temp (and hwmon) but not it87 or the other 2 modules (hwmon_vid and k8temp) so it still does not work.

I don't really know very much about the code, but just poking around I find that all 5 modules load and it appears to work if I just comment out the break and continue lines.

The terminal error I mentioned was just the missing characters it complained about when I just ran the script on its own from terminal but that is OK now. The gdkpixbuf thing also happens on first run but if you have now fixed that then it is just the module loading that still needs a tweak I guess.

Posted: Sat 02 May 2015, 00:30
by 01micko

Code: Select all

# modinfo it87
filename:       /lib/modules/3.17.0/kernel/drivers/hwmon/it87.ko
license:        GPL
description:    IT8705F/IT871xF/IT872xF hardware monitoring driver
author:         Chris Gauthron, Jean Delvare <jdelvare@suse.de>
depends:        hwmon-vid,hwmon
intree:         Y
vermagic:       3.17.0 SMP mod_unload modversions 
parm:           force_id:Override the detected device ID (ushort)
parm:           update_vbat:Update vbat if set else return powerup value (bool)
parm:           fix_pwm_polarity:Force PWM polarity to active high (DANGEROUS) (bool)
Ok, so it looks like it87 only depends on hwmon (which gets loaded?) and hwmon-vid. I wonder where dep on k8temp comes from (which only depends on hwmon)?

Anyway, we can easily add a sub-loop to load those 2.

Try this, replacing the current load_module_func() .. (please note the comment if it fails)

Code: Select all

load_module_func() {
	lsmod|grep -q coretemp
	CORETEMP=$?
	lsmod|grep -q k*temp
	KTEMP=$?
	lsmod|grep -q it87
	IT=$?
	if [ "$CORETEMP" = "1" ] && [ "$KTEMP" = "1" ] && [ "$IT" = "1" ];then
		for m in it87 coretemp k10temp k8temp 
		do 
			if [ "$m" = "it87" ];then
				for p in hwmon-vid #k8temp #k10temp #if it still fails uncomment k8, then k10
				do modprobe $p 2>/dev/null
					if [ "$?" != "0" ];then
						echo "loading $p failed"
						break
					fi
				done
			fi
			modprobe $m 2>/dev/null
			if [ "$?" = "0" ];then
				echo "loading $m"
				L=0
				break 
			else 
				L=1
				continue
			fi
		done
	[ "$L" = "1" ] && echo "Can't load a temperature module" && return 1
	fi
	return 0
}

EDIT:
changed loading order