Thoughts on a fan controller I have been tinkering with

Control: management of fans, temp/rpm monitoring via soft/hardware

Moderators: NeilBlanchard, Ralf Hutter, sthayashi, Lawrence Lee

Post Reply
mcmahad
Posts: 4
Joined: Wed Aug 26, 2009 5:14 pm
Location: USA

Thoughts on a fan controller I have been tinkering with

Post by mcmahad » Wed Aug 26, 2009 6:09 pm

People,

I have been tinkering with some electronic circuits for a few months now and I have a first cut at a circuit for a good PWM fan controller. This is my first post but I have been lurking these forums for a while now. I haven't seen anything like this, but I haven't seen everything.

The purpose of this controller is to allow a user to set the desired temperature and the controller will speed/slow the fan to maintain this desired temperature. You set it and forget it.

My apologies if the following sounds too commercial and violates some kind of terms. I don't know any other way to get hard information on this.



Here is what I currently have:

1) Fan speed is controlled by a temperature probe. Fan speed increases if above the user set point, it decreases if temperature is below the set point.

2) The fan is controlled by a PWM circuit for efficient power usage. I have adjusted the circuit to avoid 'chirping' from the PWM pulses.

3) The current version has two knobs. One knob sets the desired temperature, the other knob sets the minimum speed.

4) This controller will start up with full power to the fan for about 3 seconds to ensure the fan starts every time. This is "hard start" feature to avoid stalled fans when powering on. After startup, fan speed will drop to the level required to maintain the temperature setting. The minimum speed can be set so low that you can easily watch the fan blades turn slowly.

5) The controller should handle about 2 amps of fans with no problem, probably more. I haven't tested the upper limit yet.

6) The circuit is one generic 14-pin DIP IC plus a bunch of resistors (about 30) and a few other parts. I use a FET for the PWM control and a thermistor for temperature sensing. The control circuit is completely analog (not digital) so there are an infinite number of settings to get just the right amount of cooling for any set of load conditions.

7) Temperture range for the controller is currently about 75F to about 95F. I can change this range by adjusting part values. The user can dial in any desired value. The controller will spin the fan fast enough to keep it there or until max/min speed limits are reached.

8) Power is +12VDC. You plug one side of the controller into the power supply and the fan plugs into the other side. The circuit robs a wee bit of power from the supply to run things and pulses the fan to control temperature.

9) There are no indicator lights or readouts. I monitor temperatures with a separate digital thermometer from WalMart. It's much cheaper that way.

10) The circuit is technically a proportional-Integral control loop. (No Differential term is used). The circuit will control the fan(s) to maintain the desired temperature, no matter what the heat load is.

11) The idea was that you could mount the thermistor probe at a desired spot in your case (like close to the CPU) and the fans would then find the correct speed for any power burn. Less noise when you are idle, more air when you are making heat.

12) There is no purpose for the tachometer, if your fan has one. I'm not sure if some BIOSes will complain if the tachometer is disconnected.

13) The response time of the circuit is fairly quick. Any change is a smooth adjustment, no sudden steps in noise. The circuit will take about 10 seconds to adjust, depending on system parameters. I can slow this down or speed it up by changing component values.


Questions/Observations:
--------------------------------
1) Have you seen something like this? If so, where?

2) I could add more circuitry to allow the use to set maximum speed but that seemed like overkill and would raise the price of parts. You would be limiting the fan to a max speed that may be insufficient to keep the CPU cool.

3) I could add more circuitry to allow you to set the response rate of increasing/decreasing the fan speed. Again, I am not sure this is required and it would require more knobs. Knobs are expensive, require space, and add complexity.

4) The FET I use is rated for 4 amps but I can get just about any size required. How much cooling does one computer need? Is 4 amps of fan power enough?

5) I suppose you could have two controllers that monitor different points in the case but they would tend to fight each other because you can never set them for exactly the same temperature. I would think it makes most sense to have just one probe sensor.

6) I was thinking about maybe offering this as a product. If so, what do you think is a fair price?

7) The circuit is complicated due to the number of resistors. I don't think it is something you would build from scratch because there are too many unique resistor values to be economical for building one copy. I don't think you could buy the correct resistor values at some place like Radio Shack, so that means mail order. What about a kit?

8) The current circuit will easily fit inside an Altoids can. If I make a PCB, I can put it just about anywhere. What kind of form factor would you like to see? Something that plugs into the ISA bus connector and has knobs sticking out the back? Something that mounts like a fake disk drive so you can have knobs on the front?

