Votre navigateur ne semble pas prendre en charge le langage JavaScript, vous risquez de ne pas pouvoir accéder à certaines ressources!
Le langage SMS est exclu sur les forums ProgBoards, tout message ne respectant pas la
charte
sera déplacé, modifié, ou supprimé par nos
modérateurs
.
Forum Langages
»
C & Cie.
»
Projet de gestion de ventilo sous linux
Amwus
ProgBoarder
Windows XP
Firefox 2 - Posté le 02/10/2007 à 23:12
Bonjour à tous !
J'envisage très prochainement de développer un petit programme sous linux, qui permettrait de gérer la vitesse de mon ventilo, via l'interface fournie par le module du noyau thinkpad-acpi (anciennement ibm-acpi).
J'ai ainsi accès à une série de fichiers, dont le fichier /proc/acpi/ibm/thermals, qui contient les différentes températures des sondes de températures du pc. J'ai aussi une série de commandes permettant de définir la vitesse de rotation du ventilateur, ou de rendre le controle au bios de la machine.
L'idée est d'isoler chaque température du fichier thermals, et de la comparer à une ou plusieurs températures limites. Ainsi, je teste toutes les variables températures environ toutes les 3 secondes. Si une des températures est supérieure à une température limite (par exemple 52°), le ventilo se déclenche à vitesse=2. Si je dépasse les 56° par ex => vitesse=3 etc. Et si je retombe en dessous de la limite, on décrémente la vitesse (sur mon thinkpad sous linux le ventilo tourne très souvent c'est assez énervant !).
Mon problème numéro 1 est l'isolation des variables de températures. Je pensais utiliser la fonction strtod mais il y a peut être plus simple...
J'aimerais votre avis sur ce projet, suggestions ou autres...
Merci d'avance !
:)
"Engl Amps are the best i've ever used... Not only are they powerfull, but they have charachter too..." R. Blackmore
Francesco
Modérateur
Linux
Mozilla 5 - Posté le 02/10/2007 à 23:29
bonne idée à priori. Je dis à priori puisque je pense que la températere est sous forme décimal. Reste à savoir quelle est le format de la ligne. Tu peux donner un exemple ?
Gates gave you the windows.
GNU gave us the whole house.(Alexandrin)
Amwus
ProgBoarder
Linux
Firefox 2 - Posté le 03/10/2007 à 08:59
en fait le fichier est plus simple que je ne le pensais. Il est de la forme suivante :
temperatures: 40 34 26 40 -128 -128 -128 -128 34 37 36 -128 -128 -128 -128 -128
Donc je pense qu'avec strtod ça ira assez facilement. Strtod va sauter toutes les lettres + espaces jusqu'au premier élément numérique. Au prochain espace, elle le saute aussi jusqu'à l'élément numérique suivant etc etc... Je pense que ça devrait aller...
Petite bizarerie : qd j'ouvre le fichier /proc/acpi/ibm/thermal avec emacs, ça ouvre sans probleme, avec gedit, il n'affiche rien... Est ce vraiment un vrai fichier ? Je veux dire, j'ai aussi accès aux données par la commande :
cat /proc/acpi/ibm/thermal
Voila voila, merci de ta réponse
"Engl Amps are the best i've ever used... Not only are they powerfull, but they have charachter too..." R. Blackmore
zuzuf
ProgBoarder
Linux
Firefox 2 - Posté le 03/10/2007 à 09:13
les fichiers que tu trouves dans /proc ne sont pas de "vrais" fichiers, ils représentent seulement des périphériques, dans le cas des périphériques qui ne stockent pas de données, le contenu de ces fichiers est généré à la lecture, le truc c'est que le pilote n'a pas à gérer toutes les opérations sur ces fichiers (genre déplacement du curseur de lecture dans le fichier), ce qui peut empêcher de les lire avec certains logiciels. mais cat devrait toujours fonctionner.
Linux a un noyau, windows un pepin
Amwus
ProgBoarder
Linux
Firefox 2 - Posté le 03/10/2007 à 10:21
ha d'accord... et pour lire un tel fichier dans un programme C, un simple fopen suffira ou je dois utiliser les routines propres à Linux ?
"Engl Amps are the best i've ever used... Not only are they powerfull, but they have charachter too..." R. Blackmore
zuzuf
ProgBoarder
Linux
Firefox 2 - Posté le 03/10/2007 à 13:50
un simple fopen suffira (c'est le minimum pour manipuler un fichier, même spécial), mais il se peut que certaines opérations comme le déplacement du curseur ne fonctionnent pas sur ce genre de fichiers (en fait ça n'aurait même pas de sens avec certains d'entre eux)
Linux a un noyau, windows un pepin
romain
Visiteur
Linux
Firefox 2 - Posté le 28/05/2008 à 16:00
Salut !
Ou est-ce que tu en ai pour ce projet car il m'interesse !
Merci
Amwus
ProgBoarder
Linux
Mozilla 5 - Posté le 03/06/2008 à 21:30
Bonjour ! Oui oui ce n'est pas parce que je ne poste plus que je ne viens plus trainer par ici
(plus bcp le temps à vrai dire !)
Pour répondre à ta question, mon programme est opérationnel, mais il est encore basique. Tu dois encore régler les températures dans un fichier source et recompiler tout. Je n'ai pas encore intégré la gestion de fichiers de configurations. Ceci dit ça fonctionne très bien mis à part ce détail.
Mais entre temps j'ai découvert un programme graphique pour gérer le ventilo des thinkpad sous Linux et je l'ai adopté. Mais je compte continuer à perfectionner le miens quand j'en aurai le temps.
Je précise aussi que ce programme ne gère que le ventilateur des pc portables IBM/Lenovo Thinkpad. Il utilise en effet l'interface thinkpad_acpi qui offre un controle du ventilateur.
Pour plus de détails, n'hésite pas à me contacter
"Engl Amps are the best i've ever used... Not only are they powerfull, but they have charachter too..." R. Blackmore
Poster une réponse
Message
Formatage
Note: pour partager du code source, merci d'utiliser le
wall
!
Smileys
Pseudonyme
Recopiez le code
v6 ©
Computaid SPRL
2005-2008 - Tous droits réservés -
Hébergé par eTigris
- Page générée en 0,026 s -
Crédits
-
Stats
Forums
ProgBoards » Annonces
ProgBoards » Développement
ProgBoards » Café
ProgBoards » Petites annonces
Informatique » Algorithmes
Informatique » Logiciel
Informatique » Matériel
Informatique » Graphisme
Informatique » Sécurité
Langages » BASIC
Langages » Pascal / Delphi
Langages » C & Cie.
Langages » Assembleur
Langages » Java
Langages » Autres Langages
Langages » Bibliothèques
Web » HTML / XML
Web » PHP / ASP
Web » Flash & Autres
Groupes de travail » FlexProject
Groupes de travail » Kovu (Bot IRC)
Groupes de travail » PHPMonitoring
Documentation » Linux / Unix
Documentation » ProgBoards
Documentation » QBasic
Documentation » C & Cie.
Ecologie » Solaire
Ecologie » Transport
Liste des forums
Membres
Inscrivez-vous
Mot de passe perdu?
Liste des membres
Groupes
Liste des groupes
Projets
Liste des projets
Logithèque
Les logiciels libres
Outils
Wall (codes sources)
Timestamp Unix
Interrogation whois
Goodies
T'chat IRC
#progboards (3)
Quotes IRC
1