diff --git a/README.md b/README.md index 54208e4..2200bce 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,106 @@ -# homeassistant-config +# Home Assistant - OpenHardwareMonitor Integration -Home Assistant configuration files and packages \ No newline at end of file +This repository contains Home Assistant configuration packages, including integration with OpenHardwareMonitor for hardware monitoring. + +## OpenHardwareMonitor Package + +Monitors hardware sensors from two servers running OpenHardwareMonitor: +- Server 1: `http://10.0.0.243:8085/` +- Server 2: `http://10.0.0.244:8085/` + +### Installation + +1. **Copy the package file** to your Home Assistant packages directory: + ```bash + cp packages/openhardwaremonitor.yaml /config/packages/ + ``` + +2. **Ensure your `configuration.yaml` has packages enabled**: + ```yaml + homeassistant: + packages: !include_dir_named packages + ``` + +3. **Restart Home Assistant** + +### Sensors Created + +For each server (243 and 244), the following sensors are created: + +- **CPU Temperature** (`sensor.server_243_cpu_temperature` / `sensor.server_244_cpu_temperature`) + - Monitors CPU package or core temperature + - Unit: °C + - Update interval: 30 seconds + +- **CPU Load** (`sensor.server_243_cpu_load` / `sensor.server_244_cpu_load`) + - Monitors total CPU load + - Unit: % + - Update interval: 30 seconds + +- **RAM Usage** (`sensor.server_243_ram_usage` / `sensor.server_244_ram_usage`) + - Monitors memory usage + - Unit: GB + - Update interval: 30 seconds + +- **GPU Temperature** (`sensor.server_243_gpu_temperature` / `sensor.server_244_gpu_temperature`) + - Monitors GPU core temperature (NVIDIA/AMD) + - Unit: °C + - Update interval: 30 seconds + +### Requirements + +- OpenHardwareMonitor must be running on both servers with web server enabled +- Default port: 8085 +- Servers must be accessible from Home Assistant instance + +### Customization + +To modify the scan interval, edit the `scan_interval` value in `openhardwaremonitor.yaml`: +```yaml +rest: + - resource: http://10.0.0.243:8085/data.json + scan_interval: 30 # Change this value (in seconds) +``` + +To add additional sensors, you can follow the same template pattern and navigate the JSON structure from OpenHardwareMonitor's `/data.json` endpoint. + +### Troubleshooting + +**Sensors show "unknown":** +- Verify OpenHardwareMonitor is running on the target servers +- Check that the web server is enabled in OpenHardwareMonitor settings +- Test the endpoint manually: `http://10.0.0.243:8085/data.json` +- Check Home Assistant logs for any REST sensor errors + +**No GPU sensor data:** +- Some systems may not have GPU monitoring enabled +- Verify OpenHardwareMonitor detects your GPU +- Check if the GPU sensor name matches the template pattern + +### Example Dashboard Card + +```yaml +type: entities +title: Server Hardware Monitoring +entities: + - entity: sensor.server_243_cpu_temperature + name: Server 243 CPU Temp + - entity: sensor.server_243_cpu_load + name: Server 243 CPU Load + - entity: sensor.server_243_ram_usage + name: Server 243 RAM + - entity: sensor.server_243_gpu_temperature + name: Server 243 GPU Temp + - entity: sensor.server_244_cpu_temperature + name: Server 244 CPU Temp + - entity: sensor.server_244_cpu_load + name: Server 244 CPU Load + - entity: sensor.server_244_ram_usage + name: Server 244 RAM + - entity: sensor.server_244_gpu_temperature + name: Server 244 GPU Temp +``` + +## License + +This configuration is provided as-is for personal use.