Feb 2021 Update

Hi, fluke here!

So in the last month I think a lot was achieved. First I did a very large refactor of code in asusctl to remove a dependency on libdbus. This involved switching parts of a crate API to use the excellent wholly rustlang written zbus. A very nice benefit of this is that crate deps are down by a dozen for faster compile times.

While I was doing that I took the chance to refactor even further and split out many parts of the daemon project in to sub-crates specific to their purpose - for example a "types" crate which contains helper types and structures for working with profiles, keyboard RGB, graphics switching and more. I also split out the dbus client stuff to make it easier to use these crates in other projects without pulling in the whole daemon part.

Other changes in that code are:

  • fix support for the 0x1854 keyboard which is in the GL553VE
  • fix the multizone LED modes available on some models
  • fix misc bugs in code and make some things clearer
  • fix some bad logic in profile handling
  • add a controller used for setting some ROG bios functions like boot-sound and nvidia-only mode
  • try to gracefully handle config file layout changes between versions

Changes coming up are:

  • improved gfx mode switching - intending to make this rebootless

The nvidia-only mode mentioned above is available only on some G-Sync capable models. It allows the laptop to switch completely to Nvidia only graphics using the bios muxer - the OS will see the laptop as containing only the Nvidia card.

I've also been working on some of the linux kernel code again. This was required for both the old GL553VE above, and for the newer 2021 G14 and G15 laptops. The 2021 machines have a slightly revised keyboard with a new product ID of 0x19b6 and thankfully the existing code I wrote to initialise and enable the N-Key keyboards works with this version. Additional improvements were made to the ASUS WMI code in kernel for the G14 and G15 laptops.

All HID patches above are submitted upstream, but not the WMI patch as I'm awaiting test results.

Contributions from others were also pulled in for a few things!

  • Asere: contributed udev rule changes in asusctl to help start or restart asusd if dependent hardware changes
  • Tim: Contributed dkms module build rules to hid-asus-rog for better compatibility

Hope I got everyone there - let me know if I missed someone.

Lastly, I've begun soliciting donations to fund a G14 laptop with an AniMe display so that I can begin fixing some of the issues that still remain with it. You will notice that there is now a donation button using paypal in the sidebar. You may also support me on patreon if you prefer - and I will be making the occasional Patreon only blog post (time limited) to keep monthly supporters updated.

Legal Matters

ASUS and ROG Trademark is either a US registered trademark or trademark of ASUSTeK Computer Inc. in the United States and/or other countries.

Reference to any ASUS products, services, processes, or other information and/or use of ASUS Trademarks does not constitute or imply endorsement, sponsorship, or recommendation thereof by ASUS.

The use of ROG and ASUS trademarks within this website and associated tools and libraries is only to provide a recognisable identifier to users to enable them to associate that these tools will work with ASUS ROG laptops.

Privacy Policy

We use Matomo

Matomo is an open source web analytics platform. A web analytics platform is used by a website owner in order to measure, collect, analyse and report visitor data for purposes of understanding and optimizing their website.

Purpose of the processing

Matomo is used to get an idea how our website is used by our users so we can optimize things further so that the user may find the most relevant information more quickly.

Data Matomo is processing

  • User IP address
  • Optional User ID
  • Date and time of the request
  • Title of the page being viewed
  • URL of the page being viewed
  • Referrer URL
  • Screen resolution being used
  • Time in local user’s timezone
  • Files that were clicked and downloaded
  • Links to an outside domain that were clicked
  • Page generation time
  • User location: country, region, city, approximate latitude and longitude
  • Main Language of the browser being used
  • User Agent of the browser being used

Pick up the one you are using:

  • Cookies
  • IP address
  • User ID
  • Custom Dimensions
  • Custom Variables
  • Location of the user

And also:

  • Date and time
  • Title of the page being viewed
  • URL of the page being viewed
  • URL of the page that was viewed prior to the current page
  • Screen resolution
  • Time in local timezone
  • Files that were clicked and downloaded
  • Link clicks to an outside domain
  • Pages generation time
  • Country, region, city
  • Main Language of the browser
  • User Agent of the browser

This list can be completed with additional features such as:

  • Form interactions
  • Media interactions
  • A/B Tests

The processing of personal data with Matomo is based on legitimate interests

If you wish us to not process any personal data with Matomo, you can opt-out from it at any time. There will be no consequences at all regarding the use of our website.

You can withdraw at any time your consent by clicking here

The right to lodge a complaint with a supervisory authority

If you think that the way we process your personal data with Matomo analytics is infringing the law, you have the right to lodge a complaint with a supervisory authority.

We are not doing any profiling.