Fan-Control-Script für MacPro´s mit CPU-Upgrade

Sascha_77

Sascha_77

Aktives Mitglied
Thread Starter
Dabei seit
23.10.2005
Beiträge
763
Reaktionspunkte
98
Habe mir jetzt mal ein Script gebaut welche alle 10 Sekunden die Temps checkt und die Lüfter entsprechend anpasst. Benötigt wird dafür "Hardwaremonitor" und smcFanControl im Application-Folder. Das script habe ich mittels "Lingo" als User-Daemon eingebunden und wird beim Sys-Start geladen. Da script läuft in einer Dauerschleife. Zieht aber nichts an Performance. Merkt man nicht.

PHP:
#!/bin/bash
#  HEX   U/Min
# 0D48 =  850
# 0ED8 =  950
# 1068 = 1050
# 11F8 = 1150
# 1388 = 1250
# 1518 = 1350
#
# F0 = CPU Fan
# F2 = Exhaust Fan

while [ true ]  
do
/bin/sleep 10

hwm="/Applications/HardwareMonitor.app/Contents/MacOS/hwmonitor"
smc="/Applications/smcFanControl.app/Contents/Resources/smc"

cpu=`"$hwm" | head -n 1 | cut -c 13-14`

if [[ "$cpu" -gt "20" && "$cpu" -lt "35" ]]; then  # - Zwischen 21 und 34 Grad
	"$smc" -k F0Mn -w 0ED8    
	"$smc" -k F2Mn -w 1068

elif [[ "$cpu" -gt "34" && "$cpu" -lt "51" ]]; then  # - Zwischen 35 und 50 Grad
	"$smc" -k F0Mn -w 1068    
	"$smc" -k F2Mn -w 11F8

elif [[ "$cpu" -gt "50" && "$cpu" -lt "60" ]]; then  # - Zwischen 51 und 59 Grad
	"$smc" -k F0Mn -w 11F8    
	"$smc" -k F2Mn -w 1388

elif [[ "$cpu" -gt "59" && "$cpu" -lt "99" ]]; then  # - Zwischen 60 und 99 Grad
	"$smc" -k F0Mn -w 1518   
	"$smc" -k F2Mn -w 1388
fi
done

Die Tolleranzwerte können natürlich inidividuell angepasst werden. Die config hier ist recht gut für den MacPro 1,1 mit CPU-Upgrade.
Bei neueren Macs drauf achten, ob die Lüfter-Nummern übereinstimmen. Kann sein das die anders sind. Muss dann entsprechend angepasst werden.
 
  • Gefällt mir
Reaktionen: macDriveTeckno, Gebekophli und tomtom007
Kleines Update

Konnte leider meinen ersten Post nicht mehr editieren. Ich habe jetzt die S.M.A.R.T-Überprüfung der Festplatten deaktiviert. Ich hatte mich immer gewundert warum Platten die ich gerade ausgeworfen hatte direkt wieder anliefen. Die SMART-Prüfung von hwmonitor war schuld. Läuft ja alle 10 Sekunden. Wen das auch stört einfach die Zeile:

PHP:
cpu=`"$hwm" | head -n 1 | cut -c 13-14`

gegen das

PHP:
cpu=`"$hwm" -ds | head -n 1 | cut -c 13-14`

ersetzen. Und schon ist Ruhe im Karton. :D
 
Zurück
Oben Unten