9) I can set the temperature range for any value. What seems reasonable?

10) I don't see a need to completely stop the fan from turning, do you? If a CPU fan actually stops, it will stall and be difficult to start when you need to cool. A stalled fan also adds lag between a CPU that suddenly warms up and when the thermistor can sense this to react. I think it is best to leave fans turning slowly. The airflow difference between slowest and fastest is about 6 to 1 or more.


Let me know your thoughts and questions on this concept. I don't know what I want to do with the circuit yet. Ideally, I would like to sell some of these but I don't know if that is practical or profitable. Your input is appreciated.


Sincerely,

-M

NeilBlanchard
Moderator
Posts: 7681
Joined: Mon Dec 09, 2002 7:11 pm
Location: Maynard, MA, Eaarth
Contact:

Post by NeilBlanchard » Wed Aug 26, 2009 6:48 pm

Welcome to SPCR!

That is one heck of a first post -- it sounds good to me! In my slot car controller, there is a little resistor "pack" that plugs into a socket -- would something like this make it easier?

Image

Image

ascl
Posts: 279
Joined: Tue May 05, 2009 1:15 am
Location: Sydney, Australia

Post by ascl » Wed Aug 26, 2009 7:05 pm

I have been toying with a somewhat similar idea, so I have a few comments you may (or may not!) find useful.

Firstly, the relationship you are describing between sensor reading (temp) and fan speed... is one that I dislike intensely. Speedfan uses the same model. It means that once temp hits Xc fans ramp up and stay ramped up until the temp goes below Xc again. I much prefer to have a curve, which a temp of Xc results in a fan speed of Y.

As a somewhat silly example of why this is bad. Say your ambient temp increases to close to X. No matter how fast the fan spins, its not going to get the temp below that, so the net result is a noisy fan. Personally I'd prefer it to acknowledge the need for increased speed without going flat out.

