ubuntu下使用 lm-sensors
最近,仔细阅读了 lm-sensors 的使用手册,在一个旧电脑上使用一下。
环境是:ubuntu24.04 ,软件 lm-sensors, fancontrol
lm-sensors 和 fancontrol 的关系
lm-sensors 是把硬件传感器探测的数据读取出来,fancontrol 是利用lm-sensors读取的数据设置风扇的转速。
fancontrol依赖lm-sensors
芯片不能被 lm-sensors 识别
在使用 lm-sensors 检测组建 sensors-detect 检测时,发现有一个 super IO 传感器没有识别,具体信息:
Some Super I/O chips contain embedded sensors. We have to write to
standard I/O ports to probe them. This is usually safe.
Do you want to scan for Super I/O sensors? (YES/no): YES
Probing for Super-I/O at 0x2e/0x2f
Trying family `National Semiconductor/ITE'... No
Trying family `SMSC'... No
Trying family `VIA/Winbond/Nuvoton/Fintek'... No
Trying family `ITE'... Yes (虽然找的ID,但没有识别出来)
Found unknown chip with ID 0x8628
Probing for Super-I/O at 0x4e/0x4f
Trying family `National Semiconductor/ITE'... No
Trying family `SMSC'... No
Trying family `VIA/Winbond/Nuvoton/Fintek'... No
Trying family `ITE'... No
启动物理手段,打开机箱,手电筒查看具体的型号:IT8628E
再次询问网络:有没有内核模块可以支持 IT8628E,因为 lm-sensors 是通过内核模块来获取传感器参数的。
如果没找到,可以询问是否有近似 IT8628E 的芯片,且该芯片有对应的内核模块支持,搜集论坛或评论的内容,看看大家是否找到一个替代品。
但是,这次很幸运,找到一个支持 IT8628E 的模块 IE87
,这就好办了,加载它,一切问题都解决了。
it87 模块是一个 Linux 内核驱动程序,需要加载它才能与 ITE 芯片通信。当你加载 it87 模块时,它会识别主板上的受支持 ITE 芯片,并向内核注册相关的硬件监控接口。这使得用户空间应用程序可以访问传感器数据。
IE87模块
模块开发地址:https://www.kernel.org/doc/html/latest/hwmon/it87.html
在里面找到关于 IT8628E 的相关信息:
IT8628E
Prefix: ‘it8628’
Addresses scanned: from Super I/O config space (8 I/O ports)
Datasheet: Not publicly available