
MSI Modern 15H AI C1MGT-096IT Gestion thermique Linux - Contrôle EC par rétro-ingénierie avec profils de ventilateur et seuil de batterie
Gestion thermique Linux pour MSI Modern 15H AI C1MG-096IT - Contrôle EC par rétro-ingénierie avec profils de ventilateur et seuil de batterie
Cette application est née d’un besoin réel des utilisateurs d’ordinateurs portables MSI sous Linux. Tout a commencé lorsque j’ai découvert que ni Intel ni MSI ne fournissaient de pilotes ou d’applications de contrôle adaptés à ma distribution Linux Mint Xia.
Après de longues recherches, un seul dépôt semblait prometteur pour mon processeur Intel Core Ultra 5 125H : OpenFreezeCenter
Cependant, ce projet avait été conçu à l’origine pour les processeurs Intel de 10e/12e génération. Mon architecture Meteor Lake, avec ses P-cores et E-cores, présentait des défis uniques que le logiciel d’origine ne pouvait pas pleinement appréhender.
Je me suis lancé dans un processus de rétro-ingénierie d’un an pour :
Ce projet a été développé en suivant des pratiques modernes où les outils d’IA assistent l’implémentation du code, tandis que toutes les décisions d’architecture, la rétro-ingénierie et la résolution de problèmes restent pilotées par l’humain.
« L’IA ne connaissait pas mes adresses EC : 0x68 pour la température du CPU et 0xbf pour la batterie — je les ai découvertes par une rétro-ingénierie et des tests approfondis ! »
Cette approche reflète la façon dont les développeurs professionnels utilisent aujourd’hui des outils comme GitHub Copilot — comme des assistants qui implémentent des solutions à des problèmes identifiés par l’humain.
Bien que ce ne soit pas l’application la plus élégante visuellement, elle offre un contrôle pratique sur :
cpufrequtils avec le gouverneur de performance pour un fonctionnement optimalCe projet est spécifiquement ajusté pour le MSI Modern 15H AI C1MGT-096IT.
Si vous avez un autre modèle MSI, les adresses EC devront probablement être ajustées.
L’architecture principale devrait fonctionner — il vous suffira de cartographier les adresses matérielles de votre appareil.
Pour clarifier les choses : je n’ai pas choisi msi_ec ou MControlCenter parce que je les ignorais, mais simplement parce qu’ils n’ont jamais fonctionné sur mon ordinateur portable.
Mon modèle — MSI Modern 15H AI C1MG-096IT — est toujours répertorié comme Non implémenté dans la liste de compatibilité officielle de msi_ec.
Quand j’ai testé initialement, le chargement du module aboutissait toujours à :modprobe: ERROR: could not insert 'msi_ec': Operation not supported.
Ce n’est que aujourd’hui (28/11/25), grâce à un ami proche qui utilise NixOS, qu’il m’a envoyé un lien alors que j’ai découvert une discussion GitHub mentionnant une avancée potentielle pour le MSI Modern 15H AI C1MG :
🔗 Correctif — publication GitHub
Je ne connaissais vraiment pas ce problème avant — c’est de ma faute si je n’ai pas vérifié plus tôt.
Cela dit, rien dans cette discussion ne confirme la prise en charge de mon modèle exact, et le module continue d’échouer sur mon système.
J’ai également essayé d’utiliser MControlCenter, mais il échouait au démarrage avec : Failed to load ec_sys kernel module
Voici la publication Reddit originale que j’avais faite à l’époque :
🔗 Échec du chargement du module kernel ec_sys (publication Reddit)
Comme aucun des deux outils ne fonctionnait pour moi, j’ai fini par construire ma propre solution par nécessité — pas parce que je voulais remplacer ou concurrencer les projets existants.
Si votre ordinateur portable est bien pris en charge par msi_ec ou MControlCenter, je vous recommande absolument d’essayer ces outils en premier. Mon projet n’est qu’une solution de repli pour du matériel non pris en charge comme le mien.
La structure du projet est conçue pour être adaptable. Bien que je ne puisse pas fournir de support actif pour d’autres modèles, le code est bien documenté pour ceux qui souhaitent tenter la rétro-ingénierie du contrôleur EC sur leur propre matériel.
Après avoir passé un an sur ce projet - à travers d’innombrables nuits de rétro-ingénierie, de tests de température et de débogage - je suis enfin fier de partager cette solution avec la communauté.
Ce qui avait commencé comme une pure frustration face aux performances thermiques de mon ordinateur portable est devenu un outil fonctionnel qui fonctionne réellement.
Si vous avez un autre modèle MSI, l’architecture est là — vous n’aurez peut-être qu’à modifier quelques adresses EC. La partie difficile (comprendre comment fonctionne le contrôleur EC de MSI) est déjà faite.
D’un utilisateur frustré de MSI sous Linux à un autre — j’espère que cela vous aidera autant que cela m’a aidé.
Ce projet comprend des fichiers d’installation ou d’assistance initialement dérivés d’OpenFreezeCenter, qui est sous licence AGPL-3.0.
Pour maintenir la compatibilité des licences, ce projet est distribué sous la licence GNU AGPL-3.0.
Tout le nouveau code (rétro-ingénierie, mappings de batterie, outils EC, etc.) est un travail original d’Anthonippillai Vincent Nishan.