X86 installation and nvme temperatures

Hi,
I have a fanless n5105 device, running OpenWrt 22.03.3 x86 build.
when running debian live cd, the sensors command outputs 3 temperature types: ACPI, cpu and nvme.
on the other hand, the openwrt package lm-sensors - 3.6.0-1 only shows the first two, and nvme temperature reading is missing.
what needs to be done to get the nvme temperature reading?

thanks.

The easiest approach would probably be to boot a modern general purpose live linux system (Debian, Fedora, etc.) and to run sensors-detect, which should tell you the (hwmon-) kernel modules necessary for your hardware, once you know that, you can (hopefully) just install the corresponding packages on OpenWrt as well (if those don't exist, you may have to package them up (not that difficult), in other cases the kernel config might need changing (which would be harder to defend convincingly), but let's assume the easy approach first).

2 Likes

I'm running the debian live usb, and the nvme temp is displayed as:

nvme-pci-0100
Adapter: PCI adapter
Compoiste: <temp reading here>

(there are also the coretemp-isa-0000 and the acpitz-acpi-0 readings before that)

running sensors-detect returns 2 found sensors:

Driver 'to-be-written':
   * ISA bus, address 0xa30
     Chip 'ITE IT8613E Super IO Sensors' (confidence: 9)

Driver 'coretemp':
   * Chip 'Intel digital thermal sensor' (confidence: 9)

along with a note that reads: Note: there is no driver for ITE IT8613E Super IO Sensors yet,...

honestly I can't make much sense of the results, so not sure what's next.

@slh can you say how I should advance?

Do you see anything folder like this from console?

/sys/class/nvme/nvme0/device/hwmon/hwmon1/

no, there's no "hwmon" there.
I only see it at
/sys/devices/virtual/thermal/thermal_zone0/hwmon0
/sys/devices/platform/coretemp.0/hwmon/hwmon1

Does the smartmontools report NVME status? (Sorry most of my X86 that run OpenWrt are not having NVME so I am not very sure how it looks like under OpenWrt's embedded linux env.)

yes it does:

smartctl -a /dev/nvme0
...
SMART/Health Information (NVMe Log 0x02)
Critical Warning:                   0x00
Temperature:                        47 Celsius

your suggestion is great, and it's a nice tool of getting the current nvme temp on demand, but I'm using luci-app-temp-status to get the readings on luci, where I frequently visit, to get a quick status of my fanless setup.
so what I really want is to get the system to have the reading in sensors, like the live linux systems can show.

Does collectd-mod-smart with luci-app-statistics able to give something closer to what you want?

1 Like

yes! closer indeed.
I just don't understand what needs to happen to get lm-sensors to show it as well, since it's already working in the live linux env.

I would say usual lm-sensors on linux is not really a reliable way for NVME temperature, the nvme-cli is the correct way.