[OpenSource] Fan Control Software for Windows XP and Vista

Discussion in 'Modding and Customization' started by sdav, Sep 12, 2008.

  1. sdav

    sdav

    Joined:
    Sep 12, 2008
    Messages:
    8
    Likes Received:
    0
    This is an alternative version program with:

    Version 0.4 - Nov 18, 2008
    - Added resume support when resuming Windows from standby or hibernation
    - Added ACPI patch and unpatch support (when reading temperature from the EC embedded controller, Windows logs an error to the system event viewer; simply execute the patch when requested by the program to avoid this)
    - Added a two-degrees interval when starting/stopping the fan so actually it starts/stops less times

    Version 0.3 - Oct 07, 2008
    - Fixed the support for Slow Fan Mode (this mode doesn't exists, the Aspire One automatically set the fan to 1, 2, or 3 when needed)
    - Enhanced the tray icon management, now it displays the temperature

    Version 0.2 - Oct 01, 2008
    - Support for BIOS 3114 and 3304
    - Support for slow fan mode (automatic)
    - Checks for Acer Aspire One PC
    - Support for the Fahrenheit scale

    Version 0.1 - Sep 2008
    - Autostart with Windows
    - Tray area control
    - Temperature monitor
    - Fan control (deactivable)
    - Shows the fan state (active, inactive)
    - CPU Temperature graph
    - Docked window

    Link: http://www.hexagora.com/en_dw_aspireone.asp

    [​IMG]

    Alpha version ;-)

    Bye, Davide
     
    sdav, Sep 12, 2008
    #1
  2. sdav

    goofball

    Joined:
    Aug 23, 2008
    Messages:
    710
    Likes Received:
    0
    thanks for this, I will try it out for sure. Now all we need are more modders out there for overclocking tools and acer to release better bios's!

    Is there a better way to have it minimize to tray when I want? or is it something that's always up?
     
    goofball, Sep 12, 2008
    #2
  3. sdav

    brachiopod

    Joined:
    Aug 25, 2008
    Messages:
    49
    Likes Received:
    0
    Great program, a couple of comments.

    1) I noted some obviously wrong temps being displayed for a moment. I noted 3C after the fan came on, and 126C just before it came on.

    2) I'd like to see some kind of hysteresis built in so that the fan does not cycle on and off rapidly. Maybe "start at this temp and run until cooled to this temp" or "always run for at least so many seconds".

    3) is there any way to close or dock the window?

    4) I'm wondering if the fan speed is actually controlled by the hardware. Without any software running it starts slow and gets faster when needed. With software like this, by the time it turns on it is usually on high.
     
    brachiopod, Sep 13, 2008
    #3
  4. sdav

    casainho

    Joined:
    Jul 21, 2008
    Messages:
    88
    Likes Received:
    0
    Congratulations on sharing your work!!

    I had being working on early stages of this hack for GNU/Linux and we did share the information, but that other guy on that other no Open Osurce program for Windows, didn't share the code nor even at least put a link for the technical information on how to do the hack :-(

    Hope you guys on Windows can have a good solution also, and let's share ALL the information so this hack can go ahead!

    Thank you.
     
    casainho, Sep 13, 2008
    #4
  5. sdav

    sdav

    Joined:
    Sep 12, 2008
    Messages:
    8
    Likes Received:
    0
    In order to put the program into the tray area simply click on the Tray Icon with the left-mouse button ;-)
     
    sdav, Sep 14, 2008
    #5
  6. sdav

    brachiopod

    Joined:
    Aug 25, 2008
    Messages:
    49
    Likes Received:
    0

    Ah, duh. :D

    I'm using this, I really like being able to switch between the BIOS controlled routine and this one with the slider switch. I still do see some obviously erroneous temps, like a sudden jump from 53C to 144C for one reading, that will cause the fan to come on for 5 sec and then will be OK. It seems to occur when I'm using the keyboard, not sure yet. I have the default XP installation.
     
    brachiopod, Sep 14, 2008
    #6
  7. sdav

    elBradford

    Joined:
    Aug 28, 2008
    Messages:
    31
    Likes Received:
    0
    Location:
    Utah
    Great! Keep up the good work, I love the opensource. That way we don't have to wait for one dude to make it better like the other control.
     
    elBradford, Sep 14, 2008
    #7
  8. sdav

    ccwh

    Joined:
    Aug 29, 2008
    Messages:
    55
    Likes Received:
    0
    Location:
    France
    good work !
     
    ccwh, Sep 16, 2008
    #8
  9. sdav

    hmmwv

    Joined:
    Aug 15, 2008
    Messages:
    78
    Likes Received:
    0
    Location:
    Seattle, WA
    Is this version compatible with both XP and Vista? Or they are seperate downloads.
     
    hmmwv, Sep 17, 2008
    #9
  10. sdav

    mercado79

    Joined:
    Aug 14, 2008
    Messages:
    127
    Likes Received:
    0
    the other non-open fan control software has problems with the latest bios version 3440. has anyone tested this open version using the new bios?
     
    mercado79, Sep 18, 2008
    #10
  11. sdav

    noda

    Joined:
    Aug 1, 2008
    Messages:
    35
    Likes Received:
    0
    Yeah! Thanks a lot for putting trough an open-source software for this, that's the only way to go for me ;) The other fan control software really bothered to be closed, as I wanted to add my own modifications.

    Thanks again to share it with the community!
     
    noda, Sep 18, 2008
    #11
  12. sdav

    mercado79

    Joined:
    Aug 14, 2008
    Messages:
    127
    Likes Received:
    0
    well, from what i can tell, this software doesn't work after updating the bios to version v3440. it's kind of funny actually, the display says fan is off when it is running at full blast and fan is on when it is semi quiet. seems to have the opposite effect possibly. either way, the fan does not shut off.
     
    mercado79, Sep 18, 2008
    #12
  13. sdav

    Chriz88

    Joined:
    Sep 5, 2008
    Messages:
    9
    Likes Received:
    0
    so it's not working, is it? oO
     
    Chriz88, Sep 23, 2008
    #13
  14. sdav

    hinvin66

    Joined:
    Sep 28, 2008
    Messages:
    2
    Likes Received:
    0
    Hi - I've had the same problem with a brand new AAO/1GB/160GB/XP machine that I got today.

    It's got the bios# 3301

    The utility does not work - when it's supposed to be off, the fan is actually ON. Also tried with the other closed source utility - had the exact same issue with the 3301 bios.

    Any ideas on a fix for this?
     
    hinvin66, Sep 28, 2008
    #14
  15. sdav

    ccwh

    Joined:
    Aug 29, 2008
    Messages:
    55
    Likes Received:
    0
    Location:
    France
    ccwh, Sep 29, 2008
    #15
  16. sdav

    askaaron

    Joined:
    Sep 29, 2008
    Messages:
    11
    Likes Received:
    0
    Thanks for your efforts!

    Well - this software also has the well known "acpiec warning" problem - Windows will report warnings in the system event log, because it just reads the EC registers to get the temperature (as literally all those fan control tools for the AAOne). And it is - aehm - Visual Basic, which means, you may need runtimes, have higher memory consumption etc. :|

    According the new values for the fan control, you may want to have a look here: http://www.aspireoneuser.com/forum/viewtopic.php?f=44&t=1888&st=0&sk=t&sd=a&start=210#p29126

    I also work on an open source solution - but in C++ and by using the CPU MSR to get the temperature - so there will not be any warning messages in the Windows event log (a command line tool similar to acer_ec.pl to play around with the EC registers is already working - i will publish this soon).

    Stay tuned...
     
    askaaron, Sep 29, 2008
    #16
  17. sdav

    sdav

    Joined:
    Sep 12, 2008
    Messages:
    8
    Likes Received:
    0
    I found the solution for the Latest Bios version problem;
    not tried but it will probably work ;-)

    In a few days the fix ;-)


    @askaaron

    Please let me know, if you want, the method used to read CPU temperature from the CPU MSR ;-)
     
    sdav, Sep 29, 2008
    #17
  18. sdav

    askaaron

    Joined:
    Sep 29, 2008
    Messages:
    11
    Likes Received:
    0
    1) Read the MSR, which tells the temperature, as specified in the documentation of Intel

    2) Subtract this value from the specified maximum junction temperature (which is 90 for Atom N270)

    Well - unfortunately, reading the CPU MSRs means, you have to execute some privileged CPU commands (in fact some assembler code or the __readmsr() instrinsic in Visual C++), which has to be done in kernel mode, as this is not allowed for applications, which always run in user mode. I think, i will need to extend the existing kernel driver, which i already use, to access the I/O ports to do this. But i have no idea, how this could be used in languages other than C/C++.
     
    askaaron, Sep 29, 2008
    #18
  19. sdav

    noda

    Joined:
    Aug 1, 2008
    Messages:
    35
    Likes Received:
    0
    Still, reading the MSR for the CPU temp won't resolve the ACPI EC problem, as we also need to read the 0x55 register to know the fan status and set it accordingly. Currently in my tool (v0.1 beta) I'm not using this as I tried another method, and this causes problems like when waking up from sleep and some other cases.

    As for the fan values correspponding to the bios versions, for those who don't want to look at my code:

    -bios v0.3114:
    0x00-> auto mode
    0x20-> slow mode
    0x1F-> stopped

    -bios v0.3304:
    0x00-> auto mode
    0x10-> slow mode
    0x20-> stopped

    The slow mode is really interesting to have (as in my tool) as it pretty much cool the A1 the same as in auto mode, but with nearly no noise.
     
    noda, Sep 30, 2008
    #19
  20. sdav

    ccwh

    Joined:
    Aug 29, 2008
    Messages:
    55
    Likes Received:
    0
    Location:
    France
    That's right. At 100% CPU the temperature of the processor in the slow mode is only a little big higher (+2 +3°C) than auto mode but the noise of A1 is really different. :) :!:
     
    ccwh, Sep 30, 2008
    #20
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.