Hope this makes sense (and I haven't misunderstood what you intend).

Next, there are solid arguments either way for doing the actual fan speed controlling in software or in hardware. However, the ability to monitor in software is very good imo. How about adding a USB interface?

Speaking of USB interfaces... a module that does almost exactly what you describe is the SilverStone Commander (CMD01). Its an ESA device, however does work fine without an NVidia chipset (not 100% sure if it will work without something nvidia... I have an NVidia GPU). In theory at least, it allows you to specify temps (it has 4 sensors) and fan speeds (5 headers) and adjust the latter based on the former. This is all done in software (and the nvidia system monitor is average at best, the nvidia control panel is much better, but I haven't messed with it much).

Also, it allows you to monitor the temp from software. Annoyingly, it doesn't seem to report fan speeds (which I am at a loss to explain!). It also has zero lights/bling/crap on it, which is nice.

One advantage in doing this in software (to me anyway) is it allows the use of the onboard sensors (CPU/Motherboard/HDDs etc) in the creation of rules for fan speed.

The CMD01 RRPP is $49 USD I think, but available much cheaper.

Note: I currently only use it for its monitoring ability. I haven't tried the fan control side of things, nor the creation of rules (profiles) for different temps etc.

Definitely no need to stop fans imo. If you do allow fans to stop, then you need to power them up with more juice and scale it back once the fan is spinning... this will be noisy.

Best formfactor imo is 3.5 so I can mount it in an internal HDD bay. However, ANY drive bay device should have knobs that are small (ie do not stick out very far), so cases with doors can close.

Sounds like a great project! Good luck.

psychochilli
Posts: 1
Joined: Wed Aug 26, 2009 11:06 pm
Location: UK

fan controllers

Post by psychochilli » Wed Aug 26, 2009 11:13 pm

Hi, check out quietpc where they have a few fan controllers available.
I'm currently using a Scythe Kaze Server 5.25inch Fan Controller. This has temp probes and a good choice of fan controller options. I've got all my 4 fans (inc CPU) set to turn on at certain speeds so my system is completely quiet 99% of the time.

Hypernova
Posts: 124
Joined: Sat May 31, 2008 2:33 am
Location: Australia

Post by Hypernova » Thu Aug 27, 2009 5:35 am

Analog control? Wouldn't it be better with chips like AVR XMEGA's that have up to 24 PWM channels and 16 ADCs?

DrCR
Posts: 538
Joined: Sun Jun 13, 2004 11:55 am

Post by DrCR » Thu Aug 27, 2009 8:45 pm

If I recall correctly, there was a hardware product for this a while back, say '05 or so. Cost $100, again IIRC, and while it garnered some praise never quite caught on. Don't remember the name of the product, but perhaps few of the other more venerable members may remember. I guess it didn't take as PWM controlling started getting added to mobos.

FYI I'm a fix-it-and-forget-it undervolter myself. I go nuts on a heatsink and airflow setup, and use the quietest fan setup I can find. So anything PWM or variable fanciness is fuzzy in my mind.

DrCR

Edit - Found it: mCubed T-Balancer

EsaT
Posts: 473
Joined: Sun Aug 13, 2006 1:53 am
Location: 61.6° N, 29.5° E - Finland

Post by EsaT » Fri Aug 28, 2009 1:33 am

mcmahad wrote:2) The fan is controlled by a PWM circuit for efficient power usage. I have adjusted the circuit to avoid 'chirping' from the PWM pulses.
Have you tested with different fans know from PWM induced noises?
From such fans I know especially Scythe SlipStream keeps really nasty high frequency whine so that might be good for testing.
(then again there's low pass filter option, Aerocool FP-01 has one)

ascl wrote:Next, there are solid arguments either way for doing the actual fan speed controlling in software or in hardware. However, the ability to monitor in software is very good imo. How about adding a USB interface?
Primary control should be through hardware. There's already more than enough resource hogging possible instability problems causing junk running on background nowadays.
Additional non mandatory control/monitoring software is perfectly OK and would be even natural extension to hardware. (for doing things like logging of monitored values)

Best would be 5.25" size device with display and controls in there and that would be then connected to USB for extra non mandatory software part... Nvidia's ESA was completely screwed up marketing gimmick.

mcmahad
Posts: 4
Joined: Wed Aug 26, 2009 5:14 pm
Location: USA

Post by mcmahad » Sat Aug 29, 2009 10:06 am

NeilBlanchard said:
In my slot car controller, there is a little resistor "pack" that plugs into a socket -- would something like this make it easier?
Neil,
I thought about that. If I could find those R-packs that would do the job, I would use them for any kind of volume production. My problem is that I have such low volumes that I have to use off-the-shelf parts. I can't get a custom R-pack made. I could probably use two or three R-packs with the right values and avoid most of the resistors. It would really neaten up the board design. The circuit I have uses some different values and connections so I have to be careful to match what is available to what I need. I can tweak the circuit somewhat if I could just find something close enough. Right now, I use individual resistors because that is what I have.
HyperNova said:
Analog control? Wouldn't it be better with chips like AVR XMEGA's that have up to 24 PWM channels and 16 ADCs?
Analog is old school!! I deal with code and digital crap during the day. One of the challenges I set for myself in this was to avoid using a CPU and to do it with standard parts. No special chips. I wanted to be able to keep costs down, make things simple, and to use it for other market areas, like horticulture (seed sprouters and orchid growers), and chick breeders. The controls are simple, the purpose is simple. No extra stuff to bolt on.

I don't know where I would use 24 PWM channels and 16 ADCs even if I had them. There are already dedicated fan controller ICs on the market, I wanted something that was (almost) available from Radio Shack. If I used that chip, I would have to figure out where to put a CPU and write some code. That means an assembler or compiler, some kind of ROM, blah, blah, blah. The circuit I have is programmed with resistors. Call me crazy.
psychochilli said:
check out quietpc.....I'm currently using a Scythe Kaze Server 5.25inch Fan Controller
I looked at quietpc and then went to look at the Kaze Server product. It certainly looks nice. They have lots of cool displays and readouts. The one thing that bothers me is that it seems like they don't smoothly control the temperature. It looks like fans just have a few steps to turn on when inside temperature rises above the set point. Is that true? I wanted to get a smoothly varying control that ramps the fan speed up so slowly you wouldn't even notice it.

Most of the other products on quietpc look great but I don't think they actually do much. They show you temperatures and let you manually turn up the speeds. Why does a human have to be in the loop after it is set up once? The controller should control and the human should relax. Maybe I misread this.

Then again, I snipe because there is no way I can compete with all the cool custom displays and readouts, so I am a bit jealous. Who cares about fan RPM speed? I want the CPU to stay cool and fan noise to stay low. The rest is just a bit distracting. I can easily find a panel meter to show temperature but that adds cost. It's tough to beat an $6 digital thermometer from WalMart.

ascl said:
Firstly, the relationship you are describing between sensor reading (temp) and fan speed... is one that I dislike intensely. Speedfan uses the same model. It means that once temp hits Xc fans ramp up and stay ramped up until the temp goes below Xc again. I much prefer to have a curve, which a temp of Xc results in a fan speed of Y.
I respectfully disagree. The first priority must always be to keep the CPU cool. If the CPU temperature goes over some value, bad things start to happen (like crashing, blue-screen-of-death, etc). Fan noise is a problem but secondary to keeping the CPU cool.

Your description is perfectly correct and shows the limitation of air cooling. If the incoming air rises to a higher level, you need more air to bring CPU temp down. Using the fixed curve doesn't account for changes in incoming air temperature, changes in case airflow (like dust or other blockage) and must be set uniquely for every different case/CPU/fan configuration. Not many people are going to take the time to properly set the profile and then change it when they add something else to the computer.

I guess you could always take the approach of setting a fixed fan speed just below the level of audible distraction and be done with it. That's a simpler approach than even I am taking. A CPU is very tolerant of larger temperature swings, as long as you stay under some critical limit.
ascl said:
As a somewhat silly example of why this is bad. Say your ambient temp increases to close to X. No matter how fast the fan spins, its not going to get the temp below that, so the net result is a noisy fan. Personally I'd prefer it to acknowledge the need for increased speed without going flat out.
One man's noisy fan is another man's cooler CPU.
Your example would be a reason to have a knob to set the maximum limit. If you don't want the fan to go faster than some value, you would set it that way. This adds a few resistors and one more chip, but it can be done. Then again, setting the upper limit to less than 100% means you aren't using the full cooling power of your fans when there is an active demand for more airflow.
ascl said:
Next, there are solid arguments either way for doing the actual fan speed controlling in software or in hardware. However, the ability to monitor in software is very good imo. How about adding a USB interface?
USB? Yech. That adds some cost, requires software to support, and opens up complexity that I was hoping to avoid. Other than notification of a fan failure or blocked vent due to high temperature, what real purpose would a USB monitor provide? I know there is value in the ability to "know things" like fan speed but what real value is provided with that knowledge? I'm not sure, so please let me know.
ascl said:
Speaking of USB interfaces... a module that does almost exactly what you describe is the SilverStone Commander (CMD01). Its an ESA device, however does work fine without an NVidia chipset (not 100% sure if it will work without something nvidia... I have an NVidia GPU). In theory at least, it allows you to specify temps (it has 4 sensors) and fan speeds (5 headers) and adjust the latter based on the former.
That module is nice but not everybody has an ESA compliant motherboard. I would think that most people don't.

I'm not sure exactly how you would manage four sensors. Does the sensor that is farthest over it's setpoint override the others? How do you balance the fan speed if one sensor is too hot and another is cool?

It seems like this is complicated. As you say yourself, you haven't actually started controlling the fan speeds on your box, probably due to complexity. My method has one external knob that you set for temperature, then you are done.
ascl said:
Also, it allows you to monitor the temp from software. Annoyingly, it doesn't seem to report fan speeds (which I am at a loss to explain!). It also has zero lights/bling/crap on it, which is nice.
What would you need fan speeds for, other than to know they are running? Temperature is what matters. Am I missing something here?
ascl said:
One advantage in doing this in software (to me anyway) is it allows the use of the onboard sensors (CPU/Motherboard/HDDs etc) in the creation of rules for fan speed.
Yup, that's one real advantage that I can't match. This assumes the BIOS or other software is properly integrated to do that. Too many temprature inputs makes the rules complicated, however.

IMO, it would be much easier to just mount two independent control circuits with two sensors and then set them up as zones with a fan(s) able to control just that zone. This lets you add more cooling to the HDD if needed. One more knob for the user to set and that's all there is to it.
ascl said:
The CMD01 RRPP is $49 USD I think, but available much cheaper.
The price seems good, if you have an ESA motherboard. I know my old Dell doesn't have this and I doubt you would find it in other market areas (like hatching chicks) :lol:

mcmahad
Posts: 4
Joined: Wed Aug 26, 2009 5:14 pm
Location: USA

Post by mcmahad » Sat Aug 29, 2009 11:18 am

EsaT said:
Have you tested with different fans know from PWM induced noises?

No, and that's a good point. I have a handful of small fans laying about that I test with. My fans are no-name junk that were just salvaged from various old computers. I need to finalize the circuit and then start testing.

I guess it might be possible to convert from a PWM system to a true analog control. That would mean no fan whine is possible but I think the power usage would go up a bunch in the main control transistor on the fan controller. That would definately mean a heat sink and probably less total fan power I can control. It might save a few resistors in the circuit to switch over. I will have a look at that.

EsaT said:
Primary control should be through hardware. There's already more than enough resource hogging possible instability problems causing junk running on background nowadays.
I agree, and that brings up a good point. If some task hogs the CPU and the fan speed control is starved, you may not control the fan properly and cause secondary problems. I learned long ago that all safety equipment should not use software-in-loop unless it is a hard realtime system. Dedicated onboard control that is independent of software function is really important, IMO.

DrCR said:
If I recall correctly, there was a hardware product for this a while back, say '05 or so. Cost $100, again IIRC

$100 seems kind of high for what it should be. It may be a cadillac, but not so many people could afford that for what it gives. What is something like that worth?

That link you edited in works, but the M-cubed page is gone. I think they are out of business.

I googled and found an active link that contains a review of T-balancer:

www tomshardware com/reviews/mcubed,928.html


[sorry for the spaces, I must have 3 posts before I can post a URL. This is my third post.]


The T-balancer page says it can control 40 watts with PWM, 20 watts analog. That's about what I would expect for tradeoff. Silence vs power efficiency.

I found this link here and it gives more detail:

bjorn3d com/read php?cID=729&pageID=1177

It looks like the parameters are downloaded once and then the onboard controller stores them and uses them. The board also controls lights if desired.

The control system description isn't exactly what I was thinking of. If I read it right, it looks like you can map up to four sensors to different fans. The fan speed goes up based on reported temperature, but is not using a demand based system like I envision.

I still can't find a cost on it. The company is out of business so it look like a moot point.

Hypernova
Posts: 124
Joined: Sat May 31, 2008 2:33 am
Location: Australia

Post by Hypernova » Sat Aug 29, 2009 4:16 pm

HyperNova said:
Analog control? Wouldn't it be better with chips like AVR XMEGA's that have up to 24 PWM channels and 16 ADCs?
Analog is old school!! I deal with code and digital crap during the day. One of the challenges I set for myself in this was to avoid using a CPU and to do it with standard parts. No special chips. I wanted to be able to keep costs down, make things simple, and to use it for other market areas, like horticulture (seed sprouters and orchid growers), and chick breeders. The controls are simple, the purpose is simple. No extra stuff to bolt on.

I don't know where I would use 24 PWM channels and 16 ADCs even if I had them. There are already dedicated fan controller ICs on the market, I wanted something that was (almost) available from Radio Shack. If I used that chip, I would have to figure out where to put a CPU and write some code. That means an assembler or compiler, some kind of ROM, blah, blah, blah. The circuit I have is programmed with resistors. Call me crazy.
Oh you crazy old fool :o, trying to go ENIAC huh? I took a quick look on Mouser and quite frankly all those prebuilt fan controller chips are too limited. And it's not like using AVR is complicated since it has built in clock and programme flash.

ascl
Posts: 279
Joined: Tue May 05, 2009 1:15 am
Location: Sydney, Australia

Post by ascl » Sat Aug 29, 2009 4:51 pm

mcmahad wrote: I respectfully disagree. The first priority must always be to keep the CPU cool. If the CPU temperature goes over some value, bad things start to happen (like crashing, blue-screen-of-death, etc). Fan noise is a problem but secondary to keeping the CPU cool.

Your description is perfectly correct and shows the limitation of air cooling. If the incoming air rises to a higher level, you need more air to bring CPU temp down. Using the fixed curve doesn't account for changes in incoming air temperature, changes in case airflow (like dust or other blockage) and must be set uniquely for every different case/CPU/fan configuration. Not many people are going to take the time to properly set the profile and then change it when they add something else to the computer.

I guess you could always take the approach of setting a fixed fan speed just below the level of audible distraction and be done with it. That's a simpler approach than even I am taking. A CPU is very tolerant of larger temperature swings, as long as you stay under some critical limit.
Well we are trying to avoid a fixed speed fan right? :)

From my experience with SpeedFan vs RivaTuner, I can definitely say I prefer a curve or at least several points (A = B% fan speed but C temp = C% speed). Especially in situations where a faster fan speed alone is just not going to bring the temp down below your safe point. I guess I don't understand why you would (again if I understand correctly) have the fan at the lowest possible speed, then once a temp is hit, ramp up to 100% until that temp drops. It just seems noisy!
Your example would be a reason to have a knob to set the maximum limit. If you don't want the fan to go faster than some value, you would set it that way. This adds a few resistors and one more chip, but it can be done. Then again, setting the upper limit to less than 100% means you aren't using the full cooling power of your fans when there is an active demand for more airflow.
Actually this is one thing that SpeedFan does do nicely. It has two settings, one for your everyday maximum fan speed, and an emergency temp setting, which forces full speed. Again, I guess I like the granularity of control that this allows. An upper limit is a good start.
USB? Yech. That adds some cost, requires software to support, and opens up complexity that I was hoping to avoid. Other than notification of a fan failure or blocked vent due to high temperature, what real purpose would a USB monitor provide? I know there is value in the ability to "know things" like fan speed but what real value is provided with that knowledge? I'm not sure, so please let me know.
Fair enough. I have an interest in it because I do some benchmarking/testing, which requires accurate measurements and logging. This is not going to be a common requirement (I think).
That module is nice but not everybody has an ESA compliant motherboard. I would think that most people don't.
As I said, it doesn't require it -- I don't have one. However, it does mean that if your device used the ESA protocol, it would automatically work in HWMonitor and the Nvidia System Monitor.

I'm not sure exactly how you would manage four sensors. Does the sensor that is farthest over it's setpoint override the others? How do you balance the fan speed if one sensor is too hot and another is cool?
You create separate rules for each sensor. Basically you select an input source (a temp sensor say), the thing you want to control (a fan) and specify on a graph a number of points which shows the relationship between fan speed and temp at any point. If one sensor is too hot, your fans should ramp up, hopefully appropriate fans to that area.

Yes it is more complicated than a single knob. The reason I haven't done much with it is that I require fixed fan speeds to ensure testing is consistent.

There is also a solid argument against software control for this kind of thing (ie OS independent, works if the OS doesn't etc).
What would you need fan speeds for, other than to know they are running? Temperature is what matters. Am I missing something here?
Yes you are right, fan speeds don't really matter (although fan stopping alarms could be useful). Again, its something I want for logging purposes.


Obviously everyone has different needs for this kind of device... and everyone will have features they want that may not be practical to create. My suggestions are purely my wish list... I hope I have given you some ideas, or at least make you more clearly define yours :)

ultraboy
*Lifetime Patron*
Posts: 547
Joined: Thu Aug 26, 2004 5:02 pm
Location: Bangkok Thailand

Post by ultraboy » Sat Aug 29, 2009 5:50 pm

Here's the current products' web page for t-balancer. mCubed company is still alive but has moved to do more of quiet HTPC case. On the last tab of that web page, you'll find a link to their on-line store if you want price info.

I was using t-balancer during my P4 days and was quite impressed with it. I think because today's PCs produce less heat + introduction of many quiet fans + better design of PC case airflow + more advanced fan control integrated into MB, all these makes product like t-balancer less attractive (oh..and it's price too :wink: ).

