Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Request: Fan Control for IPMI Integration in Home Assistant #48

Open
FischLord opened this issue Jul 4, 2024 · 1 comment
Open

Comments

@FischLord
Copy link

I would like to propose a new feature for the IPMI integration in Home Assistant. This feature would allow users to control the fan speeds of their servers using IPMI commands. This functionality is particularly useful for users who want to manage the thermal and noise levels of their servers more effectively.

Background

Dell servers, such as the R710 and R720, support IPMI commands to manually set fan speeds. These commands can enable or disable automatic fan control, set fan speeds manually, and manage third-party PCIe card fan behavior. Adding this functionality to the IPMI integration in Home Assistant would greatly enhance its capabilities.

Proposed Commands

Here are the IPMI commands to control fan speeds on Dell R710 and R720 servers:

  1. Enable Automatic Fan Control

    ipmitool raw 0x30 0x30 0x01 0x01
    
  2. Disable Automatic Fan Control

    ipmitool raw 0x30 0x30 0x01 0x00
    
  3. Manually Set Fan Speed

    ipmitool raw 0x30 0x30 0x02 0xff 0x##
    

    Replace ## with the desired fan speed value in hexadecimal (e.g., 0x20 for 32%).

  4. Disable 3rd Party PCIe Card Fan Behavior (Full Thermal Load)

    ipmitool raw 0x30 0xce 0x00 0x16 0x05 0x00 0x00 0x00 0x05 0x00 0x01 0x00 0x00
    
  5. Enable 3rd Party PCIe Card Fan Behavior

    ipmitool raw 0x30 0xce 0x00 0x16 0x05 0x00 0x00 0x00 0x05 0x00 0x00 0x00 0x00
    
  6. Check 3rd Party PCIe Card Fan Behavior

    ipmitool raw 0x30 0xce 0x01 0x16 0x05 0x00 0x00 0x00
    

Implementation

To implement this feature, the following steps should be considered:

  1. Extend the IPMI Integration:

    • Add support for executing custom IPMI raw commands.
    • Provide a user-friendly interface in Home Assistant for sending these commands.
  2. UI Enhancements:

    • Add a section in the IPMI integration settings to control fan speeds.
    • Provide input fields for the user to specify the fan speed and other parameters.
  3. Logging and Monitoring:

    • Implement logging to track changes in fan speeds and other thermal management parameters.
    • Provide a monitoring interface to visualize fan speed changes and their effects.

Additional Resources

For further information on using these commands, refer to:

@ateodorescu
Copy link
Owner

@FischLord have a look at this closed issue #16
This is not something that could be implemented generic because not all servers support it but you will find examples of how to achieve it in that closed issue. ;)
Hope this helps!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants