Jump to content

FanControl, my take on a SpeedFan replacement

I found what the bug is. OHM creates Ids for the different components. The problem is, the Nvidia GPU and AMD GPU share the same id (gpu/0, gpu/1 etc...). So if you have both, they will collide, as it is assumed each id is unique.

 

Without looking too deep into it, any fix to support this case would break compatibility with existing configs, which is would be a big issue, as identifiers are used in the config files.

Link to comment
Share on other sites

Link to post
Share on other sites

Let me just say THANK YOU. 

 

After i finnagled with SpeedFan again after 5 years, only to find out it does not work, this is damn great. I top my hat to you sir. Now i can have 2 radiators tied to the cpu, and 1 to the GPU temps. Great great great. Thanks again. 

 

I think i found a weird little bug, but i managed to fix it, so i don't even consider it a problem. Different Control cards controlled what fans were tied to the one on the left. Anyway, removing fans and re-assigning them fixed it. 

 

Compatible with Ryzen5 3600 on AsRock b450 Steel Legend board, latest bios.

Codename: HighFlyer, specs:  CPU: i5 2500k cooled by a H70ish(2 rad)   Mobo: MSI MPower Z77   GPUs: Gigabyte GTX 660 OC 1150 MHZ core, 3150 memory both   RAM: Corsair Vengeance 16G @1600mhz   SSD: ADATA Premier Pro sx900 / HDD Seagate Barracuda 1TB/Samsung 1TB   Power supply: Corsair RM650 80+ Gold   Case Corsair Carbide 500R   5.4 ghz achieved on the good old 2500k, may it rest in peace. Current daily OC is 4.8 @1.41 v

 

Link to comment
Share on other sites

Link to post
Share on other sites

8 minutes ago, Morfy said:

I think i found a weird little bug, but i managed to fix it, so i don't even consider it a problem. Different Control cards controlled what fans were tied to the one on the left. Anyway, removing fans and re-assigning them fixed it. 

Did you use the auto-match feature?

Also, thanks for the comment, glad you like it!

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, Rem0o said:

Did you use the auto-match feature?

Also, thanks for the comment, glad you like it!

First i matched them manually, by the rpm showed below. after applying a curve to Control, it seems to have "moved" control to the next card for current curve *weird* Then i tried auto matching, i didn't do much, then i matched them manually again, point at which it worked. Btw, any future plans to introduce a button to start with windows? I know how to do it, but maybe some don't

Codename: HighFlyer, specs:  CPU: i5 2500k cooled by a H70ish(2 rad)   Mobo: MSI MPower Z77   GPUs: Gigabyte GTX 660 OC 1150 MHZ core, 3150 memory both   RAM: Corsair Vengeance 16G @1600mhz   SSD: ADATA Premier Pro sx900 / HDD Seagate Barracuda 1TB/Samsung 1TB   Power supply: Corsair RM650 80+ Gold   Case Corsair Carbide 500R   5.4 ghz achieved on the good old 2500k, may it rest in peace. Current daily OC is 4.8 @1.41 v

 

Link to comment
Share on other sites

Link to post
Share on other sites

6 minutes ago, Morfy said:

 Btw, any future plans to introduce a button to start with windows? I know how to do it, but maybe some don't

As of today, I can proudly say that FanControl in itself is windows-junk free. Adding this feature would require a registry key, breaking my poor developer heart. This is why I prefered as of today to provide a script to do it externaly. Might have to give in to the devil at some point....

Link to comment
Share on other sites

Link to post
Share on other sites

A script may be just fine, as long as it creates a shortcut and places it into the startup folder :D

 

Nevermind, i saw now the script is there lol

Codename: HighFlyer, specs:  CPU: i5 2500k cooled by a H70ish(2 rad)   Mobo: MSI MPower Z77   GPUs: Gigabyte GTX 660 OC 1150 MHZ core, 3150 memory both   RAM: Corsair Vengeance 16G @1600mhz   SSD: ADATA Premier Pro sx900 / HDD Seagate Barracuda 1TB/Samsung 1TB   Power supply: Corsair RM650 80+ Gold   Case Corsair Carbide 500R   5.4 ghz achieved on the good old 2500k, may it rest in peace. Current daily OC is 4.8 @1.41 v

 

Link to comment
Share on other sites

Link to post
Share on other sites

3 hours ago, Rem0o said:

As of today, I can proudly say that FanControl in itself is windows-junk free. Adding this feature would require a registry key, breaking my poor developer heart. This is why I prefered as of today to provide a script to do it externaly. Might have to give in to the devil at some point....

Give in to the devil!!! :) I have it auto start with your provided script.. but man... that registry key is calling. I've converted a couple friends to this software, they like it a lot!

Link to comment
Share on other sites

Link to post
Share on other sites

On 5/22/2020 at 4:35 PM, Rem0o said:

Why do you have 2 different types of GPU 😅. The program expects 1 or the other, or many of the same type.

Hehe, yeah, so I need the NVidia card for my Linux host doing scientific computing (i.e. Cuda/deep learning) while simultaneously using the AMD for running a MacOS VM. And sure, I also like to fire up Windows for some gaming in between 😉

 

On 5/22/2020 at 5:50 PM, Rem0o said:

I found what the bug is. OHM creates Ids for the different components. The problem is, the Nvidia GPU and AMD GPU share the same id (gpu/0, gpu/1 etc...). So if you have both, they will collide, as it is assumed each id is unique.

 

Without looking too deep into it, any fix to support this case would break compatibility with existing configs, which is would be a big issue, as identifiers are used in the config files.

 

I see, no worries. Thank you for your quick response and assessment. I will have a look at other tools and may come back one day 😉

 

Best,

lustiz

Link to comment
Share on other sites

Link to post
Share on other sites

Hi there @Rem0o - great effort!

 

Like many, I have been led here after finding that Speedfan does not work on my new machine, and other software such as Argus Monitor aren't quite there. I have read all the posts, and watched your videos, but I cannot work out if I can do what I want. With the mixed curves etc, it seems like there should be a way - but I just can't get my head around it!

 

In essence, I would like to create a fan curve based on the difference between two sensors (ambient temp and water temp) - how would I do that?

 

As an aside, I have an ASUS z390 Mobo with a NCT6798D. There are additional sensors that show up on other monitoring software from 'ASUS EC' - would these be exposed in your software?

 

Thanks,

 

Jason.

Link to comment
Share on other sites

Link to post
Share on other sites

5 hours ago, Ja50nK said:

In essence, I would like to create a fan curve based on the difference between two sensors (ambient temp and water temp) - how would I do that?

So you want to make a curve based on the water temperature delta? Right now I don't support such a case, but let me just ask you this to brainstorm a bit on the idea:

 

Let's say ambient is 20 deg C, and water is at 40 deg C, you got a 20 deg delta, so your curve would be at, let say, 50%.

Now let's say ambient is 40 deg C and water temp is 60 deg C, still the same 20 deg delta. Would you want your curve to react the same in that case, so 50%? Your components would be closer to their max temps under load, so wouldn't you want for your fans to compensate somewhat?

 

5 hours ago, Ja50nK said:

As an aside, I have an ASUS z390 Mobo with a NCT6798D. There are additional sensors that show up on other monitoring software from 'ASUS EC' - would these be exposed in your software?

Not really sure, but my guess would be no.

Link to comment
Share on other sites

Link to post
Share on other sites

Created an account just to say thank you! I've been watching this thread since the start, but my Aorus Elite x570 didn't work. I missed seeing the May 6 update, but just like ortsa, loaded up the new version yesterday and was super happy!

 

This is great, thank you so much for your work!

Link to comment
Share on other sites

Link to post
Share on other sites

9 hours ago, Rem0o said:

So you want to make a curve based on the water temperature delta? Right now I don't support such a case, but let me just ask you this to brainstorm a bit on the idea:

 

Let's say ambient is 20 deg C, and water is at 40 deg C, you got a 20 deg delta, so your curve would be at, let say, 50%.

Now let's say ambient is 40 deg C and water temp is 60 deg C, still the same 20 deg delta. Would you want your curve to react the same in that case, so 50%? Your components would be closer to their max temps under load, so wouldn't you want for your fans to compensate somewhat?

 

Not really sure, but my guess would be no.

Thanks for the reply - very much appreciated!

 

Yes - exactly that, a curve based on Delta T°C between water and air.

 

