Bonjour à tous,
Puisque je n'ai pas trouvé de petit soft permettant de gérer facilement et d'une facon assez souple la cadence du celeron de ce trés cher EEEPC (BAH y'en a mais sous windaube),j'ai décidé d'en scripter un...j'aurai aimé le faire en python pour qu'il soit plus mieux....mais....bon avis aux amateurs.
Plutot que de démarrer avec des cadences préfixées,il est plus souple à mon sens,vu l'engin,de pouvoir régler à tout moment la configuration du CPU,afin d'économiser la batterie ou si on est branché de demander plus de puissance à l'eeepc.
Bref ce petit soft vous permettra de jongler assez facilement avec les réglages de vitesse de bus du CPU mais aussi de jouer à volonté avec la vitesse du ventilo qui décoiffe je vous prévient par avance!!!
Prérequis :
-Un EEEPC... 🙂
-Je dispose pour ma par d'un EEEPC 701 avec un bios version 703(je n'ai pas fait de test avce les autres)
-Le module eee.ko sans quoi rien est "débridale"
-si ce n'est pas le cas compiler le avec la procédure donnée :
ICI
Ensuite copier le script suivant dans un fichier texte à l'aide d'un editeur de texte.Pour réaliser j'ai utilisé kate,tout en etant sous xubuntu,mais mouspad ou gedit ferons l'affaire.
#/bin/sh
#PROCEEE V1.1 FEV 2008
#Fi@skosoft ltd corp. realizzed
#by Stef.PIERRE Marseille
#sudo apt-get remove SARKO!!!!!! and BILL!!! :)
#sudo apt-get install freedom!!!
clear
echo -e "\033[32;7;1m PROCEEE "
echo -e "\033[0;32m"
INIT=$(cut -c1-8 /proc/eee/fsb)
if [ "$INIT" = "70 24 0" ]
then CONF="def";VSET=0;CL=32
else CONF="man";VSET=1;CL=33
fi
FSB=$(cut -c1-3 /proc/eee/fsb)
FREQ=$(((900*$FSB)/100))
if [ $FREQ -gt 900 ]
then CPU="\033[33;5;1m"
else CPU="\033[32;1m"
fi
ROT=$(cut -c1-5 /proc/eee/fan_rpm)
TEMP=$(cut -c26-27 /proc/acpi/thermal_zone/TZ00/temperature)
grep -q 0 /proc/eee/fan_manual
if [ $? -eq 0 ]
then CLV="\033[0;32;1m"
VENT="(auto.)"
else VENT="(manu.)";CLV="\033[0;33;5;1m"
fi
echo
echo "PROCESSEUR(MHz) FSB(MHz) V(set) CONF. VENTILATEUR(T/min) TEMPERATURE(°C)"
echo -e -n "$CPU $FREQ"
echo -e -n "\033[0;32;1m $FSB"
echo -e -n "\033[0;32;1m $VSET"
echo -e -n "\033[$CL;1m $CONF"
echo -e -n "\033[0;32;1m $ROT";echo -e -n "$CLV$VENT"
echo -e -n "\033[0;32;1m $TEMP"
echo
echo
echo
echo
echo -e "\033[1m 1-configuration par défaut"
echo
echo -e "\033[1m 2-configuration manuelle "
echo
echo -e "\033[1m 3-ventilateur "
echo
echo -e "\033[1m 4-benchmark"
echo
echo -e "\033[1m 5-rafraichir "
echo
echo -e "\033[1m 6-quitter "
echo
echo
read M
case $M in
1) MM=1;;
2) MM=2;;
3) MM=3;;
4) MM=4;;
5) sudo bash proceee.sh;;
6) clear;echo -e "\033[32;7;5;1m";echo "A FI@SKOSOFT REALIZZED ";echo "SUDO APT-GET REMOVE SARKO ";echo "SUDO APT-GET INSTALL FREEDOM";echo -e "\033[0;32m";exit;exit;;
*) sudo bash proceee.sh;;
esac
##############TESTEEE##############
if [ $MM -eq 4 ]
then
clear
echo -e "\033[32;7;1m TESTEEE "
echo -e "\033[0;32m"
INIT=$(cut -c1-8 /proc/eee/fsb)
if [ "$INIT" = "70 24 0" ]
then CONF="def";VSET=0;CL=32
else CONF="man";VSET=1;CL=33
fi
FSB=$(cut -c1-3 /proc/eee/fsb)
FREQ=$(((900*$FSB)/100))
if [ $FREQ -gt 900 ]
then CPU="\033[33;1m"
else CPU="\033[32;1m"
fi
ROT=$(cut -c1-5 /proc/eee/fan_rpm)
TEMP=$(cut -c26-27 /proc/acpi/thermal_zone/TZ00/temperature)
grep -q 0 /proc/eee/fan_manual
if [ $? -eq 0 ]
then CLV="\033[0;32;1m"
VENT="(auto.)"
else VENT="(manu.)";CLV="\033[0;33;1m"
fi
echo
echo "PROCESSEUR(MHz) FSB(MHz) V(set) CONF. VENTILATEUR(T/min) TEMPERATURE(°C)"
echo -e -n "$CPU $FREQ"
echo -e -n "\033[0;32;1m $FSB"
echo -e -n "\033[0;32;1m $VSET"
echo -e -n "\033[$CL;1m $CONF"
echo -e -n "\033[0;32;1m $ROT";echo -e -n "$CLV$VENT"
echo -e -n "\033[0;32;1m $TEMP"
echo
echo
echo -e "\033[0;32;1m --> Arretez les roues pour revenir au menu "
echo
glxgears;sudo bash proceee.sh
fi
################# defaut #####################################
if [ $MM -eq 1 ]
then
FSB1=70
COND=0
MM=2
VV=0
k=0
####### DIMINUER LA FREQUENCE BUS PAS: DE1MHZ###
if [ $FSB1 -le $FSB ]
then FSB2=$FSB
while [ $FSB2 -gt $FSB1 ]
do
FSB2="$(($FSB2-1))"
sudo echo "$FSB2 24 1" >> /proc/eee/fsb
if [ $k -eq 0 ]
then FREQ0=$(((900*$FSB)/100))
clear;echo -e "\033[0;33;7;5;1m PROCEEE...ING ";echo;echo
echo -n -e "\033[0;32;1m$FREQ0 "
fi
echo -n -e "\033[0;32;1m="
k="$(($k+1))"
FREQ=$(((900*$FSB2)/100))
done
echo -n -e "\033[0;32;1m> $FREQ"
echo -n -e "\033[0;32;1m DEF.V(set)=0"
fi
################## REMONTER LA FREQUENCE 1MHZ de pas##################
if [ $FSB1 -ge $FSB ]
then FSB2=$FSB
while [ $FSB2 -lt $FSB1 ]
do
FSB2="$(($FSB2+1))"
sudo echo "$FSB2 24 1" >> /proc/eee/fsb
if [ $k -eq 0 ]
then FREQ0=$(((900*$FSB)/100))
clear;echo -e "\033[0;33;7;5;1m PROCEEE....ING ";echo;echo
echo -n -e "\033[0;32;1m$FREQ0 "
fi
echo -n -e "\033[0;32;1m="
k="$(($k+1))"
FREQ=$(((900*$FSB2)/100))
done
echo -n -e "\033[0;32;1m> $FREQ"
echo -n -e "\033[0;32;1m DEF.V(set)=0"
fi
sudo echo "70 24 0" >> /proc/eee/fsb
sudo echo "0" >> /proc/eee/fan_manual
sleep 3
sudo bash proceee.sh
fi
##########MODE MANUEL#####
if [ $MM -eq 2 ]
then
clear
SEC=0
while [ $SEC -eq 0 ]
do
clear
echo -e "\033[32;5;7;1m PROCEEE "
echo -e "\033[0;32m";echo
echo -n -e "\033[0;32;1mVotre cpu est cadencé à: ";echo -e -n "\033[32;7;1m $FREQ MHz ";echo -e "\033[0;32m";echo
echo -n -e "\033[0;32;1mRéglage souhaité(360<R<990)? :";echo -e -n "\033[32;7;1m";read FREQ1
FSB1=$(echo "scale=0; ((($FREQ1*100)/900)*100)/100"|bc)
VV=1
if [ $FSB1 -le 110 ] ###### FSB MAX ######
then SEC=1
if [ $FSB1 -ge 40 ] ##### FSB MIN #####
then SEC=1
else SEC=0
fi
fi
done
k=0
if [ $FSB1 -le $FSB ]
then FSB2=$FSB
while [ $FSB2 -gt $FSB1 ]
do
FSB2="$(($FSB2-1))"
sudo echo "$FSB2 24 1" >> /proc/eee/fsb
if [ $k -eq 0 ]
then FREQ0=$(((900*$FSB)/100))
clear;echo -e "\033[0;33;7;5;1m PROCEEE...ING ";echo;echo
echo -n -e "\033[0;32;1m$FREQ0 "
fi
FREQ=$(((900*$FSB2)/100))
echo -n -e "\033[0;32;1m="
k="$(($k+1))"
done
echo -n -e "\033[0;32;1m> $FREQ"
FREQ=$(((900*$FSB2)/100))
echo
echo
echo -e -n "\033[0;32;1mSuccesfull!! :-) processeur cadencé à :";echo -e -n "\033[33;7;1;5m$FREQ MHz"
echo -e "\033[0;32m"
fi
if [ $FSB1 -ge $FSB ]
then FSB2=$FSB
while [ $FSB2 -lt $FSB1 ]
do
FSB2="$(($FSB2+1))"
sudo echo "$FSB2 24 1" >> /proc/eee/fsb
if [ $k -eq 0 ]
then FREQ0=$(((900*$FSB)/100))
clear;echo -e "\033[0;33;7;5;1m PROCEEE...ING ";echo;echo
echo -n -e "\033[0;32;1m$FREQ0 "
fi
FREQ=$(((900*$FSB2)/100))
echo -n -e "\033[0;32;1m="
k="$(($k+1))"
done
echo -n -e "\033[0;32;1m> $FREQ"
FREQ=$(((900*$FSB2)/100))
echo
echo
echo -e -n "\033[0;32;1mSuccesfull!! :-) processeur cadencé à :";echo -e -n "\033[33;7;1;5m$FREQ MHz"
echo -e "\033[0;32m"
fi
echo
echo
echo -n -e "\033[0;32;1mVoulez vous régler votre ventilateur:(o/n)?";echo -e -n "\033[32;7;1m";read REGV
case $REGV in
"o") MM=3;;
*) sudo bash proceee.sh;;
esac
fi
########################REGLAGE VENTILO############################"
if [ $MM -eq 3 ]
then ROT=$(cut -c1-5 /proc/eee/fan_rpm);TEMP=$(cut -c26-27 /proc/acpi/thermal_zone/TZ00/temperature)
clear
echo -e "\033[32;7;1m FANEEE "
echo
echo -e -n "\033[0;32;1m$ROT(T/min) ";echo -e -n "$CLV$VENT";echo -e -n "\033[0;32;1m TEMP: $TEMP°C "
echo
echo
manu=1
grep -q 0 /proc/eee/fan_manual
if [ $? -eq 1 ]
then
echo
echo
echo -e -n "\033[0;32;1mMettre le ventilateur en auto(o/n)?:";echo -e -n "\033[32;7;1m";read AUTO
if [ "$AUTO" = "o" ]
then
sudo sh -c 'echo 0 > /proc/eee/fan_manual'
manu=0
fi
fi
SECV=0
if [ $manu -eq 1 ]
then
while [ $SECV -eq 0 ]
do
echo
echo
echo -e -n "\033[0;32;1mValeur indice (30<V<100)?:";echo -e -n "\033[32;7;1m";read MAN;echo
if [ $MAN -le 100 ]
then SECV=1
if [ $MAN -ge 30 ]
then SECV=1
else SECV=0
fi
fi
done
MAN0=$(cut -c1-3 /proc/eee/fan_speed)
if [ $MAN -le $MAN0 ]
then MAN1=$MAN0
while [ $MAN1 -gt $MAN ]
do
MAN1="$(($MAN1-1))"
sudo echo "1" >> /proc/eee/fan_manual
sudo echo "$MAN1" >> /proc/eee/fan_speed
done
fi
if [ $MAN -ge $MAN0 ]
if [ $MAN0 -eq 0 ]
then MAN0=30
fi
then MAN1=$MAN0
while [ $MAN1 -lt $MAN ]
do
MAN1="$(($MAN1+1))"
sudo echo "1" >> /proc/eee/fan_manual
sudo echo "$MAN1" >> /proc/eee/fan_speed
done
fi
fi
sleep 3
sudo bash proceee.sh
fi
Une fois le script coller dans un fichier texte enregistré le sous le nom : proceee.sh
et mettez le dans votre /home.
Pour le lancer il vous faudra taper dans un terminal (xterm pour xubuntu) :
sudo bash proceee.sh
Des fichiers accessibles uniquement en root sont en jeux dans le sript c'est pourquoi il faut se mettre en superutilisateur sudo.
Une fois lancé voici le main menu!!
1-configuration par défaut(usine)
2-configuration manuelle(vitesse réglée au clavier,et ventilo juste derriere si souhaité)
3-ventilateur
4-benchmark(on lance l'affichage des fps dans le term. glxgears)
5-rafraichir(pour rafraichir l'affichage des valeurs vitesse du ventilo,temperature)
6-quitter
En vrac:
- J'ai limité intentionellement les butées en cadence: 360<F<990 en dessous ca plante et au dessus aussi.
-990 MHZ représente un léger overclock par rapport au celeron 900MHz nominal(trés suffisant pour la bete...j'obtient environ 700fps en 990 contre 420fps en 630 réglé usine.
-J'ai mis quelques indicateurs importants en clignotant...et couleurs..le clignotement ne fonctionne pas bizarrement avec Xfce4-terminal...vous pouvez le lancer avec xterm...je 'ai pas éssayé avec gnome-terminal.
-il y aura un léger décalage entre la valeur entrée au clavier 360<f<990 et le résultat,ceci est du au fait que j'ai du arrondir sans les decimales(bash gere pas ou mal les nombres decimaux avec bc peut etre?
-Le ventilateur pourra se régler manuellement entre environ 2000t/min et 5900t/min..ca décoiffe!! 🙂 avec un indice de réglage entre 30 et 100.
-L'affichage donne entre autre la vitesse de rotation du ventilo et la temperature capteur TZ00 thermal_zone.
-On pourrait certainement allé plus loin d'ans l'overclock mais c'était pas le but recherché j'ai lu 1,3 Ghz ...ca me parrait beaucoup pour le bestiaux.
-Le sript n'est pas optimisé en ecriture mais plus facile à modifier pour ceux qui le souhaiteraient.
-C'est pas un model de script 🙁 mais il est efficace et ne plante pas l'engin,j'ai blibé l'affaire pour qu'on ne puisse pas mettre n'importe quoi dans les fichiers sensibles...gestion du ventilo en particulier.Le script par de la valeur de fsb en cours pour monter ou descendre en douceur(à coup de 1MHz incrémenté ou décrémenté dans une boucle while ) c'est ce qui évite les plantages...on peut ainsi passé d'un underclock à 360 ,à un overclock à 990 sans plantage!!
- idem pour le ventilo pour éviter les coups de belier et pas le passer de 0 à 6000t/min d'un coup.
- j'ai incorpré glxgears,le seul indicateur que j'avais à dispo pour les perfs...j'ai appelé ca pompeusement benchmark!! 😃
- des indicateurs en couleurs et:ou clignotant sontla pour bien visualiser ce qui est en jeux...config manuelle ou auto ou défaut(usine)
_ il sera trés aisé de revenir aux réglages usine......
voilou...si un super programmeur pouvez s'en emparer!!!!! ca serait cool pour la version 1.1!! 😉
J'attends le retour de vos essais et vos tests et vos eventuels problemes..... enjoy.. 🙂
A plus