Jump to content

FanControl, my take on a SpeedFan replacement

I am not sure if you are still looking for motherboard compatibility, but I have recently upgraded my system to a msi B450M pro-vdh max and a ryzen 3700x and application still works great.

 

I also had similar issues as people who previously commented, with cam not being able to show CPU temp with FanControl open. update has fixed it though :)

Link to comment
Share on other sites

Link to post
Share on other sites

I tried this a few months ago and it didn't work well. Not recognizing and/or controlling all fans.

 

Downloaded the new version and it works great. I'm happy with my bios level control for my use, but this gives so much control it's fun to play with and let's me easily test different fan setups. Thanks! It even controls the chipset fan just fine.

 

Gigabyte x570 Aorus Elite.

Link to comment
Share on other sites

Link to post
Share on other sites

7 hours ago, Demonic Donut said:

I tried this a few months ago and it didn't work well. Not recognizing and/or controlling all fans.

 

Downloaded the new version and it works great. I'm happy with my bios level control for my use, but this gives so much control it's fun to play with and let's me easily test different fan setups. Thanks! It even controls the chipset fan just fine.

 

Gigabyte x570 Aorus Elite.

The hardware library had a few update since I first started this project. Glad you came back to try again!

Link to comment
Share on other sites

Link to post
Share on other sites

Thanks for the nice tool. It would be cool If you could add the functionality to minimize the gui to the tray and I you could add a cli that allows the program to load a profile from a file. I use flat curves that don't change and I want to set a macro key to start the exe and pass my silent or my gaming profile and simply load the profile and exit again.

 

For easier updates and run at startup you could use something like inno setup the create a full installer for the files. It's quite simple to use and you can create a full installer within a few minutes. If you're using any kind of CI / CD pipeline it integrates quite nicely.

Link to comment
Share on other sites

Link to post
Share on other sites

2 hours ago, joejoe87577 said:

Thanks for the nice tool. It would be cool If you could add the functionality to minimize the gui to the tray and I you could add a cli that allows the program to load a profile from a file. I use flat curves that don't change and I want to set a macro key to start the exe and pass my silent or my gaming profile and simply load the profile and exit again.

 

For easier updates and run at startup you could use something like inno setup the create a full installer for the files. It's quite simple to use and you can create a full installer within a few minutes. If you're using any kind of CI / CD pipeline it integrates quite nicely.

you need to save a config first, then change it to another setting you want to save and save it as a different configuration, then changing between them is easy

 

if you select "start minimised" and "display tray icon temperature" it should have a little temp number on the bottom right of your task bar...

double click on it to open the program,

right click to open a little menu where you can select a configuration on the fly!

 

discovered this small feature today and I love it!! 

I just use it to screw around as I only have one normal programm but one that "takes off" because it sets all to 100% just to drop cpu temps by 1°

Link to comment
Share on other sites

Link to post
Share on other sites

Hi, I have an Asus CH7 x470 mobo and for some reason I'm unable to control one of my fans. It's getting picked up correctly under the speed section but no control is showing up for it while every other fan is working as expected, I tried plugging the fan into cha_fan3 and h_amp and it didn't make a difference either way.

 

Any help would be appreciated, thanks. 

Link to comment
Share on other sites

Link to post
Share on other sites

47 minutes ago, Ci7ru5 said:

Hi, I have an Asus CH7 x470 mobo and for some reason I'm unable to control one of my fans. It's getting picked up correctly under the speed section but no control is showing up for it while every other fan is working as expected, I tried plugging the fan into cha_fan3 and h_amp and it didn't make a difference either way.

 

Any help would be appreciated, thanks. 

Send me your log in DM.
(three dot menu, copy log )

Link to comment
Share on other sites

Link to post
Share on other sites

AMD bug update:

https://github.com/LibreHardwareMonitor/LibreHardwareMonitor/commit/7dd2af97bf059da52b6894eadc2700813a240710

Seems like they didn't release the Ring0 mutex, hence why every other program was getting stuck, as it is a system-wide lock. I will integrate this change but I would need someone with a Ryzen CPU to test it out for me before I push the update.

 

Simply swap this DLL and tell me if it still messes up with other programs and stuff.

 

@yfbcjw @Jouska and or others with a Ryzen 3000 series processor.

 

LibreHardwareMonitorLib.dll

Link to comment
Share on other sites

Link to post
Share on other sites

HWiNFO64 seems to work fine now. With previous update it was not starting at all. Ryzen 3600 with b450 here.

Link to comment
Share on other sites

Link to post
Share on other sites

37 minutes ago, Rem0o said:

AMD bug update:

https://github.com/LibreHardwareMonitor/LibreHardwareMonitor/commit/7dd2af97bf059da52b6894eadc2700813a240710