I hadn't really thought about the second question - my intiial thoughts are, yes, I would want the curve to react exactly the same. Reason being:

  1. I'm in the UK, so once I set a 'reference' the likelihood is that the ambient temperature isn't going to increase significantly enough that it becomes a real consideration.
  2. The capacity of my loop won't change significantly, only the relative performance/water temp in relation to the ambient temperature. If my loop can effectively dissipate xxxW of power, that won't change massively with an ambient temp change (not one I am likely to see anyway) so if I set my loop up properly, consider noise etc. and at 20°C ambient I am only able to maintain a Delta T of 15°C (so water temp of 35°C) at full load, if the ambient temp increases to 30°C it doesn't matter how much my fans are tearing away, the radiators aren't magic and will only ever be able to achieve a Delta T of 15°C, so it would be appropriate that max fan speed is tied to the delta still.
    1. Of course, the only time that may not be true is if the fan speed is setup as a compromise and I decide I can live with a 15°C Delta T under normal circumstances with quieter fans that still have further capacity. In this case I can see that  if the ambient temp increased a sufficiently high amount I might tolerate a faster fan speed to reduce the Delta T for all the reasons you suggested. I would hope that is an outside case, and everything is a compormise right?
    2. In those circumstances I could setup a different profile so one for ambient <25C and one for >30C and select the appropriate one, or could I not use the recently added function to use a separate ambient curve to add an offset once a desired ambient is reached?

That's a shame - I'll see if I can find out more. I think it is an extra sensor on the board - HWinfo64, Argus Monitor etc. see a number of temp sensors / fans under Nuvtron NCT6798D, and a further 6 or so (VRM, PCH, Aux Temp sensors) under a device called ASUS EC. I'm not running any extra Asus software, but you are right as far as I can see your software/the library does not see them

Link to comment
Share on other sites

Link to post
Share on other sites

On 5/23/2020 at 7:00 PM, lustiz said:

Hehe, yeah, so I need the NVidia card for my Linux host doing scientific computing (i.e. Cuda/deep learning) while simultaneously using the AMD for running a MacOS VM. And sure, I also like to fire up Windows for some gaming in between 😉

 

 

I see, no worries. Thank you for your quick response and assessment. I will have a look at other tools and may come back one day 😉

 

Best,

lustiz

https://github.com/LibreHardwareMonitor/LibreHardwareMonitor/commit/f4828659527a53dee72a07422585a5b2e53df343

 

Seems like the identifier issue was fixed... Patched it in update 28.

Link to comment
Share on other sites

Link to post
Share on other sites

Thanks for your great work @Rem0o! I've been using this tool/following this thread for a while now and it's been great so far.

 

Although since upgrading to version 28, the system tray temps or the actual temps I'm monitorring don't seem to update any more. HWINFO reporting pauses if I have OpenFanControl running in the background too - this never used to happen.

 

I'm on a 3600X + MSI B450 + RTX 2070 with Afterburner and Corsair iCue running.

 

Also, on a separate note - I can see my corsair H80i v2 coolent temps on HWINFO - any chance that can be made available in OpenFanControl? Anything I can do to help?

 

Thanks again for your hard work!

 

 

log.txt

Link to comment
Share on other sites

Link to post
Share on other sites

Hey,

 

I just find something unexpected (or maybe related to my hardware?) : If you put you computer in standby, and switch on later, the default bios behaviour for fans is activated, even if actually FanControl is still open and supposedly still active and able to sense the temperature. Currently I just quit the soft and re-open it, and of course it works. Is this something easy to correct and is there any trick outside FanControl to do avoid this behaviour?

 

BR

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, Jean-Pierre57 said:

Hey,

 

I just find something unexpected (or maybe related to my hardware?) : If you put you computer in standby, and switch on later, the default bios behaviour for fans is activated, even if actually FanControl is still open and supposedly still active and able to sense the temperature. Currently I just quit the soft and re-open it, and of course it works. Is this something easy to correct and is there any trick outside FanControl to do avoid this behaviour?

 

BR

If you mean "sleep" by standby, I already react to the "resume" event in windows to override the bios reset. However, if your fan curves are stable after resume, the fan control won't kick back in until "something" triggers a change. Never considered that an issue since it would eventually come back quite quickly, but I might look into another way to do it.

Link to comment
Share on other sites

Link to post
Share on other sites

45 minutes ago, Rem0o said:

If you mean "sleep" by standby, I already react to the "resume" event in windows to override the bios reset. However, if your fan curves are stable after resume, the fan control won't kick back in until "something" triggers a change. Never considered that an issue since it would eventually come back quite quickly, but I might look into another way to do it.

Thank you for you quick reply; so it is actually the Windows sleep mode (ShutDown->Hibernate->Sleep).

In my little knowledge I'm quite sure for M$, Sleep=StandBy

I did a test for you: after resume (power button + login) the default boot bios params are applied (in my case the fans spin quite fast). If nothing comes to really burn GPU+CPU, it stay as it (but it shouldn't) with high spin although the t° conditions are there to stop the fans.

Only if I simulate a heat, then it spins even faster and then after the cool-down it

I put a screen-shot of what happens after resume: my "Mix Curve" is at 39% and this curve controls my bottom fan and strangely the reported  % is 62

Presse-papiers-4.png.c2f3f09a198219bac83d6f52aa0759bc.png

 

Of course only in this situation, I have a weird behaviour, only the sleep mode creates this "error"

Link to comment
Share on other sites

Link to post
Share on other sites

3 hours ago, Jean-Pierre57 said:

Of course only in this situation, I have a weird behaviour, only the sleep mode creates this "error"

If you swap your fan curve, does it gets back control?

Link to comment
Share on other sites

Link to post
Share on other sites

Hi,

 

Signed up to discuss this piece of software. Really brilliant idea, thanks for taking the time to write and release it. I have been searching for a few days now for something like this, mainly because the MSI Dragon Center software will only let me set one custom fan profile. The default profiles don't fit any of my needs, so I have to spent 10 mins editing the fan curves before I change what I am doing. Not helpful.

 

I downloaded this and gave it a go. As I said, it looks like it will fit my needs perfectly. Unfortunately it doesn't seem to be working as intended, perhaps there is something I have not done correctly?

 

The issues at the moment:

  • When I start the software it sees all the temps, recognises my curve and adjusts fan speed. But, the temperatures it shows then fail to update (I can see the CPU temp changing in RYZEN MASTER still), and fan speeds remain unchanged. The only way to get the software to recognise the temperature changes is to quit FanControl and restart it.
  • FanControl sees my two GPU fans but doesn't seem to recognise the fan speed. It was recording it once, when it was at full speed, but it doesnt record the speed ever since.
  • When the software is running, MSI afterburner and HWINFO64 both hang. I thought this might be to do with competing fan control actions, but I turned off MSI afterburner fan control and it made no difference.

I am using a MSI X570 Gaming Plus M/B, with Ryzen 3800X CPU and 2080 Super GPU.

 

I have tried this with and without MSI Dragon Center running, and I also tried running where I disabled everything I could find in task manager related to MSI/Dragon Center.

 

I hope someone might have an idea to help, as I have no idea why it isn't working.

 

Thanks!

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

10 hours ago, Rem0o said:

If you swap your fan curve, does it gets back control?

Yes: if I switch for "test" curve (100%), then it works, and I just need to go back to my "Mix" curve again

Link to comment
Share on other sites

Link to post
Share on other sites

4 hours ago, yfbcjw said:
  • When the software is running, MSI afterburner and HWINFO64 both hang. I thought this might be to do with competing fan control actions, but I turned off MSI afterburner fan control and it made no difference.

I am using a MSI X570 Gaming Plus M/B,

 

 

I can also confirm. that the latest update seems to have broken something. I have the same M/B as yfbcjw above, GTX1080, and Ryzen 3600 and MSI Afterburner stopped working today after I updated FanControl. Before everything was working smoothly.

 

Let me know if you need some log files something.

Link to comment
Share on other sites

Link to post
Share on other sites

2 hours ago, Jouska said:

I can also confirm. that the latest update seems to have broken something. I have the same M/B as yfbcjw above, GTX1080, and Ryzen 3600 and MSI Afterburner stopped working today after I updated FanControl. Before everything was working smoothly.

 

Let me know if you need some log files something.

Seems like LHM latest update is broken, sweet. I can confirm, I will rollback.

To everyone that had an issue with the latest update, can you confirm that this release (https://ci.appveyor.com/project/LibreHardwareMonitor/librehardwaremonitor/build/artifacts) has the same types of issue?

 

Does anyone with an Intel CPU has that issue?

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, Rem0o said:

Seems like LHM latest update is broken, sweet. I can confirm, I will rollback.

To everyone that had an issue with the latest update, can you confirm that this release (https://ci.appveyor.com/project/LibreHardwareMonitor/librehardwaremonitor/build/artifacts) has the same types of issue?

 

Does anyone with an Intel CPU has that issue?

Yup, that release of LibreHardwareMonitor has issues with MSI Afterburner and HWiNFO.

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


×