• Re: case fan speed

    From Jonathan Dowland@21:1/5 to Eben King on Sun Apr 13 22:20:01 2025
    On Sun Apr 13, 2025 at 9:15 PM BST, Eben King wrote:
    I have a video card which has fans (GTX 970) on Debian Bookworm (12.10).
    Unfortunately the card is broken in such a way that the fans almost
    never work, and I can't afford to replace it with one that isn't broken.
    Changing the GPU's internal clocks has little to no effect on
    temperature (or performance, oddly enough), but changing the CPU clock
    speed does. So I wrote a script that modifies that for me automatically based on the GPU temperature, and that usually works.

    Not always though. I have 2-4 case fans (I forget exactly). Is there a
    way to change their speed? Maybe that'd be enough. Thanks.

    Possibly, depending on your mainboard. Presumably they're plugged into
    that. There might be a driver for a fan controller on the board that you
    can use to control them. Try the lm-sensors package to see what it can discover. Failing that, or instead, your mainboard's firmware
    configuration (artist formerly known as BIOS) might offer some fan
    controls.



    --
    Please do not CC me for listmail.

    đŸ‘±đŸ» Jonathan Dowland
    ✎ [email protected]
    🔗 https://jmtd.net

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Eben King@21:1/5 to All on Sun Apr 13 22:20:01 2025
    I have a video card which has fans (GTX 970) on Debian Bookworm (12.10).
    Unfortunately the card is broken in such a way that the fans almost
    never work, and I can't afford to replace it with one that isn't broken.
    Changing the GPU's internal clocks has little to no effect on
    temperature (or performance, oddly enough), but changing the CPU clock
    speed does. So I wrote a script that modifies that for me automatically
    based on the GPU temperature, and that usually works.

    Not always though. I have 2-4 case fans (I forget exactly). Is there a
    way to change their speed? Maybe that'd be enough. Thanks.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Eben King@21:1/5 to Jonathan Dowland on Sun Apr 13 23:00:01 2025
    On 4/13/25 16:18, Jonathan Dowland wrote:
    On Sun Apr 13, 2025 at 9:15 PM BST, Eben King wrote:
    I have a video card which has fans (GTX 970) on Debian Bookworm (12.10).
      Unfortunately the card is broken in such a way that the fans almost
    never work, and I can't afford to replace it with one that isn't broken.
      Changing the GPU's internal clocks has little to no effect on
    temperature (or performance, oddly enough), but changing the CPU clock
    speed does.  So I wrote a script that modifies that for me automatically
    based on the GPU temperature, and that usually works.

    Not always though.  I have 2-4 case fans (I forget exactly).  Is there a >> way to change their speed?  Maybe that'd be enough.  Thanks.

    Possibly, depending on your mainboard.

    It's a Gigabyte GA-H170 Gaming 3. Several years old at this point.

    Presumably they're plugged into that.

    Y.

    There might be a driver for a fan controller on the board that you
    can use to control them. Try the lm-sensors package to see what it can discover.

    It shows just temps. I assume there are other sensors there, but
    lm-sensors doesn't say the right spell to use them. I ran "sudo sensors-detect" and answered y to every question, ran "sudo
    /etc/init.d/kmod start", and still same. I can show you the complete
    output if you want.

    If I did manage to get lm-sensors to show the fans, how would I use it
    to modify their behavior?

    Failing that, or instead, your mainboard's firmware
    configuration (artist formerly known as BIOS) might offer some fan
    controls.

    Sure, but I want to change it within the OS, depending on how the GPU temperature varies.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Eben King@21:1/5 to Eben King on Sun Apr 13 23:30:01 2025
    On 4/13/25 16:52, Eben King wrote:


    On 4/13/25 16:18, Jonathan Dowland wrote:

    There might be a driver for a fan controller on the board that you
    can use to control them. Try the lm-sensors package to see what it can
    discover.

    It shows just temps.  I assume there are other sensors there, but
    lm-sensors doesn't say the right spell to use them.  I ran "sudo sensors-detect" and answered y to every question, ran "sudo
    /etc/init.d/kmod start", and still same.  I can show you the complete
    output if you want.

    If I did manage to get lm-sensors to show the fans, how would I use it
    to modify their behavior?

    sudo modprobe it87 force_id=0x8728

    then running "sensors" shows
    it8728-isa-0a40
    Adapter: ISA adapter
    <9 voltages>
    <5 fans, one of which is 0 RPM>
    <3 temps>
    intrusion0: ALARM

    It's been put into /etc/modules.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Jonathan Dowland@21:1/5 to Eben King on Mon Apr 14 10:40:02 2025
    On Sun Apr 13, 2025 at 10:23 PM BST, Eben King wrote:
    sudo modprobe it87 force_id=0x8728

    then running "sensors" shows
    it8728-isa-0a40
    Adapter: ISA adapter
    <9 voltages>
    <5 fans, one of which is 0 RPM>
    <3 temps>
    intrusion0: ALARM

    It's been put into /etc/modules.

    That might be the way forward. In my case, the controller is managed by
    the driver "nct6775". I have (the not-very-discoverable) sysfs location /sys/devices/platform/nct6775.656/hwmon/hwmon2 containing files to
    control things; e.g. writing 1 to ./pwmN_enable (N ∈ 1-7) sets fan
    "manual control mode", after which I can write the values 0-255 to
    ./pwmN to control the RPM. (I haven't got my fans to do quite what I
    want, yet, but that's not the driver's fault.)

    nct6775 is documented reasonably well <https://www.kernel.org/doc/html/latest/hwmon/nct6775.html>, your
    controller's docs aren't quite so clear but there's some mention of
    writing to pwnN_enable: <https://docs.kernel.org/hwmon/it87.html>


    Hope this helps,

    --
    Please do not CC me for listmail.

    đŸ‘±đŸ» Jonathan Dowland
    ✎ [email protected]
    🔗 https://jmtd.net

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Dan Ritter@21:1/5 to Jonathan Dowland on Mon Apr 14 15:50:01 2025
    Jonathan Dowland wrote:
    On Sun Apr 13, 2025 at 10:23 PM BST, Eben King wrote:
    sudo modprobe it87 force_id=0x8728

    then running "sensors" shows
    it8728-isa-0a40
    Adapter: ISA adapter
    <9 voltages>
    <5 fans, one of which is 0 RPM>
    <3 temps>
    intrusion0: ALARM

    It's been put into /etc/modules.

    That might be the way forward. In my case, the controller is managed by the driver "nct6775". I have (the not-very-discoverable) sysfs location /sys/devices/platform/nct6775.656/hwmon/hwmon2 containing files to control things; e.g. writing 1 to ./pwmN_enable (N ∈ 1-7) sets fan "manual control mode", after which I can write the values 0-255 to ./pwmN to control the
    RPM. (I haven't got my fans to do quite what I want, yet, but that's not the driver's fault.)

    nct6775 is documented reasonably well <https://www.kernel.org/doc/html/latest/hwmon/nct6775.html>, your controller's docs aren't quite so clear but there's some mention of writing to pwnN_enable: <https://docs.kernel.org/hwmon/it87.html>

    There's a fancontrol package which requires lm-sensors to have
    found the controls.

    This package contains a daemon that calculates fan speeds from temperatures
    and sets the corresponding PWM outputs to the computed values. This is
    useful when this feature is not provided by the BIOS or ACPI, which should
    normally be the case on a laptop.

    -dsr-

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Eben King@21:1/5 to Jonathan Dowland on Mon Apr 14 18:30:01 2025
    On 4/14/25 04:33, Jonathan Dowland wrote:
    On Sun Apr 13, 2025 at 10:23 PM BST, Eben King wrote:
    sudo modprobe it87 force_id=0x8728

    then running "sensors" shows
    it8728-isa-0a40
    Adapter: ISA adapter
    <9 voltages>
    <5 fans, one of which is 0 RPM>
    <3 temps>
    intrusion0:  ALARM

    That might be the way forward. In my case, the controller is managed by
    the driver "nct6775". I have (the not-very-discoverable) sysfs
    location /sys/devices/platform/nct6775.656/hwmon/hwmon2 containing files
    to control things; e.g. writing 1 to ./pwmN_enable (N ∈ 1-7) sets fan "manual control mode", after which I can write the values 0-255 to ./
    pwmN to control the RPM. (I haven't got my fans to do quite what I want,
    yet, but that's not the driver's fault.)

    nct6775 is documented reasonably well <https://www.kernel.org/doc/html/ latest/hwmon/nct6775.html>, your controller's docs aren't quite so clear
    but there's some mention of writing to pwnN_enable: <https:// docs.kernel.org/hwmon/it87.html>

    Hope this helps,

    Excellent, thank you. Yes as with yours if I do

    sudo sh -c 'echo 1 >
    /sys/devices/platform/it87.2624/hwmon/hwmon3/pwmN_enable'

    where 1≀N≀3, then with

    sudo sh -c 'echo X > /sys/devices/platform/it87.2624/hwmon/hwmon3/pwmN'

    where 0≀X≀255 I can set the fan speed. It's approximately linear when X≄64. If I later do

    sudo sh -c 'echo 1 >
    /sys/devices/platform/it87.2624/hwmon/hwmon3/pwmN_enable'

    it might return the fan to automatic control, but it definitely sets it
    to maximum speed. That's weird.

    You are correct, those files are hidden deep within the catacombs of /sys.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?Q?Jean-Fran=C3=A7ois_Bachel@21:1/5 to All on Tue Apr 15 15:50:01 2025
    Hello Eben :)

    Le 13/04/2025 à 22:15, Eben King a écrit :
    I have a video card which has fans (GTX 970) on Debian Bookworm (12.10).  Unfortunately the card is broken in such a way that the fans almost
    never work, and I can't afford to replace it with one that isn't broken.  Changing the GPU's internal clocks has little to no effect on
    temperature (or performance, oddly enough), but changing the CPU clock
    speed does.  So I wrote a script that modifies that for me automatically based on the GPU temperature, and that usually works.

    Not always though.  I have 2-4 case fans (I forget exactly).  Is there a way to change their speed?  Maybe that'd be enough.  Thanks.

    when you say 'broken' is it the card fan control or the fans itselves 
    that are deads ?


    because, if you are good at soldering or know someone that does, you can
    just disconnect the fans from the graphic card, and -possibly via an
    adaptator or soldering- connect these card fans directly to a +5 or +12v
    line so it are always running, your graphic card will be happier than
    with only the case fans doing the airflow... at lieast that is what I
    will do :)


    my 2 cents,

    Jeff

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)