I found a solution / workaround for the resetting:
0 RPM only
(@lowenz maybe?)
Saving a profile, opening the resulting xml file and changing the following lines: (source)
<FEATURE ID="18" Enabled="False">
and change it to
<FEATURE ID="18" Enabled="True">
to enable 0 RPM with custom fan curve.
General workaround
For profile resets and problems with the fan curve: OverdriveNTool
This tool uses the (native) AMD OverdriveN API to save the settings, including fan states without restriction (my ASUS STRIX RX580 has a false minimum fan speed of 40% in WattMan, which is way too high).
It does not run in background and does not need admin rights!
Although it also resets after reboot / standby, it can be used via command line, which gives us an easy solution via Task Scheduler, trigger on login and resume from sleep:
- Save a profile in the OverdriveNTool: New, enter profile name (used below), set settings, Save, Apply.
- Open Task Scheduler: Start Menu, enter "tasks" or (WIN+R and) "taskschd.msc"
- Use either the xml file below via Import Task
or create it manually via (Action /) Create Task... - Enter a name, like "OverdriveNTool"
- Trigger / New:
- Begin the task: At log on
Check Enabled
OK - Begin the task: On an event
Log: System
Source: Power-Troubleshooter
Event ID: 1
- Action / New:
Start a program
Browse: (enter path to) OverdriveNTool.exe
Add arguments: -r0 -p0"profile name" (reset settings, load profile)
Start in: copy path from above (for the folder, except for OverdriveNTool.exe)
xml file for import: replace PATH and PROFILE in OverdriveNTool.xml
In Task Scheduler, select Import Task... from the right sidebar or right click menu.
<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.4" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
<RegistrationInfo>
<Date>2019-09-09T20:47:43.6572512</Date>
<URI>\OverdriveNTool</URI>
</RegistrationInfo>
<Triggers>
<EventTrigger>
<Enabled>true</Enabled>
<Subscription><QueryList><Query Id="0" Path="System"><Select Path="System">*[System[Provider[@Name='Microsoft-Windows-Power-Troubleshooter'] and EventID=1]]</Select></Query></QueryList></Subscription>
</EventTrigger>
<LogonTrigger>
<Enabled>true</Enabled>
</LogonTrigger>
</Triggers>
<Actions Context="Author">
<Exec>
<Command>PATH\OverdriveNTool.exe</Command>
<Arguments>-r0 -p0"PROFILE"</Arguments>
<WorkingDirectory>PATH</WorkingDirectory>
</Exec>
</Actions>
</Task>