Merge branch 'seerge:main' into german-translation

This commit is contained in:
IceStormNG
2023-06-21 20:43:58 +02:00
committed by GitHub
8 changed files with 52 additions and 40 deletions

View File

@@ -20,9 +20,9 @@ jobs:
- name: Publish
run: |
dotnet publish app/GHelper.sln --configuration Release --runtime win-x64 -p:PublishSingleFile=true --no-self-contained
powershell Compress-Archive app/bin/x64/Release/net7.0-windows8.0/win-x64/publish/GHelper.exe GHelper.zip
powershell Compress-Archive app/bin/x64/Release/net7.0-windows8.0/win-x64/publish/* GHelper.zip
- name: Upload
env:
GH_TOKEN: ${{ github.token }}
run: |
gh release upload ${{ github.ref_name }} app/bin/x64/Release/net7.0-windows8.0/win-x64/publish/GHelper.exe GHelper.zip
gh release upload ${{ github.ref_name }} GHelper.zip

View File

@@ -106,8 +106,7 @@ public class AsusACPI
public const int GPUModeStandard = 1;
public const int GPUModeUltimate = 2;
public const int MaxTotal = 150;
public static int MaxTotal => AppConfig.ContainsModel("G513QY") ? 250 : 150;
public const int MinTotal = 5;
public const int DefaultTotal = 125;

View File

@@ -179,13 +179,11 @@ namespace GHelper
}
private static IEnumerable<HidDevice> GetHidDevices(int[] deviceIds, int minInput = 18, int minFeatures = 1)
private static IEnumerable<HidDevice> GetHidDevices(int[] deviceIds, int minFeatures = 1)
{
HidDevice[] HidDeviceList = HidDevices.Enumerate(ASUS_ID, deviceIds).ToArray();
foreach (HidDevice device in HidDeviceList)
if (device.IsConnected
&& device.Capabilities.FeatureReportByteLength >= minFeatures
&& device.Capabilities.InputReportByteLength >= minInput)
if (device.IsConnected && device.Capabilities.FeatureReportByteLength >= minFeatures)
yield return device;
}
@@ -235,7 +233,7 @@ namespace GHelper
{
Task.Run(async () =>
{
var devices = GetHidDevices(deviceIds, 0);
var devices = GetHidDevices(deviceIds);
foreach (HidDevice device in devices)
{
device.OpenDevice();
@@ -263,7 +261,7 @@ namespace GHelper
byte[] msg = { AURA_HID_ID, 0xba, 0xc5, 0xc4, (byte)brightness };
byte[] msgBackup = { INPUT_HID_ID, 0xba, 0xc5, 0xc4, (byte)brightness };
var devices = GetHidDevices(deviceIds, 0);
var devices = GetHidDevices(deviceIds);
foreach (HidDevice device in devices)
{
device.OpenDevice();
@@ -289,7 +287,7 @@ namespace GHelper
{
byte[] msgBackup = { INPUT_HID_ID, 0xba, 0xc5, 0xc4, (byte)brightness };
var devicesBackup = GetHidDevices(deviceIds, 0);
var devicesBackup = GetHidDevices(deviceIds);
foreach (HidDevice device in devicesBackup)
{
device.OpenDevice();
@@ -312,13 +310,15 @@ namespace GHelper
var devices = GetHidDevices(deviceIds);
//Logger.WriteLine("USB-KB = " + BitConverter.ToString(msg));
foreach (HidDevice device in devices)
{
device.OpenDevice();
device.WriteFeatureData(msg);
Logger.WriteLine("USB-KB " + device.Attributes.ProductHexId + ":" + BitConverter.ToString(msg));
if (device.ReadFeatureData(out byte[] data, AURA_HID_ID))
{
device.WriteFeatureData(msg);
Logger.WriteLine("USB-KB " + device.Attributes.ProductHexId + ":" + BitConverter.ToString(msg));
}
device.CloseDevice();
}
@@ -351,23 +351,19 @@ namespace GHelper
}
byte[] msg = AuraMessage(Mode, Color1, Color2, _speed);
var devices = GetHidDevices(deviceIds);
if (devices.Count() == 0)
{
Logger.WriteLine("USB-KB : not found");
devices = GetHidDevices(deviceIds, 1);
}
foreach (HidDevice device in devices)
{
device.OpenDevice();
device.WriteFeatureData(msg);
device.WriteFeatureData(MESSAGE_SET);
device.WriteFeatureData(MESSAGE_APPLY);
if (device.ReadFeatureData(out byte[] data, AURA_HID_ID))
{
device.WriteFeatureData(msg);
//device.WriteFeatureData(MESSAGE_SET);
device.WriteFeatureData(MESSAGE_APPLY);
Logger.WriteLine("USB-KB " + device.Capabilities.FeatureReportByteLength + "|" + device.Capabilities.InputReportByteLength + device.Description + device.DevicePath + ":" + BitConverter.ToString(msg));
}
device.CloseDevice();
Logger.WriteLine("USB-KB " + device.Capabilities.FeatureReportByteLength + "|" + device.Capabilities.InputReportByteLength + device.Description + device.DevicePath + ":" + BitConverter.ToString(msg));
}
if (AppConfig.ContainsModel("TUF"))
@@ -385,7 +381,7 @@ namespace GHelper
var payload = new byte[300];
Array.Copy(msg, payload, msg.Length);
foreach (HidDevice device in GetHidDevices(new int[] { 0x1970 }, 0, 300))
foreach (HidDevice device in GetHidDevices(new int[] { 0x1970 }, 300))
{
device.OpenDevice();
Logger.WriteLine("XGM " + device.Attributes.ProductHexId + "|" + device.Capabilities.FeatureReportByteLength + ":" + BitConverter.ToString(msg));

View File

@@ -133,14 +133,14 @@ namespace GHelper
labelFansResult.Visible = false;
trackUV.Minimum = -30;
trackUV.Maximum = 0;
trackUV.Minimum = Undervolter.MinCPUUV;
trackUV.Maximum = Undervolter.MaxCPUUV;
trackUViGPU.Minimum = -20;
trackUViGPU.Maximum = 0;
trackUViGPU.Minimum = Undervolter.MinIGPUUV;
trackUViGPU.Maximum = Undervolter.MaxIGPUUV;
trackTemp.Minimum = 75;
trackTemp.Maximum = 97;
trackTemp.Minimum = Undervolter.MinTemp;
trackTemp.Maximum = Undervolter.MaxTemp;
FillModes();

View File

@@ -16,7 +16,7 @@
<PlatformTarget>AnyCPU</PlatformTarget>
<ProduceReferenceAssembly>False</ProduceReferenceAssembly>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<AssemblyVersion>0.88</AssemblyVersion>
<AssemblyVersion>0.89</AssemblyVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">

View File

@@ -11,8 +11,8 @@ namespace GHelper.Gpu;
public class NvidiaGpuControl : IGpuControl
{
public const int MaxCoreOffset = 250;
public const int MaxMemoryOffset = 250;
public static int MaxCoreOffset => AppConfig.Get("max_gpu_core", 250);
public static int MaxMemoryOffset => AppConfig.Get("max_gpu_memory", 250);
public const int MinCoreOffset = -250;
public const int MinMemoryOffset = -250;
@@ -79,6 +79,12 @@ public class NvidiaGpuControl : IGpuControl
core = states.Clocks[PerformanceStateId.P0_3DPerformance][0].FrequencyDeltaInkHz.DeltaValue / 1000;
memory = states.Clocks[PerformanceStateId.P0_3DPerformance][1].FrequencyDeltaInkHz.DeltaValue / 1000;
Logger.WriteLine($"GET GPU CLOCKS: {core}, {memory}");
foreach (var delta in states.Voltages[PerformanceStateId.P0_3DPerformance])
{
Logger.WriteLine("GPU VOLT:" + delta.IsEditable + " - " + delta.ValueDeltaInMicroVolt.DeltaValue);
}
return 0;
}
@@ -117,7 +123,7 @@ public class NvidiaGpuControl : IGpuControl
return status;
}
public int SetClocks(int core, int memory)
public int SetClocks(int core, int memory, int voltage = 0)
{
if (core < MinCoreOffset || core > MaxCoreOffset) return 0;
@@ -127,9 +133,10 @@ public class NvidiaGpuControl : IGpuControl
var coreClock = new PerformanceStates20ClockEntryV1(PublicClockDomain.Graphics, new PerformanceStates20ParameterDelta(core * 1000));
var memoryClock = new PerformanceStates20ClockEntryV1(PublicClockDomain.Memory, new PerformanceStates20ParameterDelta(memory * 1000));
var voltageEntry = new PerformanceStates20BaseVoltageEntryV1(PerformanceVoltageDomain.Core, new PerformanceStates20ParameterDelta(voltage));
PerformanceStates20ClockEntryV1[] clocks = { coreClock, memoryClock };
PerformanceStates20BaseVoltageEntryV1[] voltages = { };
PerformanceStates20BaseVoltageEntryV1[] voltages = { };
PerformanceState20[] performanceStates = { new PerformanceState20(PerformanceStateId.P0_3DPerformance, clocks, voltages) };

View File

@@ -10,6 +10,16 @@ namespace Ryzen
{
internal class Undervolter
{
public const int MinCPUUV = -30;
public const int MaxCPUUV = 0;
public const int MinIGPUUV = -20;
public const int MaxIGPUUV = 0;
public const int MinTemp = 75;
public const int MaxTemp = 98;
public static string[] FAM = { "RAVEN", "PICASSO", "DALI", "RENOIR/LUCIENNE", "MATISSE", "VANGOGH", "VERMEER", "CEZANNE/BARCELO", "REMBRANDT", "PHOENIX", "RAPHAEL/DRAGON RANGE" };
public static int FAMID { get; protected set; }

View File

@@ -1156,17 +1156,17 @@ namespace GHelper
try
{
if (cpuUV >= -40 && cpuUV <= 0)
if (cpuUV >= Undervolter.MinCPUUV && cpuUV <= Undervolter.MaxCPUUV)
{
SendCommand.set_coall(cpuUV);
}
if (igpuUV >= -40 && igpuUV <= 0)
if (igpuUV >= Undervolter.MinIGPUUV && igpuUV <= Undervolter.MaxIGPUUV)
{
SendCommand.set_cogfx(igpuUV);
}
if (cpuTemp >= 70 && cpuTemp <= 97)
if (cpuTemp >= Undervolter.MinTemp && cpuTemp <= Undervolter.MaxTemp)
{
SendCommand.set_tctl_temp((uint)cpuTemp);
SendCommand.set_apu_skin_temp_limit((uint)cpuTemp);