Good luck with your project.
Last edited by ultraboy on Sun Aug 30, 2009 6:10 am, edited 1 time in total.

Wayne Redpath
Posts: 104
Joined: Wed Jul 29, 2009 7:42 am
Location: Calgary, Alberta, Canada

Post by Wayne Redpath » Sat Aug 29, 2009 10:22 pm

I like the 1-into-3 Rosewill 12" PWM Splitter Model RCW-FPS-401 available at newegg.com for US$ 3.99 .

Terje
Posts: 86
Joined: Wed Sep 08, 2004 4:50 am

Post by Terje » Sun Aug 30, 2009 7:31 am

Another product similar to the t-balancer would be aquero.

http://www.aqua-computer.de/e_content/e_aquaero.htm

I have no experience with it, but seems like people are generally happy with it. Cost more than the t-balancer, but you get the display and at first glance it might seem like the software is richer on features, but I have not looked too much at it.

From what I understand, both the latest t-balancer and aquaero revisions can operate both as pwn and analoge controllers and both can be programmed through the USB interface, and once programmed, they can run completely autonomously from the host computer.

Both also seem to have a small arsenal of temperature and water sensors you can order as well as the ability to control fans and water pumps, although I believe the t-balancer has more power per port (but aqua-computer most certainly has a very impressive selection of external controller stuff that can be connected).

I got a t-balancer in order which I plan to use partly for my HTPC and partly to control a fan in the cabinet housing the HTPC.

If I get time, I will compare it with the kaze server controller I have and write a little posting here somewhere.

Terje
Posts: 86
Joined: Wed Sep 08, 2004 4:50 am

Post by Terje » Sun Aug 30, 2009 7:38 am

Just for the note.

I did once buy this usb programmable 8 channel controller
http://www.velocityreviews.com/reviews/ ... roller.php

Software was crappy and while it looks a bit like it might be analogue on the specs, it generated PWM style noise in my fans so out it went again.

Think the product has been cancelled since. A bit sad as I think 4 channels which most controllers have is a couple of channels too little for a somewhat loaded cabined, while 8 channels should be enough for most so I really wish they had managed to make it work better instead.

Terje
Posts: 86
Joined: Wed Sep 08, 2004 4:50 am

Post by Terje » Sun Aug 30, 2009 7:39 am

Just for the note.

I did once buy this usb programmable 8 channel controller
http://www.velocityreviews.com/reviews/ ... roller.php

Software was crappy and while it looks a bit like it might be analogue on the specs, it generated PWM style noise in my fans so out it went again.

Think the product has been cancelled since. A bit sad as I think 4 channels which most controllers have is a couple of channels too little for a somewhat loaded cabined, while 8 channels should be enough for most so I really wish they had managed to make it work better instead.

EsaT
Posts: 473
Joined: Sun Aug 13, 2006 1:53 am
Location: 61.6° N, 29.5° E - Finland

Post by EsaT » Sun Aug 30, 2009 10:09 am

mcmahad wrote:No, and that's a good point. I have a handful of small fans laying about that I test with. My fans are no-name junk that were just salvaged from various old computers. I need to finalize the circuit and then start testing.
It's now year or two when I tested fans I had and it almost seemed like the better fan was acoustically the surer PWM noises were...
I think Liebermann (GlobalWin NCB) was only exception to that.
I guess it might be possible to convert from a PWM system to a true analog control. That would mean no fan whine is possible but I think the power usage would go up a bunch in the main control transistor on the fan controller. That would definately mean a heat sink and probably less total fan power I can control. It might save a few resistors in the circuit to switch over.
Considering cramped plastic casing without surely much any internal space Aerocool FP-01 must be PWM controller because of highish 1.5A/18W per channel limit... There just isn't any way for this kind heatsinks in there.
But what I could see inside from rear is that it clearly has capacitor and coil in outputs so smoothing chopped voltage enough is possible with few small components.

mcmahad
Posts: 4
Joined: Wed Aug 26, 2009 5:14 pm
Location: USA

Post by mcmahad » Sun Aug 30, 2009 1:56 pm

