Supermicro/Fan Speed

From Omnia
Revision as of 08:59, 16 August 2024 by Kenneth (talk | contribs) (Created page with "== Fan Controls by Emperical Testing == Reference Material - Supermicro X9/X10/X11 Fan Speed Control | ServeTheHome Forums https://forums.servethehome.com/index.php?resources/supermicro-x9-x10-x11-fan-speed-control.20/ Fan control valuse values are: Standard: 0 Full: 1 Optimal: 2 Heavy IO: 4 These can be set using ''ipmicfg'' util. A bit of testing confirmed that this is effectively correct (even if SM might disagree on some fine details). Fans on...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Fan Controls by Emperical Testing

Reference Material - Supermicro X9/X10/X11 Fan Speed Control | ServeTheHome Forums
https://forums.servethehome.com/index.php?resources/supermicro-x9-x10-x11-fan-speed-control.20/

Fan control valuse values are:

   Standard: 0
   Full: 1
   Optimal: 2
   Heavy IO: 4

These can be set using ipmicfg util.

A bit of testing confirmed that this is effectively correct (even if SM might disagree on some fine details).

Fans on these boards are controlled in two zones:

- CPU or System fans, labelled with a number (e.g., FAN1, FAN2, etc.) - zone 0
- Peripheral zone fans, labelled with a letter (e.g., FANA, FANB, etc.) - zone 1

On these boards there are 4 levels of speed control:

- Standard: BMC control of both fan zones, with CPU zone based on CPU temp (target speed 50%) and Peripheral zone based on PCH temp (target speed 50%)
- Optimal: BMC control of the CPU zone (target speed 30%), with Peripheral zone fixed at low speed (fixed ~30%)
- Full: all fans running at 100%
- Heavy IO: BMC control of CPU zone (target speed 50%), Peripheral zone fixed at 75%

You can also set the PWM duty cycle for each of the fan zones. PWM values are set 64 steps using hex values from 00-FF (ox00 to 0x64). 0x00 is minimum speed, 0x64 is full speed, and 0x32 is 50%, etc. Each "zone" is set seperately using the following command:

ipmitool raw 0x30 0x70 0x66 0x01 0x<z> 0x<n>
- where "z" is the zone (0 0r 1)
- where "n" is the duty cycle (0x00..0x64)
Example: Set CPU zone (0) to 50%:
 ipmitool raw 0x30 0x70 0x66 0x01 0x00 0x32
Example: Set Perpipheral zone (1) to 25%:
 ipmitool raw 0x30 0x70 0x66 0x01 0x01 0x16

Big example:

#set fan mode to "full"
ipmitool raw 0x30 0x45 0x01 0x01
#set fans in "system" zone to 37.5%
ipmitool raw 0x30 0x70 0x66 0x01 0x00 0x24
#set fans in "peripheral" zone to 25%
ipmitool raw 0x30 0x70 0x66 0x01 0x01 0x16

keywords