Seems like they didn't release the Ring0 mutex, hence why every other program was getting stuck, as it is a system-wide lock. I will integrate this change but I would need someone with a Ryzen CPU to test it out for me before I push the update.

 

Simply swap this DLL and tell me if it still messes up with other programs and stuff.

 

@yfbcjw @Jouska and or others with a Ryzen 3000 series processor.

 

LibreHardwareMonitorLib.dll 365.5 kB · 1 download

Seems to work with this .dll

Link to comment
Share on other sites

Link to post
Share on other sites

Works fine for me. Thanks again!

Link to comment
Share on other sites

Link to post
Share on other sites

Update 30

 

  • Updated LibrehardwareMonitor
  • Fixed the activation % which wasn't playing well with the step parameter
Link to comment
Share on other sites

Link to post
Share on other sites

I literally made this account to say thank you. I bought the NZXT Kraken G12 AiO bracket for my GPU and been looking for a good simple fan controller that lets me change the values from GPU temp. This was the easiest one to use and worked best out of the box. Feature-wise it's a ready package and UI isn't half bad either.

I'm running this with MSI X470 Gaming Plus Max if you want to append the list.
 

Especially loving the "Mix Graph" option that lets me do max value from custom GPU and CPU curves and set that to case fans for example. That's something not many probably would recognize needing but is a great addition.

But yeah, great job with this one. Thanks again!

Link to comment
Share on other sites

Link to post
Share on other sites

@Rem0o

I've created an Account just to answer you. First I would say thank you for your great work as a tool like this was missing.

I'm following this Thread since April and got every Version of your SW. I did already donate you for that. What I see now is that you put every day a new feature in it, I think slowly it losts the focus.

With Version 5 or 6 I think you did it. After that there were more and more fancy features for a handful People which are doing a science with it. That destroys slowly the clean and working concept.

Since the last updates I'm running in Trouble constantly. Things messed up. Is there any chance to get an older Version? Since you made all OTA I just don't have any history with a working Version. Can you make available any earlier Version before 28? In your latest Version Fan Activation stopped working complete. The Fans are now spinning the whole time on the minimum speed, because the Featiure is broken. I have to set the min. Speed to zero, to stop the fan. That is useless as it destroys the whole Curve I've created. I can't find any solution for that. Is it possible to bring an older version back and give the user a choice to stop the OTA Feature? I had everything I need, no need for updates. Also I think the SW comes more and more complicated and losts the Focus- an easy and simply working Fan Control. I know that this is just my opinion, but maybe there is a chance you make the simpler versions available for long time users that were happy with what it was. Again thank you  for all the Effort for this great piece of SW.

Link to comment
Share on other sites

Link to post
Share on other sites

5 hours ago, stekkee said:

@Rem0o

I've created an Account just to answer you. First I would say thank you for your great work as a tool like this was missing.

I'm following this Thread since April and got every Version of your SW. I did already donate you for that. What I see now is that you put every day a new feature in it, I think slowly it losts the focus.

With Version 5 or 6 I think you did it. After that there were more and more fancy features for a handful People which are doing a science with it. That destroys slowly the clean and working concept.

Since the last updates I'm running in Trouble constantly. Things messed up. Is there any chance to get an older Version? Since you made all OTA I just don't have any history with a working Version. Can you make available any earlier Version before 28? In your latest Version Fan Activation stopped working complete. The Fans are now spinning the whole time on the minimum speed, because the Featiure is broken. I have to set the min. Speed to zero, to stop the fan. That is useless as it destroys the whole Curve I've created. I can't find any solution for that. Is it possible to bring an older version back and give the user a choice to stop the OTA Feature? I had everything I need, no need for updates. Also I think the SW comes more and more complicated and losts the Focus- an easy and simply working Fan Control. I know that this is just my opinion, but maybe there is a chance you make the simpler versions available for long time users that were happy with what it was. Again thank you  for all the Effort for this great piece of SW.

Well first thanks for the feedback. I've tried to balance the number of features with ease of use with mostly "horizontal scaling" features, like new fan curves which you can simply ignore. However, features on the control cards, like the step parameter, are indeed adding complexity. That's just the very nature of software development, the longer a product lives and grow, the harder it is to keep the balance and focus. I'm doing the best I can, and I take feedback very seriously. But in the end, I make the decisions. I have opinions, bias, tastes, and those are reflected in the software, because I am my number one client 😄. I use the software daily on both my personal computer and my work computer.

The only bug AFAIK that I introduced recently (not linked with external libraries) was the activation % that you mentioned that I broke since I added the step parameter. That was a big mistake on my part, I didn't have the proper tests in place to cover it and it slipped through. I'm really sorry about that. I fixed it in version 30, and it made me realize the whole update routine of the controls wasn't very efficient, so I re-did it entirely with optimization in mind. There is some good that came out of that.

 

The lasts versions have been mostly refinements, bug fixes and library updates. I've hit a feature plateau that I'm mostly happy with. So as far as "breaking the working concept" and "constant troubles", except that mentioned bug, I don't really see your point. If you got other issues, please let me know! Just shoot me an email if I messed up something, I won't bite.

 

Now as for version history, it is a double-edged sword. I do have the software on version control, so I can compile whatever version that I want. The only problem is that I will have to support multiple versions. So when people contact me with an issue or whatever, I won't know what version they will be running and I will have to compile their specific version to diagnose their issues and so on. It is much easier to have a single version to update, but then I do expose all the user base to whatever bug I might introduce. I might add a .bak folder when I update that takes a backup of your previous version, or a "don't show updates" checkbox, or both. I don't really know yet if and how I want to address this.

Link to comment
Share on other sites

Link to post
Share on other sites

53 minutes ago, Rem0o said:

Well first thanks for the feedback. I've tried to balance the number of features with ease of use with mostly "horizontal scaling" features, like new fan curves which you can simply ignore. However, features on the control cards, like the step parameter, are indeed adding complexity. That's just the very nature of software development, the longer a product lives and grow, the harder it is to keep the balance and focus. I'm doing the best I can, and I take feedback very seriously. But in the end, I make the decisions. I have opinions, bias, tastes, and those are reflected in the software, because I am my number one client 😄. I use the software daily on both my personal computer and my work computer.

The only bug AFAIK that I introduced recently (not linked with external libraries) was the activation % that you mentioned that I broke since I added the step parameter. That was a big mistake on my part, I didn't have the proper tests in place to cover it and it slipped through. I'm really sorry about that. I fixed it in version 30, and it made me realize the whole update routine of the controls wasn't very efficient, so I re-did it entirely with optimization in mind. There is some good that came out of that.

 

The lasts versions have been mostly refinements, bug fixes and library updates. I've hit a feature plateau that I'm mostly happy with. So as far as "breaking the working concept" and "constant troubles", except that mentioned bug, I don't really see your point. If you got other issues, please let me know! Just shoot me an email if I messed up something, I won't bite.

 

Now as for version history, it is a double-edged sword. I do have the software on version control, so I can compile whatever version that I want. The only problem is that I will have to support multiple versions. So when people contact me with an issue or whatever, I won't know what version they will be running and I will have to compile their specific version to diagnose their issues and so on. It is much easier to have a single version to update, but then I do expose all the user base to whatever bug I might introduce. I might add a .bak folder when I update that takes a backup of your previous version, or a "don't show updates" checkbox, or both. I don't really know yet if and how I want to address this.

Sorry, I think you did misunderstood a bit. I love the SW and continued development is cool and needed. What I've asked for is just a history or some stable Versions in between, which can also be downloaded, not only the last Version. Because when OTA contains bugs there is no Way back. The many requests for new features are nice to have but will bloat and bloat it. Only you choose what you wanna do and which request you will accept. My question is more to have an option to hold an older, stable, simpler Version. I think that could be a good Idea for some People. With Version 30 I have the bug that the "Fan Activation" did not work anymore.  The Fans always spin, It ignores the Activation and minimum speed. So this is why I ask you for any Version before 29 when the LibreMonitor Bug kicked in, because 30 is also making trouble. Maybe you like the Idea to archive some milestone Versions. Thanks for all.

Link to comment
Share on other sites

Link to post
Share on other sites

@stekkee

 

I'm looking into switching my current hosting solution to Github, where version management and history would be a breeze. The way the updater is setup, it should be seemless and present itself as an OTA update like every other, except the host will be different from that point on.


Stay tuned.

Link to comment
Share on other sites

Link to post
Share on other sites

Today I discovered FanControl and downloaded the latest version (30).  Unfortunately, its functionality doesn't yet handle my desired use case: control an external fan that's cabled to a motherboard fan header, in order to regulate the temperature of an external sata hard drive that's connected via a SATA-to-USB3 adapter.  S.M.A.R.T.-capable software (such as HWinFO and CrystalDiskInfo) can read the external hard drive's temperature, but unfortunately FanControl can't.  I can think of two solutions: (1) enhance FanControl so it will detect the external drive and make its S.M.A.R.T. temperature sensor available within the gui for controlling a fan header, or (2) enhance FanControl to accept command-line parameters to control fan headers.  Given #2, I would construct a .bat file that periodically reads the external drive's temperature (by using the smartctl.exe utility that comes with Smartmontools) and runs FanControl with the appropriate command-line parameters to increase or decrease the speed percentage of the corresponding fan header when the temperature is above or below the desired temperature range.  Thanks in advance for considering my request!

