Making Noctua fans work (quietly) with a Supermicro motherboard

I've been building a Mini ITX 'quiet-ish' server using a Supermicro motherboard and some Noctua fans.

I noticed sometimes the system would start 'revving' the fans up to max power. Then after a few seconds they would get quiet again. The CPU temps and other temps on the system were stable and not worrying, but popping off the server's cover, I noticed LED8 on the motherboard would blink red every time the fans would ramp up:

Supermicro LED8 Fan failure blinking LED

That LED indicates a 'fan failure' when blinking.

Supermicro Fan low-non-recoverable error

So looking in the IPMI interface, I noticed the Low 'Non-Recoverable' and 'Critical' levels for fan RPM were set kinda high—at least as far as Noctua fans are concerned (ignore the fact that FAN1 is reading as off—I had switched fan plugs earlier when I was moving around a system fan...). Since I bought slightly oversized fans so they could run at lower rpms (and thus quieter), the server-oriented motherboard didn't know what to make of them.

Typically one installs whiny siren-like server fans that spin at 5000+ rpm, and don't worry much about noise. But I do.

So to get the system to accept that it's normal for a fan to go below 500 rpm, I installed ipmitool (sudo apt install -y ipmitool on Debian), and ran:

ipmitool -I lan -U ADMIN -H [IP] sensor thresh FAN1 lower 150 250 300

Replace ADMIN with your IPMI username, and [IP] with your IPMI IP address.

This sets the NR rpm level to 150, LC to 250, and lower 'non-critical' to 300. Much more suitable for Noctua fans that commonly run under 1k rpm. And IPMI was happy again:

Supermicro fan is normal again

Comments

I used to have a Dell 610 running in my basement. It wanted to run the fans at 15k. I tucked a Pi Zero into it and wrote 298 PWM to the fan rpm pin, since it didn't allow the fan speed to be configured.

Still have the 610, I just don't use it anymore :) the next generation of rackmount dell can fairly easily be spun down without needing a hardware hack, just wrote my own scaling based on CPU temps and then ask ipmitool to change the speed:

ipmitool raw 0x30 0x30 0x02 0xff {hex_speed}

Obviously dell-specific.

Hello Jeff,
Off-topic question, sorry. 😊
Did you write any blog post about your mini-ITX quiet-ish server with Supermicro board? I am interested in building one as TrueNAS server and I really love Supermicro boards.
Thank you.