README.MD

added readme
This commit is contained in:
2025-07-23 13:56:17 +02:00
parent 2019e41bd6
commit 70bd16f8e8

52
README.md Normal file
View File

@@ -0,0 +1,52 @@
# Dell OptiPlex 3050 Micro Fan Control Script
This Bash script provides simple, temperature-based fan control for the **Dell OptiPlex 3050 Micro**. It's designed to reduce idle fan noise by lowering the fan speed when the system is cool, while still ramping it up appropriately under load.
---
## 📋 Overview
By reading CPU temperature from the system's `hwmon` interface and adjusting the fan speed via PWM (pulse-width modulation), this script allows you to override the default, often overly aggressive fan behavior.
---
## ⚙️ How It Works
1. **Monitors CPU Temperature**
- Reads from: `/sys/class/hwmon/hwmon1/temp1_input`
*(Path may vary depending on your system — adjust as needed.)*
2. **Controls Fan Speed**
- Writes PWM values to: `/sys/class/hwmon/hwmon2/pwm1`
*(This controls the fan speed. Also may vary.)*
3. **Temperature-Based Fan Speed Logic**
| Temperature (°C) | Fan Speed (PWM) | Approximate Speed |
|------------------|------------------|--------------------|
| < 50°C | 25 | ~25% |
| 5059°C | 45 | ~50% |
| 6064°C | 60 | ~75% |
| 6574°C | 120 | High |
| ≥ 75°C | 255 | Maximum |
| ≥ 85°C | 255 + warning | Emergency max speed|
4. **Failsafe Mechanism**
- If temperature exceeds **85°C**, the fan is forced to maximum and a message is logged to `/dev/kmsg`.
---
## 🧪 Requirements
- A Linux system with PWM-capable fan control (`/sys/class/hwmon/...`)
- Root access to write PWM values
- Adjusted system paths if `hwmon1` and `hwmon2` differ on your machine
---
## 🚀 Usage
1. Make the script executable:
```bash
chmod +x fan_control.sh