ascl wrote:
mcmahad wrote: I guess you could always take the approach of setting a fixed fan speed just below the level of audible distraction and be done with it. That's a simpler approach than even I am taking. A CPU is very tolerant of larger temperature swings, as long as you stay under some critical limit.
Well we are trying to avoid a fixed speed fan right? :)
Yes, we were trying to get away from fixed speed. I was taking to the extreme the description of manually programming in control curves. I have to believe that is just not the way to go. Also, a CPU doesn't really care too much about what temp it runs at, as long as you stay under the 'do not exceed' value of around 125C on the silicon surface. The simplest mechanism for this is to set a fixed speed that gives max cooling and no sound, which means turning the fan speed up and just parking at the point just below where no sound is heard. No curve to figure out.

The amount of airflow required is determined by the heat generation inside the chassis. There is a simple formula that relates the output temperature to input temp, airflow, and power useage inside the box. The formula doesn't say anything about hot spots inside the box, it just says output air temp must be directly related to the these variables. Trying to guess all the hidden variables that go into controlling local hot spots within the case is not possible, IMO. That's why you need a controller that does the job based on a design that implements certain rules.

ascl wrote: I guess I don't understand why you would (again if I understand correctly) have the fan at the lowest possible speed, then once a temp is hit, ramp up to 100% until that temp drops. It just seems noisy!

You are quite correct, that is not how a fan controller should work. There are two different basic kinds of control loops, unimaginativly named Type I and Type II.

Both type I and type II control loops have a goal. In our case, it would be temperature at some spot in the case. When the temp at that spot is below the goal, fans can slow down. When temp is above the goal, fans must speed up. They both determine an error signal based on the current measurement and the goal. For cooling computers, the error term is just the difference between goal and actual temperatures. Subtract the temp you measure from the setpoint. A difference of 0 means perfect (don't change a thing), a value that is plus or minus describes how much you should increase or decrease fan speed.

Most of the control hardware I have looked at seems to be of the Type I variety. With type I, you have proportional control only. This means if you are 2 degrees over goal, you run the fan at one speed, 4 degrees over goal means increase fan speed, 6 degrees over goal means increase more, etc. The controller does not seek to make the error term zero, it just keeps turning up fan speed as the error term increases.

A type II control loop is the same as a type I but introduces an additional integration term. You can think of this fan speed that has a moving average. If the error term is positive, fan speed keeps increasing. If the error term is negative, fan speed decreases. When error is zero, the average stops moving and fan speed stays the same. With a type II system, you have to think about how fast you move vs. how fast the system can react. Each time you make a small change to fan speed, it takes a few seconds for that change to have an effect and you have to wait for it. If you try to adjust to quickly, you will overcorrect and the system will oscillate, which means fan speed goes up and down, up and down, up and down. Ideally, the fan speed should seek to a fixed value and stay there as long as nothing else changes. If case power useage goes up, this translates to an increase in temperature that raises the error term and causes the fan to speed up a bit to compensate for the increased power.

What I seem to see in all the controllers I look at is a type I system (fan speed is only proportional to the error term) and a manually entered curve to translate case temp to some fan speed value. The curve can assume various shapes and may not be linear. I don't know how you could ever set up the proper curve without doing lots of trial-and-error at different power usage levels. Why shouldn't this be controlled by some dedicated circuit?


ascl wrote: Actually this is one thing that SpeedFan does do nicely. It has two settings, one for your everyday maximum fan speed, and an emergency temp setting, which forces full speed. Again, I guess I like the granularity of control that this allows. An upper limit is a good start.
I would argue that any temperature over the goal temperature means the system is not balanced and fan speed should increase. Having two different maximum temps for two different speeds seems wrong. The temp should never be allowed to climb beyond the goal without an increase in fan speed to bring it back into balance.

Think about your home air conditioner. What if you set it run based on house temp? here is a curve
0% for 75 degrees and below
20% for 77 degrees
40% for 80 degrees
60% for 82 degrees
etc.

Now, you decide to do lots of cooking so you crank up the oven and the stove. If the house is above 75, it has reached "uncomfortable". Should the temperature be controlled by a curve above and always stay "uncomfortable" or should we let the thermostat run until it brings the temp back to 75? I would vote for letting the thermostat do it's job and run as much as required to bring the house back to "comfortable" setting.




Ultraboy :
Thanks for finding the link on t-blancer. Find the right thing on their store was confusing for me. Maybe that's why they don't do as well as they could?

Anyway, prices for T-balancer are:
T-balancer bigNG : 69 euros $98.57
T-balancer classic: 59 euros $84.29
T-balancer miniNG: 29 euros $41.42

The more expensive products handle more channels and things like water pumps, lighting effects, etc.




EsaT - You are quite correct about the heat generated by true analog control. That's why most controllers use a PWM to control speed. There is much less power burned within the controller when using PWM. With true analog, you convert much of the power to heat. I guess you could get the advantage of both if you created a switching regulator to convert 12 volts down to desired value. It would give you power efficiency, silence, and speed control. This approach would tend to drive the cost up as the circuit complexity becomes higher. I guess you could balance that off against the price of a big aluminum heat sink and fan to cool the fan controller. :)


Here is an open question:
How many different fans do people use?

I have the main CPU cooler and then one in the power supply, but I am not modding. That computer comes with BIOS controlled fans and is quiet without any changes.

I have another older CPU with more fans added because I was running it in the hot attic. It sounds like a jet airplane all the time. We make my son only use this box because (a) it is paid for and (b) we know when he sneaks down to turn it on because of all the noise it generates.

ascl
Posts: 279
Joined: Tue May 05, 2009 1:15 am
Location: Sydney, Australia

Post by ascl » Sun Aug 30, 2009 2:47 pm

I am happy with either Type I or Type II. Neither is quite as dumb as SpeedFan, and ramps up the fan in some kind of controlled manner that isn't just on or off. Being the control freak I am, I'd still like to control the curve, but as long as there IS a curve, it should be fine.

The difference between this and your a/c example is that i do not care if my a/c flips on and off every minute. However, if my case fans jumped between 40% and 100% every minute, it would drive me insane.

I currently have 2 case fans, and 3 radiator fans.

trident
Posts: 56
Joined: Sat Jan 13, 2007 10:16 am
Location: Indiana, U.S.A.

Post by trident » Mon Sep 07, 2009 1:56 pm

Greetings

mcmahad and EsaT
Analog control will dissipate the excess voltage as heat, but the waste heat may not be as large as you may think. A brushless fan behaves similar to a fixed resistor, so the the current draw of the fan decreases with applied voltage. For a 12 volt fan with 0.3 amp running current and 0.6 amp starting current the pass element would only need to dissipate about 1 watt continuous and maximum of approximately 2 watts if starting at 6 volts.

_______
trident

Post Reply