diff --git a/app/Fans.Designer.cs b/app/Fans.Designer.cs index a027e1be..512228c6 100644 --- a/app/Fans.Designer.cs +++ b/app/Fans.Designer.cs @@ -31,14 +31,14 @@ namespace GHelper /// private void InitializeComponent() { - ChartArea chartArea1 = new ChartArea(); - Title title1 = new Title(); - ChartArea chartArea2 = new ChartArea(); - Title title2 = new Title(); - ChartArea chartArea3 = new ChartArea(); - Title title3 = new Title(); - ChartArea chartArea4 = new ChartArea(); - Title title4 = new Title(); + ChartArea chartArea5 = new ChartArea(); + Title title5 = new Title(); + ChartArea chartArea6 = new ChartArea(); + Title title6 = new Title(); + ChartArea chartArea7 = new ChartArea(); + Title title7 = new Title(); + ChartArea chartArea8 = new ChartArea(); + Title title8 = new Title(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Fans)); panelFans = new Panel(); labelTip = new Label(); @@ -61,6 +61,13 @@ namespace GHelper comboBoost = new RComboBox(); panelSliders = new Panel(); panelAdvanced = new Panel(); + panelTemperature = new Panel(); + labelTemp = new Label(); + labelLeftTemp = new Label(); + trackTemp = new TrackBar(); + panelTitleTemp = new Panel(); + pictureTemp = new PictureBox(); + labelTempLimit = new Label(); panelAdvancedApply = new Panel(); checkApplyUV = new RCheckBox(); buttonApplyAdvanced = new RButton(); @@ -74,8 +81,8 @@ namespace GHelper labelLeftUV = new Label(); trackUV = new TrackBar(); panelTitleAdvanced = new Panel(); - pictureAdvanced = new PictureBox(); - labelAdvanced = new Label(); + pictureUV = new PictureBox(); + labelTitleUV = new Label(); panelPower = new Panel(); panelApplyPower = new Panel(); checkApplyPower = new RCheckBox(); @@ -134,13 +141,17 @@ namespace GHelper panelApplyFans.SuspendLayout(); panelSliders.SuspendLayout(); panelAdvanced.SuspendLayout(); + panelTemperature.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)trackTemp).BeginInit(); + panelTitleTemp.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)pictureTemp).BeginInit(); panelAdvancedApply.SuspendLayout(); panelUViGPU.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)trackUViGPU).BeginInit(); panelUV.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)trackUV).BeginInit(); panelTitleAdvanced.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)pictureAdvanced).BeginInit(); + ((System.ComponentModel.ISupportInitialize)pictureUV).BeginInit(); panelPower.SuspendLayout(); panelApplyPower.SuspendLayout(); panelB0.SuspendLayout(); @@ -223,8 +234,8 @@ namespace GHelper // // chartGPU // - chartArea1.Name = "ChartArea1"; - chartGPU.ChartAreas.Add(chartArea1); + chartArea5.Name = "ChartArea1"; + chartGPU.ChartAreas.Add(chartArea5); chartGPU.Dock = DockStyle.Fill; chartGPU.Location = new Point(12, 467); chartGPU.Margin = new Padding(2, 10, 2, 10); @@ -232,13 +243,13 @@ namespace GHelper chartGPU.Size = new Size(782, 437); chartGPU.TabIndex = 17; chartGPU.Text = "chartGPU"; - title1.Name = "Title1"; - chartGPU.Titles.Add(title1); + title5.Name = "Title1"; + chartGPU.Titles.Add(title5); // // chartCPU // - chartArea2.Name = "ChartArea1"; - chartCPU.ChartAreas.Add(chartArea2); + chartArea6.Name = "ChartArea1"; + chartCPU.ChartAreas.Add(chartArea6); chartCPU.Dock = DockStyle.Fill; chartCPU.Location = new Point(12, 10); chartCPU.Margin = new Padding(2, 10, 2, 10); @@ -246,13 +257,13 @@ namespace GHelper chartCPU.Size = new Size(782, 437); chartCPU.TabIndex = 14; chartCPU.Text = "chartCPU"; - title2.Name = "Title1"; - chartCPU.Titles.Add(title2); + title6.Name = "Title1"; + chartCPU.Titles.Add(title6); // // chartXGM // - chartArea3.Name = "ChartAreaXGM"; - chartXGM.ChartAreas.Add(chartArea3); + chartArea7.Name = "ChartAreaXGM"; + chartXGM.ChartAreas.Add(chartArea7); chartXGM.Dock = DockStyle.Fill; chartXGM.Location = new Point(12, 1381); chartXGM.Margin = new Padding(2, 10, 2, 10); @@ -260,14 +271,14 @@ namespace GHelper chartXGM.Size = new Size(782, 440); chartXGM.TabIndex = 14; chartXGM.Text = "chartXGM"; - title3.Name = "Title4"; - chartXGM.Titles.Add(title3); + title7.Name = "Title4"; + chartXGM.Titles.Add(title7); chartXGM.Visible = false; // // chartMid // - chartArea4.Name = "ChartArea3"; - chartMid.ChartAreas.Add(chartArea4); + chartArea8.Name = "ChartArea3"; + chartMid.ChartAreas.Add(chartArea8); chartMid.Dock = DockStyle.Fill; chartMid.Location = new Point(12, 924); chartMid.Margin = new Padding(2, 10, 2, 10); @@ -275,8 +286,8 @@ namespace GHelper chartMid.Size = new Size(782, 437); chartMid.TabIndex = 14; chartMid.Text = "chartMid"; - title4.Name = "Title3"; - chartMid.Titles.Add(title4); + title8.Name = "Title3"; + chartMid.Titles.Add(title8); chartMid.Visible = false; // // panelTitleFans @@ -474,19 +485,102 @@ namespace GHelper panelAdvanced.Controls.Add(panelUViGPU); panelAdvanced.Controls.Add(panelUV); panelAdvanced.Controls.Add(panelTitleAdvanced); + panelAdvanced.Controls.Add(panelTemperature); + panelAdvanced.Controls.Add(panelTitleTemp); panelAdvanced.Dock = DockStyle.Top; panelAdvanced.Location = new Point(10, 1284); panelAdvanced.Name = "panelAdvanced"; - panelAdvanced.Size = new Size(520, 588); + panelAdvanced.Size = new Size(520, 778); panelAdvanced.TabIndex = 14; panelAdvanced.Visible = false; // + // panelTemperature + // + panelTemperature.AutoSize = true; + panelTemperature.AutoSizeMode = AutoSizeMode.GrowAndShrink; + panelTemperature.Controls.Add(labelTemp); + panelTemperature.Controls.Add(labelLeftTemp); + panelTemperature.Controls.Add(trackTemp); + panelTemperature.Dock = DockStyle.Top; + panelTemperature.Location = new Point(0, 66); + panelTemperature.Margin = new Padding(4); + panelTemperature.MaximumSize = new Size(0, 124); + panelTemperature.Name = "panelTemperature"; + panelTemperature.Size = new Size(520, 124); + panelTemperature.TabIndex = 51; + // + // labelTemp + // + labelTemp.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point); + labelTemp.Location = new Point(347, 13); + labelTemp.Margin = new Padding(4, 0, 4, 0); + labelTemp.Name = "labelTemp"; + labelTemp.Size = new Size(148, 32); + labelTemp.TabIndex = 13; + labelTemp.Text = "T"; + labelTemp.TextAlign = ContentAlignment.TopRight; + // + // labelLeftTemp + // + labelLeftTemp.AutoSize = true; + labelLeftTemp.Location = new Point(10, 10); + labelLeftTemp.Margin = new Padding(4, 0, 4, 0); + labelLeftTemp.Name = "labelLeftTemp"; + labelLeftTemp.Size = new Size(183, 32); + labelLeftTemp.TabIndex = 12; + labelLeftTemp.Text = "CPU Temp Limit"; + // + // trackTemp + // + trackTemp.Location = new Point(6, 48); + trackTemp.Margin = new Padding(4, 2, 4, 2); + trackTemp.Maximum = 0; + trackTemp.Minimum = -40; + trackTemp.Name = "trackTemp"; + trackTemp.Size = new Size(508, 90); + trackTemp.TabIndex = 11; + trackTemp.TickFrequency = 5; + trackTemp.TickStyle = TickStyle.TopLeft; + // + // panelTitleTemp + // + panelTitleTemp.Controls.Add(pictureTemp); + panelTitleTemp.Controls.Add(labelTempLimit); + panelTitleTemp.Dock = DockStyle.Top; + panelTitleTemp.Location = new Point(0, 0); + panelTitleTemp.Name = "panelTitleTemp"; + panelTitleTemp.Size = new Size(520, 66); + panelTitleTemp.TabIndex = 50; + // + // pictureTemp + // + pictureTemp.BackgroundImage = Properties.Resources.icons8_temperature_48; + pictureTemp.BackgroundImageLayout = ImageLayout.Zoom; + pictureTemp.InitialImage = null; + pictureTemp.Location = new Point(10, 18); + pictureTemp.Margin = new Padding(4, 2, 4, 10); + pictureTemp.Name = "pictureTemp"; + pictureTemp.Size = new Size(36, 38); + pictureTemp.TabIndex = 48; + pictureTemp.TabStop = false; + // + // labelTempLimit + // + labelTempLimit.AutoSize = true; + labelTempLimit.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point); + labelTempLimit.Location = new Point(51, 20); + labelTempLimit.Margin = new Padding(4, 0, 4, 0); + labelTempLimit.Name = "labelTempLimit"; + labelTempLimit.Size = new Size(140, 32); + labelTempLimit.TabIndex = 47; + labelTempLimit.Text = "Temp Limit"; + // // panelAdvancedApply // panelAdvancedApply.Controls.Add(checkApplyUV); panelAdvancedApply.Controls.Add(buttonApplyAdvanced); panelAdvancedApply.Dock = DockStyle.Top; - panelAdvancedApply.Location = new Point(0, 512); + panelAdvancedApply.Location = new Point(0, 702); panelAdvancedApply.Name = "panelAdvancedApply"; panelAdvancedApply.Size = new Size(520, 76); panelAdvancedApply.TabIndex = 47; @@ -525,7 +619,7 @@ namespace GHelper // labelRisky // labelRisky.Dock = DockStyle.Top; - labelRisky.Location = new Point(0, 314); + labelRisky.Location = new Point(0, 504); labelRisky.Name = "labelRisky"; labelRisky.Padding = new Padding(10, 10, 10, 5); labelRisky.Size = new Size(520, 198); @@ -540,7 +634,7 @@ namespace GHelper panelUViGPU.Controls.Add(labelLeftUViGPU); panelUViGPU.Controls.Add(trackUViGPU); panelUViGPU.Dock = DockStyle.Top; - panelUViGPU.Location = new Point(0, 190); + panelUViGPU.Location = new Point(0, 380); panelUViGPU.Margin = new Padding(4); panelUViGPU.MaximumSize = new Size(0, 124); panelUViGPU.Name = "panelUViGPU"; @@ -588,7 +682,7 @@ namespace GHelper panelUV.Controls.Add(labelLeftUV); panelUV.Controls.Add(trackUV); panelUV.Dock = DockStyle.Top; - panelUV.Location = new Point(0, 66); + panelUV.Location = new Point(0, 256); panelUV.Margin = new Padding(4); panelUV.MaximumSize = new Size(0, 124); panelUV.Name = "panelUV"; @@ -630,36 +724,36 @@ namespace GHelper // // panelTitleAdvanced // - panelTitleAdvanced.Controls.Add(pictureAdvanced); - panelTitleAdvanced.Controls.Add(labelAdvanced); + panelTitleAdvanced.Controls.Add(pictureUV); + panelTitleAdvanced.Controls.Add(labelTitleUV); panelTitleAdvanced.Dock = DockStyle.Top; - panelTitleAdvanced.Location = new Point(0, 0); + panelTitleAdvanced.Location = new Point(0, 190); panelTitleAdvanced.Name = "panelTitleAdvanced"; panelTitleAdvanced.Size = new Size(520, 66); panelTitleAdvanced.TabIndex = 48; // - // pictureAdvanced + // pictureUV // - pictureAdvanced.BackgroundImage = Properties.Resources.icons8_voltage_60; - pictureAdvanced.BackgroundImageLayout = ImageLayout.Zoom; - pictureAdvanced.InitialImage = null; - pictureAdvanced.Location = new Point(10, 18); - pictureAdvanced.Margin = new Padding(4, 2, 4, 10); - pictureAdvanced.Name = "pictureAdvanced"; - pictureAdvanced.Size = new Size(36, 38); - pictureAdvanced.TabIndex = 48; - pictureAdvanced.TabStop = false; + pictureUV.BackgroundImage = Properties.Resources.icons8_voltage_60; + pictureUV.BackgroundImageLayout = ImageLayout.Zoom; + pictureUV.InitialImage = null; + pictureUV.Location = new Point(10, 18); + pictureUV.Margin = new Padding(4, 2, 4, 10); + pictureUV.Name = "pictureUV"; + pictureUV.Size = new Size(36, 38); + pictureUV.TabIndex = 48; + pictureUV.TabStop = false; // - // labelAdvanced + // labelTitleUV // - labelAdvanced.AutoSize = true; - labelAdvanced.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point); - labelAdvanced.Location = new Point(51, 20); - labelAdvanced.Margin = new Padding(4, 0, 4, 0); - labelAdvanced.Name = "labelAdvanced"; - labelAdvanced.Size = new Size(166, 32); - labelAdvanced.TabIndex = 47; - labelAdvanced.Text = "Undervolting"; + labelTitleUV.AutoSize = true; + labelTitleUV.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point); + labelTitleUV.Location = new Point(51, 20); + labelTitleUV.Margin = new Padding(4, 0, 4, 0); + labelTitleUV.Name = "labelTitleUV"; + labelTitleUV.Size = new Size(166, 32); + labelTitleUV.TabIndex = 47; + labelTitleUV.Text = "Undervolting"; // // panelPower // @@ -695,7 +789,7 @@ namespace GHelper checkApplyPower.Margin = new Padding(0); checkApplyPower.Name = "checkApplyPower"; checkApplyPower.Padding = new Padding(16, 6, 16, 6); - checkApplyPower.Size = new Size(329, 46); + checkApplyPower.Size = new Size(489, 46); checkApplyPower.TabIndex = 45; checkApplyPower.Text = "Apply Power Limits"; checkApplyPower.UseVisualStyleBackColor = false; @@ -1299,6 +1393,12 @@ namespace GHelper panelSliders.PerformLayout(); panelAdvanced.ResumeLayout(false); panelAdvanced.PerformLayout(); + panelTemperature.ResumeLayout(false); + panelTemperature.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)trackTemp).EndInit(); + panelTitleTemp.ResumeLayout(false); + panelTitleTemp.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)pictureTemp).EndInit(); panelAdvancedApply.ResumeLayout(false); panelUViGPU.ResumeLayout(false); panelUViGPU.PerformLayout(); @@ -1308,7 +1408,7 @@ namespace GHelper ((System.ComponentModel.ISupportInitialize)trackUV).EndInit(); panelTitleAdvanced.ResumeLayout(false); panelTitleAdvanced.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)pictureAdvanced).EndInit(); + ((System.ComponentModel.ISupportInitialize)pictureUV).EndInit(); panelPower.ResumeLayout(false); panelPower.PerformLayout(); panelApplyPower.ResumeLayout(false); @@ -1416,8 +1516,8 @@ namespace GHelper private Label labelUV; private Label labelLeftUV; private TrackBar trackUV; - private PictureBox pictureAdvanced; - private Label labelAdvanced; + private PictureBox pictureUV; + private Label labelTitleUV; private RButton buttonApplyAdvanced; private Panel panelApplyPower; private Panel panelAdvanced; @@ -1436,5 +1536,12 @@ namespace GHelper private PictureBox pictureBoost; private Label labelBoostTitle; private Label labelRisky; + private Panel panelTitleTemp; + private PictureBox pictureTemp; + private Label labelTempLimit; + private Panel panelTemperature; + private Label labelTemp; + private Label labelLeftTemp; + private TrackBar trackTemp; } } \ No newline at end of file diff --git a/app/Fans.cs b/app/Fans.cs index 005049a0..cf3bbd30 100644 --- a/app/Fans.cs +++ b/app/Fans.cs @@ -132,6 +132,17 @@ namespace GHelper //labelInfo.MaximumSize = new Size(280, 0); labelFansResult.Visible = false; + + trackUV.Minimum = -30; + trackUV.Maximum = 0; + + trackUViGPU.Minimum = -20; + trackUViGPU.Maximum = 0; + + trackTemp.Minimum = 75; + trackTemp.Maximum = 97; + + FillModes(); InitAll(); @@ -147,14 +158,10 @@ namespace GHelper buttonRemove.Click += ButtonRemove_Click; buttonRename.Click += ButtonRename_Click; - trackUV.Minimum = -30; - trackUV.Maximum = 0; - - trackUViGPU.Minimum = -20; - trackUViGPU.Maximum = 0; trackUV.Scroll += TrackUV_Scroll; trackUViGPU.Scroll += TrackUV_Scroll; + trackTemp.Scroll += TrackUV_Scroll; buttonApplyAdvanced.Click += ButtonApplyAdvanced_Click; @@ -248,6 +255,7 @@ namespace GHelper int cpuUV = Math.Max(trackUV.Minimum, Math.Min(trackUV.Maximum, AppConfig.GetMode("cpu_uv", 0))); int igpuUV = Math.Max(trackUViGPU.Minimum, Math.Min(trackUViGPU.Maximum, AppConfig.GetMode("igpu_uv", 0))); + int temp = Math.Max(trackTemp.Minimum, Math.Min(trackTemp.Maximum, AppConfig.GetMode("cpu_temp", 96))); checkApplyUV.Enabled = checkApplyUV.Checked = AppConfig.IsMode("auto_uv"); @@ -257,6 +265,10 @@ namespace GHelper trackUViGPU.Value = igpuUV; labelUViGPU.Text = trackUViGPU.Value.ToString(); + trackTemp.Value = temp; + labelTemp.Text = trackTemp.Value.ToString() + "°C"; + + buttonAdvanced.Visible = Undervolter.IsAMD(); } @@ -269,7 +281,9 @@ namespace GHelper labelUV.Text = trackUV.Value.ToString(); labelUViGPU.Text = trackUViGPU.Value.ToString(); + labelTemp.Text = trackTemp.Value.ToString() + "°C"; + AppConfig.SetMode("cpu_temp", trackTemp.Value); AppConfig.SetMode("cpu_uv", trackUV.Value); AppConfig.SetMode("igpu_uv", trackUViGPU.Value); diff --git a/app/GHelper.csproj b/app/GHelper.csproj index 04ecc84b..0e2a18a9 100644 --- a/app/GHelper.csproj +++ b/app/GHelper.csproj @@ -16,7 +16,7 @@ AnyCPU False True - 0.87 + 0.88 diff --git a/app/Properties/Resources.Designer.cs b/app/Properties/Resources.Designer.cs index 5784fa03..1ff1f7f4 100644 --- a/app/Properties/Resources.Designer.cs +++ b/app/Properties/Resources.Designer.cs @@ -480,6 +480,16 @@ namespace GHelper.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_temperature_48 { + get { + object obj = ResourceManager.GetObject("icons8-temperature-48", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Bitmap. /// diff --git a/app/Properties/Resources.resx b/app/Properties/Resources.resx index cecdedaf..92c3e9fb 100644 --- a/app/Properties/Resources.resx +++ b/app/Properties/Resources.resx @@ -118,6 +118,9 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + ..\Resources\icons8-video-card-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\brightness-up.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -157,9 +160,6 @@ ..\Resources\icons8-processor-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icons8-fan-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\icons8-add-64.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -169,9 +169,6 @@ ..\Resources\icons8-spa-flower-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icons8-edit-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\icons8-share-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -190,9 +187,6 @@ ..\Resources\brightness-down.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icons8-save-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\icons8-fan-speed-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -214,14 +208,17 @@ ..\Resources\icons8-charging-battery-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icons8-edit-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\backlight-up.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\icons8-spa-flower-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icons8-speed-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icons8-save-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\icons8-function-mac-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -229,8 +226,8 @@ ..\Resources\icons8-balance-symbol-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icons8-organic-food-961.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icons8-fan-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\icons8-matrix-desktop-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -238,15 +235,18 @@ ..\Resources\icons8-remove-64.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icons8-speed-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\icons8-xbox-controller-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icons8-organic-food-961.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\icons8-project-management-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icons8-video-card-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\icons8-leaf-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -256,13 +256,16 @@ ..\Resources\backlight-down.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icons8-boost-30.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\icons8-speed-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\icons8-video-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icons8-boost-30.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icons8-temperature-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a \ No newline at end of file diff --git a/app/Resources/icons8-temperature-48.png b/app/Resources/icons8-temperature-48.png new file mode 100644 index 00000000..8f76c9c8 Binary files /dev/null and b/app/Resources/icons8-temperature-48.png differ diff --git a/app/Ryzen/SendCommand.cs b/app/Ryzen/SendCommand.cs index fa488e80..77be8411 100644 --- a/app/Ryzen/SendCommand.cs +++ b/app/Ryzen/SendCommand.cs @@ -195,15 +195,17 @@ namespace Ryzen uint[] Args = new uint[6]; Args[0] = value; + Smu.Status? result = null; + switch (FAMID) { case -1: - RyzenAccess.SendPsmu(0x68, ref Args); + result = RyzenAccess.SendPsmu(0x68, ref Args); break; case 0: case 1: case 2: - RyzenAccess.SendMp1(0x1f, ref Args); + result = RyzenAccess.SendMp1(0x1f, ref Args); break; case 3: case 5: @@ -211,19 +213,22 @@ namespace Ryzen case 8: case 9: case 11: - RyzenAccess.SendMp1(0x19, ref Args); + result = RyzenAccess.SendMp1(0x19, ref Args); break; case 4: case 6: RyzenAccess.SendMp1(0x23, ref Args); - RyzenAccess.SendPsmu(0x56, ref Args); + result = RyzenAccess.SendPsmu(0x56, ref Args); break; case 10: - RyzenAccess.SendPsmu(0x59, ref Args); + result = RyzenAccess.SendPsmu(0x59, ref Args); break; default: break; } + + Logger.WriteLine($"CPU Temp: {value} {result}"); + RyzenAccess.Deinitialize(); } @@ -262,21 +267,26 @@ namespace Ryzen uint[] Args = new uint[6]; Args[0] = value; + Smu.Status? result = null; + switch (FAMID) { case 5: case 8: case 9: case 11: - RyzenAccess.SendMp1(0x33, ref Args); + result = RyzenAccess.SendMp1(0x33, ref Args); break; case 3: case 7: - RyzenAccess.SendMp1(0x38, ref Args); + result = RyzenAccess.SendMp1(0x38, ref Args); break; default: break; } + + Logger.WriteLine($"APU Temp: {value} {result}"); + RyzenAccess.Deinitialize(); } diff --git a/app/Settings.cs b/app/Settings.cs index f2395e00..db9fa206 100644 --- a/app/Settings.cs +++ b/app/Settings.cs @@ -31,6 +31,7 @@ namespace GHelper public Extra keyb; public Updates updates; + static long lastUpdate; static long lastRefresh; private bool customFans = false; @@ -182,11 +183,6 @@ namespace GHelper SetContextMenu(); - Task.Run(async () => - { - await Task.Delay(TimeSpan.FromSeconds(1)); - CheckForUpdatesAsync(); - }); } @@ -197,6 +193,17 @@ namespace GHelper { InitScreen(); InitXGM(); + + // Run update once per 12 hours + if (Math.Abs(DateTimeOffset.Now.ToUnixTimeSeconds() - lastUpdate) < 43200) return; + lastUpdate = DateTimeOffset.Now.ToUnixTimeSeconds(); + + Task.Run(async () => + { + await Task.Delay(TimeSpan.FromSeconds(1)); + CheckForUpdatesAsync(); + }); + } } @@ -1145,6 +1152,7 @@ namespace GHelper int cpuUV = AppConfig.GetMode("cpu_uv", 0); int igpuUV = AppConfig.GetMode("igpu_uv", 0); + int cpuTemp = AppConfig.GetMode("cpu_temp"); try { @@ -1157,7 +1165,15 @@ namespace GHelper { SendCommand.set_cogfx(igpuUV); } - } catch (Exception ex) + + if (cpuTemp >= 70 && cpuTemp <= 97) + { + SendCommand.set_tctl_temp((uint)cpuTemp); + SendCommand.set_apu_skin_temp_limit((uint)cpuTemp); + } + + } + catch (Exception ex) { Logger.WriteLine("UV Error: " + ex.ToString()); }