So how do I set the fan limits back to their old values?
I don't mind if the fans spin up to 14k RPM when the CPUs are under load. But right now, they're spinning even when the CPUs are idle.
You probably don't need to set the limits back to their old values, as changing them requires some effort (see below). Check to see that the board isn't changing the Fan Mode to Full Speed. If a temp issue or fan issue is detected by the board, it will switch to Full Speed. If you change the Fan Speed via command utility of IPMIView and the board believes something is amiss, it will change the Fan Speed back to Full Speed. You can go back and forth with the board changing the setting every few seconds only to have the board change it back to Full Speed. If you make any Fan setting changes that would potentially fix the issue, you must restart the BMC, else the board will continually switch back to Full Speed even if the new settings are correct. Fortunately you don't have to restart the server, power down or unplug from A/C, just reset the BMC.
I had similar issues with my Supermicro - X9SRL-F unRaid build in a Consumer Phanteks Enthoo Pro case with a built in PWM hub fan controller. On initial boot using a Noctua NF-A9 PWM Fan on the CPU cooler directly connected to the board (fan 2) and the built in low RPM case fans connected to the PWM hub connected to the board (fan 1), the fans would surge up and down until after a few minutes they settled in at a lower RPM.
Following this advice on the
lime-tech/unraid forums
NOTE:
When plugging any fan other than a SuperMicro fan into a SuperMicro motherboard, you need to adjust the IPMI fan thresholds, otherwise the board will detect the fan as spinning too slow, and it will compensate by spinning all of the other fans up to full speed. You can fix this with the IPMITOOL or IPMIUTIL.
I began tinkering with the thresholds for these much lower speed fans to try and resolve the surging up and down on bootup.
Although SMC provides several tools including IPMIView and command line tools like SCMPITool and IPMICFG tools for different OS's, I couldn't figure out how to set the new thresholds with those tools. I used the
sourceforge ipmiutil tool to set the thresholds using the following command:
ipmiutil.exe sensor -N *IP address of IPMI interface* -U *Username* -P *Password* -n *snum* -l *lower threshold* -h *upper threshold*
The default values appear to be 0 and 19050. Although I've noticed rounding when making small changes, so the defaults may be 0 and 19k.
To change fan thresholds you identify the SNum of the fan port on the board and set each one individually.
To find the SNum of the fans (add the -q switch for the current thresholds)
ipmiutil.exe sensor -N <IP address of IPMI interface> -U <username> -P <password> -c -g fan
OR using SMCIPMITool in Shell mode: SMCIPMITool.exe <IP> <username> <password> shell
>ipmi sensor --full | FAN
After setting more appropriate thresholds for the fans I was using, I must have set the lower thresholds too high and noticed all fans quickly spun up to max speed. Checking the Fan Mode it was set to Full Speed. Changing it to Standard only lasted a few seconds and then checking it again it was at Full Speed. I continually lowered the lower threshold until it stopped doing that and eventually decided to set the lower threshold to zero. While setting the thresholds may have some effect on fan speeds, I believe that they serve more to alert the board when fan speeds are out of alignment. If too high - an alarm, which is nice, if too low - panic and ramp all fans to full speed. In my case I found that setting (or leaving) the lower threshold at zero worked best. I thought that setting the the lower threshold would help keep a minimum fan speed but it appears to only trigger an alarm state.