Skip to content

Bug: Incorrect fan speed average calculation when unused sensors report 0 RPM #547

@erkutkoc

Description

@erkutkoc

Has this issue been covered in the Wiki?

  • I have read the Wiki and my issue is not covered.

Is there an existing issue reported already?

  • I have searched the existing issues, it does not exist.

What is the unexpected behavior?

The application currently calculates the average fan speed by dividing the sum of all detected sensors by the total number of sensors found. On my laptop, the system reports 4 fan sensors, but only 2 are physically present and active. The other 2 stay at 0 RPM, which drags down the average and provides inaccurate monitoring data.
The application should only consider active sensors (RPM > 0) in the average calculation, or allow the user to ignore specific sensors in the settings.
The current "ignore null values" feature doesn't work here because it treats these ghost sensors as valid fans that happen to be "stopped" (0 RPM), rather than non-existent hardware.

As shown in the attached screenshot, the WMI 3 and 4 sensors are incorrectly detected and permanently report 0 RPM :
Image

Steps to reproduce the unexpected behavior.

  1. Launch Vitalis on a device where the hardware interface (e.g., WMI) exposes dummy/inactive sensors (as seen in the screenshot for WMI 3 & 4).
  2. Observe the Fan Speed
  3. Note that the average calculation includes sensors reporting 0 RPM.
  4. Apply a high CPU/GPU load to force the active fans (WMI 1 & 2) to spin.
  5. Observe that WMI 3 & 4 remain at 0 RPM regardless of system load, proving they are non-existent or "ghost" sensors that should be excluded from the average.
  6. Average use 4 fans instead of the 2 actives/connected fans.

Relevant log output

What distribution and version of Linux are you using?

Ubuntu 26.04 LTS, Kernel : 7.0.0-15-generic

What version of Gnome are you using?

GNOME Shell 50.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions