hirschmann / nbfc

NoteBook FanControl
Other
2.9k stars 488 forks source link

Acer Nitro AN515-55 #1356

Closed GrahamboJangles closed 3 months ago

GrahamboJangles commented 1 year ago

Describe the bug nbfc.exe config --recommend

The service is unavailable
Object reference not set to an instance of an object.

To Reproduce Run nbfc.exe config --recommend

System information

Additional context I presume my model (Acer Nitro AN515-55) is just not supported, but I'd like some help in getting it working. This guy got it working with a very similar model: https://community.acer.com/en/discussion/570212/nitrosense-custom-fan-settings-is-there-a-way-to-set-speed-of-laptop-fan-or-at-least-change-curve

Here's a snippet of the ACPI DSDT code I found that has the word EmbeddedControl:

OperationRegion(ERAM, EmbeddedControl, Zero, 0xFF)
            Field(ERAM, ByteAcc, Lock, Preserve)
            {
                Offset(0x5F),   //Offset(95),
                ERBD, 8,
                SMPR, 8,
                , 8,
            }
            OperationRegion(CCLK, SystemIO, 0x1810, 0x04)
            Field(CCLK, DWordAcc, NoLock, Preserve)
            {
                , 1,
                DUTY, 3,
                THEN, 1,
                , 3,
                FTT, 1,
                , 8,
                TSTS, 1,
            }

I tried probing and writing to any of the registers that seemed to be related but nothing ever changes the sounds of the fans.

GrahamboJangles commented 1 year ago

I found the values that control my fans by controlling the fans using the NitroSense software and probing using ec-probe.exe.

# Enable auto fan for CPU
ec-probe write 034 004

# Disable auto fan for CPU
ec-probe write 034 012

# Sets the CPU fan speed in percentage, 000-100. Does not work unless auto fan is disabled.
ec-probe write 055 100

# Enable auto fan for GPU
ec-probe write 033 016

# Disable auto fan for GPU
ec-probe write 033 048

# Sets the GPU fan speed in percentage, 000-100. Does not work unless auto fan is disabled.
ec-probe write 058 100

# Read the CPU temperature
ec-probe read 176

I can't get the Notebook FanControl software to work though, it just sets itself back to Disabled when I try to enable it with my config. Here's my config though, maybe I'm doing it wrong:

<?xml version="1.0"?>
<FanControlConfigV2 xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <NotebookModel>Nitro AN515-55</NotebookModel>
  <ReadWriteWords>false</ReadWriteWords>
  <FanConfigurations>
    <!-- CPU Fan Configuration -->
    <FanConfiguration>
      <ReadRegister>34</ReadRegister>
      <WriteRegister>34</WriteRegister>
      <MinSpeedValue>0</MinSpeedValue>
      <MaxSpeedValue>0</MaxSpeedValue>
      <ResetRequired>true</ResetRequired>
      <FanSpeedResetValue>4</FanSpeedResetValue>
      <FanDisplayName>Intel i5-10300H CPU @ 2.5GHz</FanDisplayName>
    </FanConfiguration>

    <!-- GPU Fan Configuration -->
    <FanConfiguration>
      <ReadRegister>33</ReadRegister>
      <WriteRegister>33</WriteRegister>
      <MinSpeedValue>0</MinSpeedValue>
      <MaxSpeedValue>0</MaxSpeedValue>
      <ResetRequired>true</ResetRequired>
      <FanSpeedResetValue>16</FanSpeedResetValue>
      <FanDisplayName>NVIDIA 3050 ti</FanDisplayName>
    </FanConfiguration>
  </FanConfigurations>

  <RegisterWriteConfigurations>
    <!-- CPU Fan Auto Mode -->
    <RegisterWriteConfiguration>
      <WriteOccasion>OnInitialization</WriteOccasion>
      <Register>34</Register>
      <Value>4</Value>
      <ResetRequired>true</ResetRequired>
      <ResetValue>4</ResetValue>
      <Description>Enable auto fan for CPU</Description>
    </RegisterWriteConfiguration>

    <!-- GPU Fan Auto Mode -->
    <RegisterWriteConfiguration>
      <WriteOccasion>OnInitialization</WriteOccasion>
      <Register>33</Register>
      <Value>16</Value>
      <ResetRequired>true</ResetRequired>
      <ResetValue>16</ResetValue>
      <Description>Enable auto fan for GPU</Description>
    </RegisterWriteConfiguration>
  </RegisterWriteConfigurations>
</FanControlConfigV2>
elyeandre commented 1 year ago

@GrahamboJangles Hey, I also have same model of you AN515-55-56R2 can I use your config?

GrahamboJangles commented 1 year ago

@elyeandre go right ahead that's why I posted this. I could never get it to work with the NBFC software though. But manually changing the values with the commandline worked

GrahamboJangles commented 1 year ago

@elyeandre if you get it to work with NBFC let me know how you did it!

erhangk commented 9 months ago

Has anyone tried this config? I have the same laptop although i have gtx 1650 ti and i5-10300H. Would it work for my laptop?

erhangk commented 9 months ago

It seems that the registers you found works while testing with ec-probe. I tried other models config like AN515-42 and they also work but they use different register adresses from yours. I will just stick with them for now.

GrahamboJangles commented 9 months ago

@erhangk Did you get it to work using NBFC?

erhangk commented 9 months ago

@erhangk Did you get it to work using NBFC?

Yes but i used the linux version of nbfc. Should be working on Windows too.

github-actions[bot] commented 3 months ago

This issue is stale because it has been open more than 180 days with no activity. If nobody comments within 7 days, this issue will be closed

GrahamboJangles commented 3 months ago

Anyone else having this issue? Can't use NBFC at all. @erhangk where did you find AN515-42 config?

https://github.com/user-attachments/assets/0113ab0e-6dac-4eb3-a65d-76625600e5bb