nbfc icon indicating copy to clipboard operation
nbfc copied to clipboard

Acer Nitro AN515-55

Open GrahamboJangles opened this issue 2 years ago • 8 comments

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 avatar Aug 07 '23 17:08 GrahamboJangles

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>

GrahamboJangles avatar Aug 08 '23 21:08 GrahamboJangles

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

elyeandre avatar Sep 09 '23 14:09 elyeandre

@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 avatar Sep 09 '23 16:09 GrahamboJangles

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

GrahamboJangles avatar Sep 09 '23 16:09 GrahamboJangles

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 avatar Feb 15 '24 17:02 erhangk

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.

erhangk avatar Feb 17 '24 15:02 erhangk

@erhangk Did you get it to work using NBFC?

GrahamboJangles avatar Feb 19 '24 04:02 GrahamboJangles

@erhangk Did you get it to work using NBFC?

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

erhangk avatar Feb 19 '24 08:02 erhangk

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

github-actions[bot] avatar Aug 19 '24 00:08 github-actions[bot]

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

GrahamboJangles avatar Aug 19 '24 03:08 GrahamboJangles