Compare commits

..

16 Commits
0.4 ... v0.5.1

Author SHA1 Message Date
seerge
c9e25b6358 Minor tweaks and cleanup 2023-02-14 11:47:17 +01:00
seerge
fb4a0cf3db - 2023-02-14 00:02:17 +01:00
seerge
b534becbf5 = 2023-02-14 00:02:06 +01:00
seerge
99316da55e Added battery charge limit control 2023-02-13 23:30:03 +01:00
seerge
cf92e04501 2023-02-13 19:33:50 +01:00
seerge
39514d89f6 - 2023-02-13 19:31:18 +01:00
seerge
293ab6f35d Workflow adjustments 2023-02-13 19:27:39 +01:00
seerge
f2967fcc79 - 2023-02-13 19:23:29 +01:00
seerge
e060feaf09 Workflow adjustments 2023-02-13 19:19:45 +01:00
seerge
178f61a98d Workflow adjustments 2023-02-13 19:16:20 +01:00
seerge
79b8d6fa14 - 2023-02-13 19:11:49 +01:00
seerge
007f6ef1a3 Minor fixes 2023-02-13 19:07:07 +01:00
seerge
1637f36d1d Minor fixes 2023-02-13 19:05:48 +01:00
seerge
0f3f54c50a Merge branch 'main' of https://github.com/seerge/g14-helper 2023-02-13 19:02:17 +01:00
seerge
aff667345d Minor fixes 2023-02-13 19:02:10 +01:00
seerge
b14ee181f9 Create main.yml 2023-02-13 19:01:31 +01:00
10 changed files with 117 additions and 47 deletions

31
.github/workflows/main.yml vendored Normal file
View File

@@ -0,0 +1,31 @@
name: Main
on:
push:
tags:
- "v*.*"
workflow_dispatch:
permissions:
contents: write
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Build
run: |
mkdir release
cp *.exe ./release
cp ghelper.ps1 ./release
zip -r g14-helper.zip ./release
- name: Release
uses: softprops/action-gh-release@v1
with:
files: |
g14-helper.zip

View File

@@ -10,7 +10,7 @@ A small windows system tray utility that allows you to switch between 3 main GPU
2. Standard mode (Windows Hybrid) : iGPU and dGPU (Radeon 6700s/6800s) enabled, iGPU drives built in display
3. Ultimate mode: iGPU and dGPU enabled, but dGPU drives built in display
##UPDATE: February 12, 2023
## UPDATE: February 12, 2023
1. Added switching of **Performance profiles (including default fan curves)** is also available! switching happens via same ASUS WMI low level commands. Profiles are same as in Armory Crate - Silent, Balanced and Turbo.

View File

@@ -1,18 +0,0 @@
$taskName = "G14Helper"
$task = Get-ScheduledTask -TaskName $taskName -ErrorAction SilentlyContinue
if ($task -ne $null)
{
Unregister-ScheduledTask -TaskName $taskName -Confirm:$false
}
$scriptDir = Split-Path $PSCommandPath -Parent
# TODO: EDIT THIS STUFF AS NEEDED...
$action = New-ScheduledTaskAction -Execute "$scriptDir\g14-helper.exe"
$trigger = New-ScheduledTaskTrigger -AtLogon
$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries
$principal = New-ScheduledTaskPrincipal -UserId $env:USERNAME -RunLevel Highest
$definition = New-ScheduledTask -Action $action -Principal $principal -Trigger $trigger -Settings $settings -Description "Run $($taskName) at Logon"
Register-ScheduledTask -TaskName $taskName -InputObject $definition

Binary file not shown.

View File

@@ -1,2 +1,2 @@
ps2exe .\gpu.ps1 g14-helper.exe -title 'G14 Helper' -DPIAware -winFormsDPIAware -requireAdmin -iconFile 'standard.ico' -noConsole -copyright 'G14 Helper Tool' -noOutput
ps2exe .\ghelper.ps1 g14-helper.exe -title 'G14 Helper' -DPIAware -winFormsDPIAware -requireAdmin -iconFile 'standard.ico' -noConsole -copyright 'G14 Helper Tool' -noOutput
.\g14-helper.exe

View File

@@ -17,7 +17,7 @@ Function Get-PSScriptPath {
function SetAutostart () {
$taskName = "G14Helper"
$task = Get-ScheduledTask -TaskName $taskName -ErrorAction SilentlyContinue
if ($task -ne $null) {return }
if ($null -ne $task) {return }
$scriptDir = Get-PSScriptPath
@@ -34,7 +34,7 @@ function SetAutostart () {
function CheckAutostart () {
$task = Get-ScheduledTask -TaskName "G14Helper" -ErrorAction SilentlyContinue
$Menu_Autostart.Checked = ($task -ne $null)
$Menu_Autostart.Checked = ($null -ne $task)
}
function DisableAutostart () {
@@ -190,8 +190,8 @@ $icon_ultimate = [Drawing.Icon][IO.MemoryStream][Convert]::FromBase64String("AAA
# Init Config and Log
$ghelper_app_path = "$($env:LOCALAPPDATA)\GHelper"
$ghelper_config_path = "$($env:LOCALAPPDATA)\GHelper\config.json"
$ghelper_log_path = "$($env:LOCALAPPDATA)\GHelper\log.txt"
$ghelper_config_path = "$ghelper_app_path\config.json"
$ghelper_log_path = "$ghelper_app_path\log.txt"
New-Item -ItemType Directory -Force -Path $ghelper_app_path
@@ -203,6 +203,7 @@ $Main_Tool_Icon.Visible = $true
$Menu_Perf_Title = New-Object System.Windows.Forms.MenuItem("Mode")
$Menu_Perf_Title.Enabled = $false
$Menu_Perf_Silent = New-Object System.Windows.Forms.MenuItem("Silent")
$Menu_Perf_Balanced = New-Object System.Windows.Forms.MenuItem("Balanced")
$Menu_Perf_Turbo = New-Object System.Windows.Forms.MenuItem("Turbo")
@@ -229,30 +230,46 @@ $Menu_Autostart = New-Object System.Windows.Forms.MenuItem("Run on startup")
$Menu_Exit = New-Object System.Windows.Forms.MenuItem("Exit")
$contextmenu = New-Object System.Windows.Forms.ContextMenu
$contextmenu.MenuItems.AddRange($Menu_Perf_Title)
$contextmenu.MenuItems.AddRange($Menu_Perf_Silent)
$contextmenu.MenuItems.AddRange($Menu_Perf_Balanced)
$contextmenu.MenuItems.AddRange($Menu_Perf_Turbo)
$contextmenu.MenuItems.AddRange("-")
$contextmenu.MenuItems.AddRange($Menu_Title)
$contextmenu.MenuItems.AddRange($Menu_Eco)
$contextmenu.MenuItems.AddRange($Menu_Standard)
$contextmenu.MenuItems.AddRange($Menu_Ultimate)
$contextmenu.MenuItems.AddRange("-")
$contextmenu.MenuItems.AddRange($Menu_RR)
$contextmenu.MenuItems.AddRange($Menu_RR60)
$contextmenu.MenuItems.AddRange($Menu_RR120)
$contextmenu.MenuItems.AddRange($Menu_OD)
$contextmenu.MenuItems.AddRange("-")
$Menu_Charge60 = New-Object System.Windows.Forms.MenuItem("60%")
$Menu_Charge80 = New-Object System.Windows.Forms.MenuItem("80%")
$Menu_Charge100 = New-Object System.Windows.Forms.MenuItem("100%")
$Submenu_Charge = New-Object System.Windows.Forms.MenuItem("Charge Limit")
$Submenu_Charge.MenuItems.AddRange($Menu_Charge60)
$Submenu_Charge.MenuItems.AddRange($Menu_Charge80)
$Submenu_Charge.MenuItems.AddRange($Menu_Charge100)
$contextmenu.MenuItems.AddRange($Submenu_Charge)
$contextmenu.MenuItems.AddRange("-")
$contextmenu.MenuItems.AddRange($Menu_Autostart)
$contextmenu.MenuItems.AddRange("-")
$contextmenu.MenuItems.AddRange($Menu_Exit)
$Main_Tool_Icon.ContextMenu = $contextmenu
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_Perf_Title)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_Perf_Silent)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_Perf_Balanced)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_Perf_Turbo)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange("-")
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_Title)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_Eco)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_Standard)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_Ultimate)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange("-")
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_RR)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_RR60)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_RR120)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_OD)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange("-")
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_Autostart)
$Main_Tool_Icon.contextMenu.MenuItems.AddRange("-")
$Main_Tool_Icon.contextMenu.MenuItems.AddRange($Menu_Exit)
# Hardware Initialisation
@@ -393,6 +410,33 @@ function SetPeformanceMode ($performance_mode = 0) {
WriteLog("Performance set to "+$performance_mode)
}
function SetChargeLimit ($charge_limit = 100) {
$Menu_Charge60.Checked = $false;
$Menu_Charge80.Checked = $false;
$Menu_Charge100.Checked = $false;
switch ($charge_limit)
{
60 {
$Menu_Charge60.Checked = $true
}
80 {
$Menu_Charge80.Checked = $true
}
Default {
$Menu_Charge100.Checked = $true
$charge_limit = 100
}
}
SaveConfigSetting -Name 'charge_limit' -Value $charge_limit
$Submenu_Charge.Text = "Charge Limit: $charge_limit%"
Invoke-CimMethod $asushw -MethodName DEVS -Arguments @{Device_ID=0x00120057 ; Control_status=$charge_limit }
WriteLog("Charge limit set to "+$charge_limit)
}
function SetPanelOverdrive ($overdrive = 1) {
SaveConfigSetting -Name 'panel_overdrive' -Value $overdrive
Invoke-CimMethod $asushw -MethodName DEVS -Arguments @{Device_ID=$device_overdrive ; Control_status=$overdrive }
@@ -487,7 +531,7 @@ function UIGPUMode ($gpu_mode) {
$Main_Tool_Icon.Icon = $icon_eco
}
"ultimate" {
$script:title_gpu = "GPU: dGPU exclusive"
$script:title_gpu = "GPU: dGPU"
$Menu_Ultimate.Checked = $true
$Main_Tool_Icon.Icon = $icon_ultimate
}
@@ -507,6 +551,7 @@ LoadConfig
SetPeformanceMode(GetConfigSetting('performance_mode'))
SetPanelOverdrive(GetConfigSetting('panel_overdrive'))
SetChargeLimit(GetConfigSetting('charge_limit'))
GetGPUMode
@@ -566,6 +611,18 @@ $Menu_RR120.add_Click({
CheckScreen
})
$Menu_Charge60.add_Click({
SetChargeLimit(60)
})
$Menu_Charge80.add_Click({
SetChargeLimit(80)
})
$Menu_Charge100.add_Click({
SetChargeLimit(100)
})
$Menu_OD.add_Click({
if ($Menu_OD.Checked) {
SetPanelOverdrive(0)

Binary file not shown.

After

Width:  |  Height:  |  Size: 421 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 260 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 885 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 400 B