(Compatibility Feedback: My mobo is an MSI X470 Gaming Plus.  FanControl v30 properly detected and displayed all 6 motherboard fan headers and all 3 fans: two case fans and one cpu fan.  In the temperature sensors menu a lot of temperatures and cryptic sensor IDs were listed, but none of the listed temperatures matched the temperature that CrystalDiskInfo showed for the external drive.  I didn't test FanControl's ability to control fan speeds, and I didn't register it with Windows Task Scheduler.)

Edited by Adrenalina
Added more compatibility feedback regarding temperature sensors.
Link to comment
Share on other sites

Link to post
Share on other sites

Hi Rem0o,

 

First, thank you so much for this tool!  I have been using your fan curve tool for a couple of months now, but I just noticed I do not have of my fans show up under the "Controls" section.  

 

I just upgraded to version 30.  My mobo is an Asus Z390-i, and both my CPU and GPU fans are connected fan headers on the mobo.  Can you assist?

 

 

Edited by whoawowwhoa
Link to comment
Share on other sites

Link to post
Share on other sites

19 minutes ago, Adrenalina said:

Today I discovered FanControl and downloaded the latest version (30).  Unfortunately, its functionality doesn't yet handle my desired use case: control an external fan that's cabled to a motherboard fan header, in order to regulate the temperature of an external sata hard drive that's connected via a SATA-to-USB3 adapter.  S.M.A.R.T.-capable software (such as HWinFO and CrystalDiskInfo) can read the external hard drive's temperature, but unfortunately FanControl can't.  I can think of two solutions: (1) enhance FanControl so it will detect the external drive and make its S.M.A.R.T. temperature sensor available within the gui for controlling a fan header, or (2) enhance FanControl to accept command-line parameters to control fan headers.  Given #2, I would construct a .bat file that periodically reads the external drive's temperature (by using the smartctl.exe utility that comes with Smartmontools) and runs FanControl with the appropriate command-line parameters to increase or decrease the speed percentage of the corresponding fan header when the temperature is above or below the desired temperature range.  Thanks in advance for considering my request!

(Compatibility Feedback: My mobo is an MSI X470 Gaming Plus.  FanControl v30 properly detected and displayed all 6 motherboard fan headers and all 3 fans: two case fans and one cpu fan.  In the temperature sensors menu a lot of temperatures and cryptic sensor IDs were listed, but none of the listed temperatures matched the temperature that CrystalDiskInfo showed for the external drive.  I didn't test FanControl's ability to control fan speeds, and I didn't register it with Windows Task Scheduler.)

At that point, I would simply use https://github.com/LibreHardwareMonitor/LibreHardwareMonitor and create my own command-line utility on top to do exactly what you want. The library is really straight-forward and you should be able to prototype what you want pretty quickly. 

Link to comment
Share on other sites

Link to post
Share on other sites

14 minutes ago, whoawowwhoa said:

Hi Rem0o,

 

First, thank you so much for this tool!  I have been using your fan curve tool for a couple of months now, but I just noticed I do not have of my fans show up under the "Controls" section.  

 

I just upgraded to version 30.  My mobo is an Asus Z390-i, and both my CPU and GPU fans are connected fan headers on the mobo.  Can you assist?

 

 

Send me logs.txt and the "copy log to clipboard" in DM.

Link to comment
Share on other sites

Link to post
Share on other sites

18 minutes ago, Rem0o said:

Send me logs.txt and the "copy log to clipboard" in DM.

DM sent.

Link to comment
Share on other sites

Link to post
Share on other sites

5 hours ago, Rem0o said:

At that point, I would simply use https://github.com/LibreHardwareMonitor/LibreHardwareMonitor and create my own command-line utility on top to do exactly what you want. The library is really straight-forward and you should be able to prototype what you want pretty quickly. 

 

I spent about an hour looking at that link and following google links to learn more about LibreHardwareMonitor.  I don't believe I could use it quickly.  Multiple learning curves would be required.

 

I presume your response means you're not interested in enhancing FanControl in either of the ways I proposed

 

Here's a VERY simple way you could enhance FanControl: allow it to treat the content of a text file as if it were the output of a temperature sensor.  Given that feature, it would be trivial for me to design a .bat file to periodically poll the S.M.A.R.T. temperature of the external drive and write the temperature to the file.

 

If you're not going to enhance FanControl, the quickest scheme to crudely approximate the effect I want may be with FanControl (as is) using some internal temperature (or a mix of internal temperatures) as a proxy for the temperature of the external drive.  If the external drive's temperature increases (or decreases) due to an increase (or decrease) of the ambient room temperature, internal temperature(s) will also increase (or decrease), all else being equal.

Edited by Adrenalina
Added idea about enhancing FanControl to treat a text file as if it were a temperature sensor.
Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×