Hi
Here’s a Home Assistant add-on I’ve been working on: the HA iDRAC Controller. This add-on aims to provide control over Dell PowerEdge server fan speeds based on CPU temperature, as well as monitor various server metrics via IPMI.
There is a lot of AI generated code in the project (and in this post, Gemini wrote the thank you to itself, for example)
Please Note: This is currently a WORK IN PROGRESS and should be considered ALPHA/BETA quality. Use with caution, especially the fan control features, as incorrect configuration could potentially lead to server overheating if not monitored. I’m sharing this early to get feedback and see if there’s interest from the community.
Current Features (as of v0.1.x - [Current Date: May 19, 2025]):
- Dynamic Fan Control: Adjusts fan speeds based on the hottest detected CPU core temperature using a configurable 3-tier threshold system (Base Speed, High Speed, Critical Temp override).
- Server Monitoring via MQTT Discovery: Automatically creates sensors in Home Assistant for:
- Individual CPU Temperatures (°C)
- Hottest CPU Temperature (°C)
- Inlet Temperature (°C)
- Exhaust Temperature (°C)
- Individual Fan Speeds (RPM)
- Power Consumption (Watts)
- Target Fan Speed Percentage (or “Dell Auto”)
- Add-on Connectivity Status
- Web UI (via Ingress):
- View live server status (temperatures, fan speeds, power).
- View the currently active “Simple Fan Mode” settings.
- (Basic placeholder for an advanced multi-point fan curve editor - simple mode from HA config is primary).
- Configurable: iDRAC credentials, fan thresholds, temperature units (C/F), MQTT details, and logging level are configurable via the Home Assistant add-on panel.
Here’s a screenshot of the MQTT sensor output:
Prerequisites:
- A Dell PowerEdge Server with iDRAC (tested on an R720 with iDRAC7, should work with others).
- IPMI over LAN must be enabled in your iDRAC settings (see README for general instructions).
- An MQTT broker (like the Mosquitto add-on) configured in Home Assistant.
Installation:
- Add the Repository to Home Assistant:
- In Home Assistant, go to Settings > Add-ons.
- Click the “ADD-ON STORE” button.
- Click the three-dots menu (⋮) in the top right and select “Repositories”.
- Paste the following URL:
https://github.com/Aesgarth/HA-iDRAC
- Click “ADD” and then “CLOSE”.
- Install the Add-on:
- Refresh the Add-on Store page.
- The “HA iDRAC Controller” add-on should appear (likely under “Aesgarth’s Custom iDRAC Add-on” or similar).
- Click on it and then click “INSTALL”.
Configuration: Please see the detailed README.md file in the add-on’s directory for full configuration instructions, including enabling IPMI on your iDRAC and details on all the add-on options.
Current Status & Known Issues:
- Alpha/Beta Stage: This is actively being developed. While the core fan control based on the simple 3-tier threshold mode and temperature/fan/power monitoring is working in my tests, there might be bugs.
- CPU Temperature Parsing: The current parsing for generic CPU temperature sensors (like those on an R720 named just “Temp”) is based on the output I have. This might need adjustment for other server models.
- Disk Health Monitoring: Planned, but not yet implemented.
- Advanced Fan Curve UI: The UI for an advanced multi-point fan curve is present in the web panel but is not yet the primary driver for the fan control logic (which uses the simpler thresholds from the HA configuration tab).
Feedback & Contributions Welcome!
I would greatly appreciate any feedback, bug reports, or feature suggestions. If you’re comfortable testing a work-in-progress add-on and have a Dell server, I’d love to hear how it works for you.
- GitHub Repository: https://github.com/Aesgarth/HA-iDRAC
- Report Issues: https://github.com/Aesgarth/HA-iDRAC/issues
A big thank you to Gemini for their extensive help in troubleshooting and developing the Python code and add-on structure!
Hopefully someone might find this useful.
Thanks for looking!