• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

What's the deal with the fans in PowerMac G5s? A call to electronics experts for help with retrofitting fans.

CircuitBored

Well-known member
Hi all,

On my quest to plan for the future of the PowerMac G5 I have encountered an obstacle surely faced by many before me: what to do about those awful stock fans?

Through a lot of trial and error across four different G5 systems I have essentially come to the conclusion that for these machines to survive into the future I will have to figure out how to replace all the fans with ATX stand-ins.

So I had a go. I decided to target the intake fans first, as they are easy to remove and generally loud and inefficient. I simply purchased some Noctua 90mm fans that happen to be a vague colour match for the stock fans and cross referenced the pinouts before having at it with a soldering iron. I bought Noctua NF-B9 Redux 1600 PWM fans.

Here are the images I worked with:

nocfanpins.pngG5_fans.png

And this is what I produced:

IMG_2656.JPEGIMG_2657.JPEG

IMG_2658.JPEG

I put this creation into the G5 and it just worked. The fans spin up when they need to and the tachometer signal works. They are far quieter than the stock fans and most importantly they actually keep the CPUs cool.

Despite this apparent win there are some drawbacks. The fans only seem to use the middle 50% of their RPM range, which is adequate by sheer coincidence. If you try to run Apple Service Diagnostics it will fail due to the fan speed being "too high".

My supposition that I had simply been lucky was confirmed when I replaced the 80mm PCIe/speaker fan with another Noctua Redux. This time around upon installing the replacement fan I was met with a fan that just spins very slowly with a weird pulsing acceleration pattern, clearly indicating an issue revolving around PWM.

All this fiddling combined with what I've read online has led me to the conclusion that the G5's fan controller is completely un-dynamic, so to speak. You can't just use any old fan with it.

In short, I'm going to have to develop some sort of way to "translate" the G5's PWM spec so that other fans can be calibrated within the system. Before doing that we'll need to know what values the G5 is programmed with.

I hypothesized that I could build a signal divider for the PWM and tachometer pins in order to always feed the G5 values that it is expecting but seeing as I'll likely have to mess with the duty cycle too I doubt it will be that straightforward.

I could really use the help of an electrical engineer here. I'm very much a hobbyist who lacks some key understanding but has a lot of time to dedicate to experimenting.

Am I going to need a microcontroller for each fan which emulates the PWM and RPM values the G5 is looking for while properly controlling the ATX fans with normal values?

How can I use an oscilloscope to measure the PWM signals of the fans while they're actually being used? Can you put a 'scope in parallel to a signal to measure it? I feel stupid for asking but I genuinely don't know and can't find an answer online.

I'm primed to start a project which might require me to learn to code but I just need a nudge in the right direction. I have time and resources to commit to solving this problem but lack some basic information to get me started.

If you're an expert on this sort of thing then please chime in! I think I've narrowed down what needs to happen, I just need someone smarter than me to tell me how I can make it happen.

Thanks a lot in advance!

P

 

cheesestraws

Well-known member
I'd be curious what your results are with the non-PWM Noctuas.  They still have the tachometer output, but they take a varying power voltage to set the speed instead.  If you leave the PWM wire floating, the PWM ones don't spin up to their full speed.  Also, varying the supply voltage can have kind of variable effects.  The non-PWM ones are meant to have their input voltage varying, and IME behave a bit better.

Personally, what I would be inclined to do (and what I've done on other machines) is to take fans that seem to be going too slowly just across the 12V etc wires and manually tweak the fan speeds with a resistor, and then just ignore the fact that diagnostics is going 'I can't control my fans!'.  I've done this on several machines now (though I wouldn't do it on anything historically important), and personally I don't think PMG5s are rare enough to be too precious about them.  That said, I'm aware that some people would find the failing diagnostics incredibly annoying, so I offer this up for what it is worth :) .

 

CircuitBored

Well-known member
Personally, what I would be inclined to do (and what I've done on other machines) is to take fans that seem to be going too slowly just across the 12V etc wires and manually tweak the fan speeds with a resistor, and then just ignore the fact that diagnostics is going 'I can't control my fans!'. 


This is precisely what a friend of mine suggested. Why do all this modification if it "works"?

I'll give your suggestion a try! As of tomorrow I'll have five G5s so I'm agreed that they're not rare (save the Quad, 2.7 and "Power-iMac" models). I have so many fans lying around that you would not believe.

 

cheesestraws

Well-known member
This is precisely what a friend of mine suggested. Why do all this modification if it "works"?
My take on this is that you should get it to the point where it works for what you need, and then leave it, because otherwise you'll go round and round in circles trying to find the perfect solution and you'll still have a computer with loud fans :) .

The only machine I've really bothered with dealing with the diagnostics is one where it's basically unattended and the fans are underspecced, and I do actually want it to be able to email me when one of its fans completely dies or it overheats.

 
Top