Page 10 of 39
Posted: Sun Dec 11, 2005 1:31 pm
by geobel
Shimodax wrote:geobel wrote:No, we are talking about Windows System log. Can be seen via Event viewer (Control Panel/ Administrative tools/Event viewer)
Yep, got that, but stuff isn't written to the system log so easily (not in matter of a few lines of code anyway), so that is something I don't want to do at the moment.
Markus
Well, just to ensure that we understand each other. The problem is that a lot of stuff is already being written to windows system log whenever fancontrol utility is running. Specifically the following warning message is written every 5s:
"The embedded controller (EC) hardware returned data when none was requested. This may indicate that the BIOS is incorectly trying to access the EC without syncronizing with the OS. The data is being ignored."
I have seen this message also when some other hardware monitor/control utilities are operating (e.g. hmonitor)
George
Posted: Sun Dec 11, 2005 9:47 pm
by lywsp
Shimodax wrote:geobel wrote:No, we are talking about Windows System log. Can be seen via Event viewer (Control Panel/ Administrative tools/Event viewer)
Yep, got that, but stuff isn't written to the system log so easily (not in matter of a few lines of code anyway), so that is something I don't want to do at the moment.
Markus
First if you clear the system log file, and then refresh it again,you will see
the log file is filled with lots of "The embedded controller (EC) hardware returned data when none was requested. This may indicate that the BIOS is incorectly trying to access the EC without syncronizing with the OS. The data is being ignored."
You maybe suprised with the velocity.
Posted: Mon Dec 12, 2005 6:25 am
by StarTraveller
I just took revision 0.18b for a spin and seems to run like it should on my ThinkPad T43p (2668-H7U).
The passive test went ok. It showed a bunch of temperature readings, but they were labeled differently than those in the readme-file.
Temperatures wrote:CPU 62°C (0x78)
APS 46°C (0x79)
PCM 36°C (0x7a)
GPU 59°C (0x7b)
BAT 35°C (0x7c)
BAT 28°C (0x7e)
BUS 48°C (0xc0)
PCI 50°C (0xc1)
PWR 47°C (0xc2)
The status displayed a few n/a values, but I hoped for the best and proceeded to the active test.
Status wrote:Fan: 0x80 / Highest: 62°C (62 46 36 59 35 n/a 28 n/a 48 50 46 n/a)
I cycled through the 7 possible on-states and took note of the fan speed. My readings support that there may indeed only be three actual fan levels. I noticed a minor difference between levels 1 and 2. Levels 3, 4 and 5 were very similar with levels 3 and 4 being indistinguishable. Levels 6 and 6 were also indistinguishable.
Fan Speed wrote:1: 3000-3080 RPM
2: 3200-3220 RPM
3: 4000-4020 RPM
4: 4000-4020 RPM
5: 3880-3950 RPM
6: 4640-4680 RPM
7: 4640-4680 RPM
The fan was turned off when I entered 0 and control was given back to the BIOS on exit just as advertised.
I haven't tried the Smart mode yet, but I'll post when I get around to it.

Posted: Tue Dec 13, 2005 10:56 am
by Saesh
Hi there,
works for me now.
But it's not easy to read ten sites of info for my question.
Switching fan on/off is one thing... what's with frequency scaling like in "noteboook hardware control".
I like to scale down and up on demand so that my system don't heat so much.
Any ideas?
Posted: Tue Dec 13, 2005 11:39 am
by christopher_wolf
The CPU, and the GPU for that matter, already scale down during battery usage and depending on what profile you have set in the power manager. With NHC, you can also undervolt; while this does reduce power consumption, and hence heat production, it seems to only have a tenuous indirect ability to control the fan speed.

Posted: Tue Dec 13, 2005 9:12 pm
by K. Eng
Hmm new question - does this program affect the use of the emergency thermal diode on the Pentium M?
The PM is supposed to automatically shut down if it begins to overheat (at around 90C), but I don't know if this is independent of the BIOS or not.
Posted: Tue Dec 13, 2005 11:27 pm
by christopher_wolf
If I remember correctly, I think that is indepedent of the BIOS. Since it is Intel putting it into their own chips and it is for the prevention of sudden overheating. I saw some videos on tom's hardware that showed them just taking the heat sink of some Pentiums and they clocked themselves down just fine. Trouble with that is, you can't really test it without the BIOS unless you come up with a really special rig for it.
Posted: Wed Dec 14, 2005 7:21 am
by geoffrey
Any update on the problem with the Windows system log filling up with error entries: "\Device\ACPIEC: The embedded controller (EC) hardware returned data when none was requested. This may indicate that the BIOS is incorectly trying to access the EC without syncronizing with the OS. The data is being ignored." ? As others have stated in previous posts, these errors are remarkably fast -- I make it approximately six events PER SECOND whenever fancontrol.exe is running. I am also wondering whether this problem is preventing the hard disk from ever spinning down -- I have not been able to verify this.
The problem might be with fancontrol.exe itself, or it might be with the WinIo.dll , i.e. the method it uses for accessing the embedded controller. Is it possible to get these programmes to "syncronize with the operating system", as the error description suggests? This might also solve the problem with running Notebook Hardware Control at the same time as fancontrol.
Posted: Wed Dec 14, 2005 4:12 pm
by Aristotle11
I also get the problem with the Windows system log filling up with error entries: "ACPIEC." -Aris
Posted: Wed Dec 14, 2005 6:21 pm
by StarTraveller
I've been using the program in manual mode so far and I only get some of those ACPIEC entries in the system log whenever I switch the fan level (maybe also right when the program is loaded - I haven't checked that).
My guess is that Shimodax's program accesses the EC in some non-standard way, e.g. it doesn't synchronize with the EC (or whatever driver that provides access) first to avoid conflicts. The system then sees the response from the EC and assumes that it's the BIOS performing the non-standard access (as is hinted in the error).
Posted: Wed Dec 14, 2005 7:30 pm
by christopher_wolf
That would indeed be a logical conclusion; one would have to monitor all the processes trying to access the BIOS. Perhaps it is done through one message handler. I wonder if it is possible to monitor program access to the BIOS readily; should be like a normal process, right?
Posted: Fri Dec 16, 2005 9:37 am
by CoolDragon
One silly question:
Does this utility write anything to the registry?
Posted: Fri Dec 16, 2005 7:04 pm
by kw
No, it doesn't. IMHO all settings are written to the ini-file.
Posted: Fri Dec 16, 2005 9:11 pm
by firefly
One thing I notice: whenever my screen saver kicks in it'll give me "fancontrol has cause an error and has to be shut down" message. I'm running the default IBM screen saver. Anyone notice this?
And...can someone tell me how to run this as a service?
Posted: Sat Dec 17, 2005 6:23 am
by bebzif
I installed release 0.18 two days ago -- a lot more stable than 0.17.
Thanks so much for that wonderful piece of code !
However there is still the issue of system log being filled up by ACPI messages. I run on NHC at the same time but I disabled "reading temp" (for both CPU and HDD) in NHC. I then only have a few entries in the system log per day, not a couple per seconds as somebody stated before in that topic.
Posted: Sun Dec 18, 2005 10:27 pm
by erasmus
Wow, there must be a God or Santa !!
Thanks so much for this. Just saw the thread today, so I haven't tried any earlier versions, but 0.18 works perfectly on my T40 2373.
And I just tried it with my old 4200rpm Fujitsu HD - the only noise i hear now; is my hair growing!
Cheers,
Posted: Mon Dec 19, 2005 1:39 am
by wiesl
Great utility, works fine.
One problem here:
When Notebook Hardware Control (1.9 BETA 03) is started I get the following error message:
[19.12.2005 07:34:14] Warning: Can't read Status (possible conflict with other software)
It looks like that both are not compatible.
Any ideas to solve this problem?
Thank you for the answer
Wiesl
Posted: Mon Dec 19, 2005 9:58 am
by emaijala
wiesl wrote:
Great utility, works fine.
One problem here:
When Notebook Hardware Control (1.9 BETA 03) is started I get the following error message:
[19.12.2005 07:34:14] Warning: Can't read Status (possible conflict with other software)
It looks like that both are not compatible.
Any ideas to solve this problem?
Thank you for the answer
Wiesl
I've been tinkering with the code a bit as I've had the same problem. I believe I've found a way to make it reliable. Instead of trying to read all bytes and then compare the results I changed the reading to read every single byte twice and repeat if they don't match. This way the probability of encountering problems goes down quite a bit. I'll post the differences when I'm done testing a bit more.
Posted: Mon Dec 19, 2005 9:05 pm
by StarTraveller
emaijala wrote:wiesl wrote:
Great utility, works fine.
One problem here:
When Notebook Hardware Control (1.9 BETA 03) is started I get the following error message:
[19.12.2005 07:34:14] Warning: Can't read Status (possible conflict with other software)
It looks like that both are not compatible.
Any ideas to solve this problem?
Thank you for the answer
Wiesl
I've been tinkering with the code a bit as I've had the same problem. I believe I've found a way to make it reliable. Instead of trying to read all bytes and then compare the results I changed the reading to read every single byte twice and repeat if they don't match. This way the probability of encountering problems goes down quite a bit. I'll post the differences when I'm done testing a bit more.
I think that unless you find and set the proper semaphore then you'll still be running into synchronization problems...
Also, unless the proper API is used then we'll still be seeing those ACPIEC entries in the system log.
Posted: Tue Dec 20, 2005 1:56 am
by emaijala
StarTraveller wrote:emaijala wrote:
I've been tinkering with the code a bit as I've had the same problem. I believe I've found a way to make it reliable. Instead of trying to read all bytes and then compare the results I changed the reading to read every single byte twice and repeat if they don't match. This way the probability of encountering problems goes down quite a bit. I'll post the differences when I'm done testing a bit more.
I think that unless you find and set the proper semaphore then you'll still be running into synchronization problems...
Also, unless the proper API is used then we'll still be seeing those ACPIEC entries in the system log.
True, but the double read of every byte verifies the correct data is read. At least reading the same incorrect data twice in a row seems to not happen.
--Ere
Posted: Fri Dec 23, 2005 5:13 am
by sugo
The program is running perfectly on a T42 except one issue: the following warning is being logged to Windows event viewer several times a minute and prevents HDD from spinning down:
The embedded controller (EC) hardware returned data when none was requested. This may indicate that the BIOS is incorectly trying to access the EC without syncronizing with the OS. The data is being ignored.
Is that related to conflicts on reading EC mentioned in the 2nd post of this thread?
Posted: Fri Dec 23, 2005 6:50 am
by Shimodax
sugo wrote:The program is running perfectly on a T42 except one issue: the following warning is being logged to Windows event viewer several times a minute and prevents HDD from spinning down:
The embedded controller (EC) hardware returned data when none was requested. This may indicate that the BIOS is incorectly trying to access the EC without syncronizing with the OS. The data is being ignored.
This is one effect of the possible conflicts. Unfortunately there's nothing that can be done against these errors, at least nothing that I know. I even tried a request with Microsoft's premium support service, which returned nil.
So I guess you'll have to consider it the price for turning the fan off ...
Markus
Posted: Fri Dec 23, 2005 7:19 am
by Thinkerer
Maybe it's possible to query the embedded controller through the Windows ACPI system, instead of via direct port access? That's what Linux's ibm_acpi driver does.
Posted: Fri Dec 23, 2005 7:28 am
by StarTraveller
That certainly sounds like a much more robust way to do it.
I think that's also what the NHC (Notebook Hardware Control) developer is trying to do - just on a more general level because he wants to go for fan control in notebooks in general.
Posted: Fri Dec 23, 2005 8:17 am
by Shimodax
Thinkerer wrote:Maybe it's possible to query the embedded controller through the Windows ACPI system, instead of via direct port access? That's what Linux's ibm_acpi driver does.
The problem is, that IBM_ACPI eventually does a port io to do the same. The only difference is that unter Linux you can call ibm_acpi to do it in a synchronized way while under Windows I know no such way (and obviously Microsoft delveoper support doesn't know one either).
Markus
Posted: Fri Dec 23, 2005 9:40 am
by sebmue
wiesl wrote:One problem here:
When Notebook Hardware Control (1.9 BETA 03) is started I get the following error message:
[19.12.2005 07:34:14] Warning: Can't read Status (possible conflict with other software)
Turn off ACPI temp readings in NHC. Then it gives the read-status-error just when the NHC window is open. With that workaround I just had one single status-error in 9 hours of constant use...
Posted: Fri Dec 23, 2005 11:37 am
by Thinkerer
Shimodax wrote:The problem is, that IBM_ACPI eventually does a port io to do the same. The only difference is that unter Linux you can call ibm_acpi to do it in a synchronized way while under Windows I know no such way (and obviously Microsoft delveoper support doesn't know one either).
The ibm_acpi Linux driver doesn't do direct port access - it accesses the embedded controller through Linux's generic ACPI system, using acpi_evaluate_object(). This way the ACPI system is the only thing accessing the hardware, and can synchronize things. There may be an analogous way to tell the Windows ACPI system to fetch values from the embedded controller space.
T22 not supported?
Posted: Mon Dec 26, 2005 7:47 am
by jangyurik
Hi
I have tried utility on my T22 2647 3EG ( PIII 900 ) but it seems like this motherboard is not supported. I am getting >Cannot read status< Possible conflict with another software. I do not use any software mentioned in forum, which could couse a conflict - even Speedstep is disabled. Have latest version of Bios. I have been browsing web and it looks like this is only utility to use, when you want to change fan settings. Reason, why I want to, is not noisy fan, but in fact, my processor is really hot and fan is not performing very well. I gave it a good clean few weeks ago, and realised how weak fan has been used in T22s. Worst,realised, this is most powerfull fan,I can fit in T22 - 26P9317.
Markus, any chance I can run this utility?
Posted: Mon Dec 26, 2005 7:57 am
by Shimodax
Jan,
I'm not sure about these old models, it's possible that they were using a differen approach.
However, I owned a T23 for many years (and before that a T21) and must say that the heat did not bother me. I'm not sure what your exact intention is for using the program on a T22, but I don't think there's something that needs to be "fixed" there ... electronic parts can stand quite some temperature and I guess IBM back then just did let the stuff run a bit hotter than nowadays.
Markus
T22 heat
Posted: Mon Dec 26, 2005 5:39 pm
by jangyurik
Markus
My CPU goes up to 90 C and I just wanted to setup fan to full speed before it reaches this much. I have read post of T23 owner, who can run this utility OK. Yes, some T2x laptops are really 'hot' and a lot of people are complaning about this. Is there any way to set fan to full speed on my T22 ? Thanks