Chassis fan header not working

Got 2 Noctua NF-A14 iPPC-2000 with 3 pin connector. Both work on the ‘additional fan connector’ - the one next to CPU fan connector - but not on the ‘chassis Fan Connector’. I am using the Corsair CP-9020186-UK SF750 as the PSU and Ubuntu 21.04 as the OS.

  • OS: Ubuntu 21.04
  • GPU: ATI Radeon HD 5570 1GB
  • Storage: Samsung 970 EVO Plus 500 GB PCIe NVMe M.2 (2280)
  • PSU: Corsair CP-9020186-UK SF750

Edit: Got fan 2nd working using the PSU directly with a Molex-to-3 pin fan adaptor. If is a hardware fault, at least now I don’t have to RMA it.

1 Like

Is it possible that it is because the “chassis fan connector” has three pins, but only two of them are connected? HiFive Unmatched Getting Started Guide

@SunWukong I did say the Molex adaptor was for 3 pin fans, but it actually only has 2 pins, with just empty space in the socket where the 3rd pin should be - the same pin that is not powered on the Unmatched. despite that, it works perfectly fine.

My case has 2 fans and neither fan worked with either the chassis fan or additional fan connectors on the HiFive.

When I ran out of time last night, I just did as you did and connected them both directly to PSU with adapter (haven’t rebooted with that connection yet since I was researching NVME Boot documentation and then it was bedtime). I’ll give that a try tonight and worry about the fan power on the board at a later date. Thanks for posting this, though, so I know I wasn’t crazy. :slight_smile:

hello,
i observed the same “issue”, with the case fan of my QBOne case, so i finally use the fan’s molex adapter as well.
I remember having seen a slight move of the fan as i connected its power cord to one off the free Unmatched fan plug, so maybe the unmatched has not enough power for some case fans ? (mine is a 12x12 cm, slim width).
Anyway the molex adapter directly on the PSU has done the job, so i didn’t try again.

What kind of adapter did you use?
I intend to use the QB one as well :slight_smile:
Thanks and cheers
Martin

the molex adapter was already provided on the slim case fan power cord (good idea in fact to provide 2 types of input !) so you may choose power source being ITX board case fan 2/3 pins, or as fallback a Molex Power from the PSU (definitively no controlled rotation speed then).

This is not a hardware fault. The fans are firmware or/and software controllable. These are enabled in U-Boot if you use newer FUSDK releases. Ubuntu might not have picked up the patches yet.

hello,
i’ll try with a more recent FUSDK (i’ve just tested the provided one).
My current tests are on Ubuntu 21 (running XFCE4 nicely), but i ll switch back to FUSDK /OpenEmbedded very soon, trying to build a full image on another SDCard. Thanks.

Just tested with a FUSDK image and the chassis fan works just fine while on Ubuntu it does not work.

2 Likes

When testing my assembly, with no boot media connected (no SD card, blank NVMe drive), I noticed that the chassis and system fans behaved completely randomly. By repeatedly powering the board off and one again, either none, one, or both fans would start spinning.

The hardware doesn’t have “initial state”. It’s up to U-Boot SPL to reset everything into the initial state.

That would be an improvement suggestion for eventual future board revisions. Depending on the case and loadout, temperatures could get quite high if there is a boot problem.

The notes in the schematics do suggest that the intent was that the fans would be spinning until firmware takes over.

I recently got started with setting up my HiFive Unmatched and have been walking through the intial setup.

Whats going right:

  • I’ve got the 3 LEDs glowing.
  • CPU fan is spinning.

What not going right:

  • Chasis fan is not spinning and I have confirmed the fan works.

Do I need to do some other setup before the chasis fan will work? From reading the previous posts it seems like people are working around this by connecting the fan directly to a power supply. Is this the only way to fix this?

I haven’t tried this, but it looks like you could add the chassis fan to the Unmatched device tree. In linux/arch/riscv/boot/dts/sifive/hifive-unmatched-a00.dts, you would add:

	fan1: chassis-fan {
		compatible = "pwm-fan";
		pwms = <&pwm1 3 7812500 PWM_POLARITY_INVERTED>;
		cooling-levels = <255 153 85 25 0>;
	};

And then turn it on with some systemd commands. It may also be possible to link it to the temperature sensor and have the fan speed change with temperature.

1 Like

I’m sorry I did not update my progress with this. Apparently, once I put the SD Card in the system, the chasis fan worked. My build is probably quite different than most though, so your code my help someone out there. Thanks for reaching out :pray: