Giter Site home page Giter Site logo

seerge / g-helper Goto Github PK

View Code? Open in Web Editor NEW
4.8K 33.0 190.0 38.35 MB

Lightweight Armoury Crate alternative for Asus laptops and ROG Ally. Control tool for ROG Zephyrus G14, G15, G16, M16, Flow X13, Flow X16, TUF, Strix, Scar and other models

Home Page: https://seerge.github.io/g-helper/

License: GNU General Public License v3.0

C# 100.00%
g14 g15 mux flow-x13 flow-x16 anime-matrix animatrix aura g-helper armoury

g-helper's People

Contributors

albert24gg avatar artinuri avatar astronaut701 avatar bourbonbourbon avatar constrat avatar dldota avatar etylix avatar hamza417 avatar hkaancaliskan avatar hoangdus avatar hungqbui avatar icestormng avatar jadonclegg avatar ktemkin avatar lswlc33 avatar marcelomijas avatar mdowski avatar mrchenyukun avatar nopeless avatar oleg52 avatar pasical avatar rollercoaster avatar seerge avatar sklynic avatar tbateson avatar tombonnot avatar weslleykawan avatar zimm-lostpolygon avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

g-helper's Issues

While on PD charger, OSD show profile change from time to time

Hello!
On latest version (0.14.0.0) I have noticed that when battery is full, I am receiving OSD notification that profile has been changed to "Balanced" from time to time. I am not sure why.
Maybe when the battery reaches 100% something happens on the laptop and GHelper thinks the laptop's power source has changed?

[Feature Request] Control Keyboard Backlight in Sleep State

Device: 2022 Zephyrus G14 (AMD Ryzen 9 / 6700S)

Issue:

After uninstalling Armory Crate, whenever the device goes into sleep mode the keyboard backlight defaults to a pulsing pattern (2 flashes of white color light every 3 seconds or so). Without Armory Crate, there's no way to change the Aura settings for sleep mode.

Love the project - thanks for sharing it and your time!

Crash on Zephyrus G15 GA503RM

GHelper v0.8.5

Application: GHelper.exe
CoreCLR Version: 7.0.323.6910
.NET Version: 7.0.3
Description: The process was terminated due to an unhandled exception.
Exception Info: System.Management.ManagementException: Generic failure
at System.Management.ManagementException.ThrowWithExtendedInfo(ManagementStatus errorCode)
at System.Management.ManagementObject.InvokeMethod(String methodName, ManagementBaseObject inParameters, InvokeMethodOptions options)
at ASUSWmi.WMICall(String MethodName, Int32 Device_Id, Int32 Control_status)
at ASUSWmi.DeviceSet(Int32 Device_Id, Int32 Control_status)
at GHelper.SettingsForm.SetBatteryChargeLimit(Int32 limit)
at GHelper.Program.Main()

[Bug] Display refresh rate control only works on "main" display, forces wrong refresh rate

With an external monitor plugged in, the Laptop Screen refresh rate toggle will change the refresh rate of the external monitor instead of the laptop's internal monitor as long as the external monitor is selected as the "main" display. Not a big problem since most people will unplug a display before the charger, but it doesn't apply the 60Hz refresh rate to the laptop screen if it's already been applied to the external monitor, so it might be something to watch out for.

The slightly more broken part applies to any Zephyrus G14/G15 that doesn't have a 120Hz screen. Using the "120Hz + OD" setting doesn't restore the native high refresh rate, it just tries to apply 120Hz to the "main" display. If an external screen is plugged in before this is pressed, it will try to force 120Hz on the external screen, as mentioned above. However, my G15 2021 has a 165Hz/60Hz only screen - it can't do 120Hz, so the toggle does nothing and it stays at 60Hz. It might be better to have this toggle back to high refresh rate be user-configurable, so that it can be made to work with other Zephyrus models (probably easier than auto-detecting the correct rates).

[Feature] Optimized dGPU settings

Armored Crate privde Eco / Standard / Optimized settings where as Optimized is recommended - it disables dGPU when on battery to save power - is it possible to add same feature, OR to change automatically to Eco settings when on battery?

[Feature] CLI support

Will the project support cli mode and JSON like stats?

ex)

> g14-helper status -f json
{
  "refresh_rate": 120,
  "mode": "eco"
}
> g14-helper set refresh_rate 65
Err: valid options are 60, 120

I am willing to help on this issue

Startup run issue

Hello,

Thanks for the lightweight software. I've been having issues with the "run on startup" function.
Laptop Info: 2022 ROG G14 GA402RK, win 11, ghelper located in C:\

  1. With the built-in "run on startup" checked. Windows task scheduler shows the "ghelper" task running, and task manager shows a "ghelper" task, but no icon appears.
  2. With the built-in "run on startup" UNchecked. Setup a scheduler myself to run ghelper at startup on log on (w/wo delay). Windows task scheduler shows the "ghelper" task running, and task manager shows a "ghelper" task, but no icon appears.
  3. Manually double-click ghelper after startup or with a .bat file that runs ghelper both work fine.
  4. With the built-in "run on startup" UNchecked. Setup a scheduler myself to run the .bat file at startup on log on (w/wo delay). Windows task scheduler shows the "ghelper" task running, and task manager shows a "ghelper" task, but no icon appears.
  5. Sometimes the ghelper icon shows up for a short period of time after startup and then disappears.

Hope this information will help.

Battery Charge Limit not applying

Hey!

For some reason, on my G401QC, ever since I installed G14 Helper v0.9.2, the battery charge limit of 80% I've set is not applying and thus, my laptop is charging fully to 100%. Also, for me, the laptop screen refresh rate doesn't automatically change from 144Hz + OD to 60Hz when I unplug my laptop even though the iGPU does. It may just be me though.

Thanks in advance

Edit: I've installed MyASUS which I used previously to set the battery charge limit. AC is also fully uninstalled.

[Feature Request] App version Details

Request if we could have the version of the release mentioned somewhere on the app pane (possibly bottom right), so that we can easily figure out when to update

AniMe Matrix disable on battery

Hello! Please add option to disable AniMe Matrix on battery to prolong battery time. Will you add more options later? Like custom moving text or so?

Battery Charge Limit Not Working

The battery charge limit feature is not functioning, it also overrides my "MyAsus" app battery charge limitations and charges battery to 100%.

GPU Fan bug

My GPU fan when changing performance profiles doesn't kick in properly, I set it to run at about 20% at 60c and when I click apply fan profile, it jumps to 20% and then slowly goes down to 0 and refuses to kick in at any temperature, causing high GPU temps. No matter what profile I use, it wont stay on and only jumps to the specified value at that temperature and then goes down. CPU Profile works as expected.

Edit: Switching to dgpu mode and back to hybrid seemed to have fixed the bug.

Asus G15 2022 GA502RM (R9 6900HS, 3060)

Feature request - Autohide window, Positions of fan dots, Aura effects speed/colors, ...

Hello! First I really love you for what you have done, I am right now ~1 month without Armoury Crate and I already missed some features which are back thanks to your app :)
It's superb but anyway I think it can be better, and here is list of things that will be helpful:

  1. Exact position info of dots in Fans configuration window, so I can exactly see at which temperature/fan speed the dot is set.
  2. Disappear main window when it loose focus (when there is no other sub-window open like Fan profiles or so..)
  3. Aura effect speed and colors (now I am able to choose rainbow, but it's really fast and I am not able to pick individual colors/gradient)
  4. Option to supress Armory Crate installation window on M4 press (maybe?)
  5. Fan menu - dots can be grabbed outside of graph (left side)

G-Helper randomly closing after startup

Hello,

So I have this bug on my G401QC where, on startup, I see G-helper in the taskbar but after all my other startup apps like Discord, Wallpaper Engine etc. load up, it disappears and I have to manually start it up again. Weirdly, all of the options I've set like switching to the iGPU on battery seem to still be there and the laptop screen refresh rate are always saved

Note: I'm running it as admin.

App GUI Cutoff (2020 G14 Windows 10 )

I am running Windows 10 22H2 on a G14 2020 (GA401IV) and when I run the latest version (GHelper v0.15) the app popup is cutoff. I am running at 100% scaling (I have tried other scaling and it was the same issue). There is no option to resize the window so I cannot access the optoins further down.

GHelper_GxUB2ulIQd
TSjO8dGBpf

Crash on TUF A15(FA507RM)

Got crash on my win10pro with .NET installed. Log is below.
Application: GHelper.exe CoreCLR Version: 6.0.1423.7309 .NET Version: 6.0.14 Description: The process was terminated due to an unhandled exception. Exception Info: System.Management.ManagementException: GeneralFault at System.Management.ManagementException.ThrowWithExtendedInfo(ManagementStatus errorCode) at System.Management.ManagementObject.InvokeMethod(String methodName, ManagementBaseObject inParameters, InvokeMethodOptions options) at ASUSWmi.WMICall(String MethodName, Int32 Device_Id, Int32 Control_status) at ASUSWmi.DeviceSet(Int32 Device_Id, Int32 Control_status) at GHelper.SettingsForm.SetPerformanceMode(Int32 PerformanceMode) at GHelper.Program.Main()
Is there something (maybe software) missing?

g14 2020 no tdp curve

image

For example, in previous versions it works fine, but there were no automatic tdp appliance.

App scaling issue

image

I'm having issues with app scaling on Windows 10.

This bug was introduced a few versions ago and it still hasn't been fixed in the latest release v0.15.1

My resolution is 1080p
Scaling @ 125%

Fan presets and windows Power plan auto change

I have small request.. can you make option to save fan presets? maybe simple export import, I am from time changing curve to optimize it and I would like to have option to revert previous state. now I have to open appdata and copy lines containing temperature mapping.

Another one is if you can implement power plan switching when performance mode is changed. Now I am using separate app and must go to 2 apps to switch modes and well I forget to change it sometimes. QOL thing...

GHelper do not startup automatically

My GHelper does not start up on log on.
I have tried forcing it with another task in the task scheduler, but it doesn’t appear in the task Manager. I don’t know why. I have tried different triggers. Do you have any idea from where this come from ?

And it still ask me for Administrator privileges !

[Question] How to fully remove Armoury Crate and Asus bloat?

As the goal for many of us using this program is to get rid of Armoury Crate and whatever bloat that Asus has shipped with the OS, I've noticed that despite uninstalling Armoury Crate as well as several other Asus apps (from Settings > Apps > Installed apps) that I deemed unnecessary, my processes in Task Manager seem to still be filled with Armoury Crate/Asus related tasks. Here are some of the processes I still see.

How can I fully remove (or maybe just disable) these? Is any of the pre-installed Asus stuff necessary/recommended to keep? I read on @seerge 's Reddit post that:

I also recommend to keep (!) "Asus Optimization Service" running , as it keeps basic laptop hotkeys such as screen or keyboard brightness adjustment working. If you have (or had) MyASUS app installed, that service is most probably still up an running even after MyASUS uninstall.

I also found this script in the comments of the Reddit post for disabling some unnecessary services, which I haven't yet tried but might cover a lot of these tasks that are running automatically for me.

Sorry if this is unwanted here in the issue tracker, but I thought that other people might end up benefiting from this being here as well.

[FEATURE REQUEST] / [ISSUE] Tray Icon Colour Change Based on Performance Mode / GPU Mode Doesn't Toggle on Power State

Hi,

Thanks for the great and continuing work.

FEATURE REQUEST
I know you just added OSD for Performance Mode changes, but if the tray icon changed colour based on the mode activated it would be a nice persistent indicator.

ISSUE
GPU Mode does not toggle between ECO and Standard when I change power states from Battery to AC or vice versa even though the box is checked.
Multiple restarts and reinstalls haven't resolved it.
I have a 2020 Zephyrus G14.

Thank you.

Latest Release : Battery Charge Rate or Discharge Rate not appearing

image
Hello Seerge !

First of all thanks for your amazing app !
In your latest release v0.9, it should be appearing the discharge and charge rate of the battery but it doesn’t
R9 5900HS RTX3060 2021 version

Here to report the issue, it isn’t bothering me but it is worth showing this !

Thank you !

Endpoint discovery for different laptop models

Hello, recently I have discovered endpoints that let you set Total PPT and CPU PPT on 2022 models. Armory seem to use them as well.

I did that by running own app-script that literally sent DSTS (asus'es "get device status") command to all possible DeviceID's in asus ACPI and checking which one's would respond at least somehow :)

Then by just trying to set a new value (with DEVS "set device status") command to a few discovered DeviceIDs correct endpoints were found.

0x001200A0 - sPPT / PL2 almost everywhere ( Total Platform limit  on all AMD platforms )
0x001200A1 - EDC_LIMIT_VDD
0x001200A2 - TDC_LIMIT_VDD
0x001200A3 - SPL / PL1 

0x001200B0 - CPU limit on all AMD platforms
0x001200B1 -  sPPT / PL2

0x001200C0 - NVIDIA GPU dynamic boost 5W ... 25W
0x001200C1 - fPPT
0x001200C2 - NVIDIA GPU temp limit 75C ... 87C

It could be that on other models (non G14) this endpoints could adjust different settings.

Discover endpoints Method 1

Run this ps1 scan-atkacpi.zip as admin in powershell and post output here

Discover endpoints Method 2

Crate a dump and upload it here (as suggested by @vddCore )

  1. Download ACPICA tools. Extract into some folder.

  2. Open that folder in powershell and run ./acpidump.exe -b to dump them all to .dat files. They'll be placed in the location you ran the tool from.

  3. Then run ./iasl.exe dsdt.dat and the decompiled ACPI table will be created as dsdt.dsl. Zip it and upload here.

How to test what discovered endpoints do

Run following command in powershell as admin:

Invoke-CimMethod (Get-CimInstance -Namespace root/wmi -ClassName AsusAtkWmi_WMNB) -MethodName DEVS -Arguments @{Device_ID=0x1200C1; Control_status=25}

Where DeviceID is ID from the list (for example 0x1200B0, 0x1200B1, 0x1200C0, 0x1200C1, 0x1200C2)

And Control_status is the "value" , try something like 25 or 50 or 100 ... :) (on your own risk, but most probably bios will just hardcap some potentially high values)

Then you can just run some CPU / GPU intensive task and check in HWinfo if it has any effect on PPTs / clocks / etc

[bug] Zephyrus G15 2021, v0.15.2 crashed: AniMe Matrix control device was not found on your machine

Got the latest version silently crashed when started. It seems there is a need to check is AniMe Matrix available on the device.

Win 11, Zephyrus G15 2021, GH v0.15.2

Application: GHelper.exe
CoreCLR Version: 7.0.323.6910
.NET Version: 7.0.3
Description: The process was terminated due to an unhandled exception.
Exception Info: System.TypeInitializationException: The type initializer for 'GHelper.Program' threw an exception.
 ---> System.TypeInitializationException: The type initializer for 'GHelper.SettingsForm' threw an exception.
 ---> System.IO.IOException: AniMe Matrix control device was not found on your machine.
   at Starlight.Communication.Platform.WindowsUsbProvider..ctor(UInt16 vendorId, UInt16 productId, Int32 maxFeatureReportLength)
   at Starlight.Communication.Device..ctor(UInt16 vendorId, UInt16 productId, Int32 maxFeatureReportLength)
   at Starlight.AnimeMatrix.AnimeMatrixDevice..ctor()
   at GHelper.SettingsForm..cctor()
   --- End of inner exception stack trace ---
   at GHelper.SettingsForm..ctor()
   at GHelper.Program..cctor()
   --- End of inner exception stack trace ---
   at GHelper.Program.Main()

UPD. GH v0.15.1 works OK.

Zephyrus DUO 16 fans and power issues and other suggestions

Hello, I appreciate the work here. It's really what I, and most ROG laptop users, want to replace the bloatware armoury crate (AC) which is sadly a must for the laptop.

My laptop is Zephyrus DUO 16 2022. So far I didn't uninstalled AC and had a simple test on G-helper. The performance mode can be switched well by G-helper. However, the Fans and Power feature is not correct.

The power limit is 150W total and 90W CPU, which I suppose is what G14 could handle. However, other ROG models can handle differently, higher or lower. Could you please increase the max power limit to 250W total and 130W PL1, which are the total and PL1 limits of the ROG Strix Scar 2023? My DUO 16 2022 has the max limit of 230W total and 90W SPL. The better way is to identify the model, set the max limit correspondingly, and give the detailed PL1/PL2 (intel) or SPL/SPPT/FPPT (AMD) setup. I'm not an IT guy, if it's hard to do just skip it.

The fans curve somehow looks wrong. I'm not sure if it is an x/y scale issue or reading the data wrongly. The y-scale is not linear all the way as the link below shows. The actually CPU fan off point is around 60C, but in the profile it shows around 2200 rpm at ~57C, and there is no fan off point.

Other suggestions are:

  1. maybe add the button of "Optimized" instead of the checkbox "set eco on battery", as in the AC the mode is called "Optimized".
  2. display panel profile switch, aka UHD120hz/FHD240hz and single zone/multi zone miniLED switch for some models, though it's not important to me, as I always use UHD mode.
  3. give the same options on keybindings, or could you give a txt file to illustrate how to bind, such as Aura switch by customer? On DUO 16, only M4 (original AC button) can be used for this. There is no M3 button.

Thank you again for the work! Have a nice day.
https://drive.google.com/file/d/1vH6bGfDNnTS_Igy1hVKSLshLedhWIXZe/view?usp=sharing

GENERAL NOTE

Hello dear app users (and forkers)

I see that app gets some traction, and some of you try to help and introduce new features. That's very cool.

But first of all, I would like to propose some of own ideas, that I personally have not much time / resources implementing

1. Anime matrix control At least basic switching of loading / sleep / modes would give a good start

v0.9.1 Not showing CPU temps from time to time

I am not able to re activate the bug : I don’t know the frequency nor why it does that

image

My GHelper isn’t showing me CPU temps, but after a time it does pops, this time it doesn’t pop up.
I let my laptop with the two others screens on and connected (running some programs), I went to eat and watch something, then it doesn’t show CPU temps anymore.

Will edit some more infos if I detect the bug’s source !

Auto-updater

Good morning, I have been keeping up with the updates that are pushed to the release page ~daily, I can see you are pumping out new releases very often. Is there any chance of integrating an auto-updater? As long as we are pulling the binary from the /releases page, could we query the releases page on startup for the latest release and pull the new binary?

[Feature request] Another box displaying the current ppt and saving the ppt limits for each performance mode

Hi,
I am currently happy with the program. However, when I unplug the power or change the performance mode, my power limit changes as well. I know this is normal, but I think there are some nice features to add:

  • Ability to view the current limit: Have another box showing the current limit power above the control for limit power.
  • Ability to remember manual limit for each performance mode: So each mode would have the choice to overdrive the default modes with power limits and fan control. Also, the settings are saved to each mode, then whenever the users change the mode, the power limit and fan curve will change in according to the manual.
  • Power drain after setting Battery Charge Limit: Currently, after you set the current charge limit, if the current battery level is higher than the charge limit, it will bypass the limit and keep charging. Could there be a tweak like what MyAsus does that have the battery charge stop at the current level if the battery level is higher than the limit?

Thank you so much for creating this program. It's way better than what I have with Armoury Crate with no bloatware. Hope these give you some ideas as well.

Questions: M-key remapping action and ASUS OSD

Just a couple questions about the newest pre-release 0.15.1.0:

  • How can I replicate the previous "Open G-Helper menu" action on this build? Since it was removed and I liked being able to quickly open the menu on M4, I'm not sure if there's an alternative using the custom action?
  • Is there a way to remove the ASUS OSD on M3 (microphone on/off)? I don't really mind leaving the microphone on all the time, and it would be nice to free up that key for another custom action without getting the microphone display every time.

Possible strange behavior from apps running on the dGPU not being killed

It appears that unlike armory crate which forces you to close apps using the dGPU before killing it for Eco mode, g-helper just turns off the dGPU without closing the applications using it.

While it does work most of the time, I seem to be getting some issues in Firefox, namely on Google Sheets being sluggish and crashing, where I need to restart Firefox if I want it to work properly.

I'm not sure if this is the cause but I am inclined to believe that not restarting the applications is the reason for the strange behaviour.

Is there a way around this? The obvious solution is having an option to kill all applications using the dGPU like on armory crate when switching to Eco mode.

External monitor detected as built-in

Hello! After starting laptop in closed state with external 100Hz monitor connected, GHelper decided that it's my built-in monitor. At least that's what I think according to refresh rate shown on button.
Restarting GHelper without external monitor connected did not helped.
Also switching is not working as you can see on screenshot:
image

Fan speed above 100% G14 2020

Hi! There is a problem when I apply custom fan curves in GHelper:

  • When CPU fan profile is set between 60-70%, GHelper reports that the fan is at 97% (which do not correspond, but I am aware of the difficulty of reading fan speeds...)
  • When GPU fan profile is set above 70%, GHelper reports that the fan is at 112% (that should be impossible).

Generally, the fan speed reported is always ~30% above the fans profile specification at the current temp.

imagen

Information: GHelper v0.10, laptop model G14 2020 (Ryzen 7 4800HS and 2060 Max-Q), Windows 10 Home 22H2.

I tried the new Power Limits (PPT) feature, but it does not limit the power of my CPU (or system).

Also, GPU Modes Eco and Standard does not seem to have a difference in the GPU and iGPU usage when switching.

Thanks for the amazing software! I ditched Armoury Crate days ago and I am not coming back!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.