All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Support for G531
- Support for G731
- GX531 reverted to zone profile, G531 moved to per-key profile
- GX531 now supports same LED features as GX502
- Support for G532
- Support "Calc" fn key on G712
- ROG key has limited customization, see README.md for details.
- Power
- Sleep
- MediaRecord
- MediaFastFwd
- MediaRewind
- MediaNext
- MediaPrev
- MediaStop
- MediaPlayPause
- MediaVolMute
- MediaVolUp
- MediaVolDown
- BacklightInc
- BacklightDec
- ControlConfig
- LaunchTextEditor
- LaunchEmailApp
- LaunchNewsReader
- LaunchCalendar
- LaunchCalculator
- LaunchWebBrowser
- FileBrowser
"rog_key": "ControlConfig",
is required to be added below line 1 in/etc/rogcore.conf
alternatively the config can be removed, allowing it to be recreated.
- Correct some device handling and order of operations
- Not quite breaking, but the serice should now be static (not enabled) and
the udev rule
data/rog-core.rules
used to start the service. This ensures the device is actually initialised fully before the service starts.
- Changes to the way rog-core is initialised
- Proper fix of laptop mode conversion bug
- Try to correct how laptop modes are handled
- Support for G512 series
- Support for GU502 (variant of GA15)
- Further refine the way setting LED modes works so it is more universal, this
also allows for setting the brightness through
SetKeyBacklight
README_DBUS.md
to document DBUS interface- Dbus method
GetKeyBacklight
- Dbus method
GetKeyBacklightModes
- Properly initialise the device
- Better log formatting
- Dbus command
LedWriteBytes
renamed toSetKeyBacklight
- Dbus command
SetKeyBacklight
will now take a JSON string instead of an array of bytes- Example:
note that
{ "Breathe": { "help": false, "colour": [ 254, 5, 171 ], "colour2": [ 0, 156, 156 ], "speed": "High" } }
help
is unused but required as a side-effect of usinggumdrop
for CLI.
- Example:
- Dbus signal
LedCancelEffect
renamed toKeyBacklightChanged
- Config file is now in JSON format, and will store only the LED modes that a laptop supports rather than the whole set
- "FanMode", "ChargeLimit" to "SetFanMode", "SetChargeLimit"
- Dbus signals "FanModeChanged", "ChargeLimitChanged"
- Dbus methods "GetFanMode", "GetChargeLimit"
- Support for ROG Strix G712
- Add modes for FX531 LEDs
- Change where USB reset is called
- Add support for G531GT
- Remove duplicated code: it looks like there is at least some consistency in Consumer-Device keycodes that ASUS uses
bat_charge_limit = 100
must be appended to the top of/etc/rogcore.conf
- Use DBUS_NAME instead of DBUS_IFACE when requesting the name
- Give different names for the bytearray arguments so that pydbus is not confused
- Add org.freedesktop.DBus.Method.NoReply annotations
- Remove dbus reply for multizone writes
- Move led_writer to a main loop due to strange mpsc behaviour, this combined with mpsc channels offers a more reactive app
- Small fix for unreported mode indexing issue
- Many of the RGB built-in modes have been renamed to match Armory-Crate names,
this means that the
/etc/rogcore.conf
needs to be removed so it can be regenerated using the updated names.
- Add better examples for AniMe display, and fix many small issues
- Don't halt app iff AniMe display not found when running on GA14/GA15 laptops
- Rename client crate to better suit
- Added a device reset for both keyboard and AniMe devices before configuring them
- Correctly set AMD boost
- Add animatrix support for G14 laptops
- Start differentiating between models using the 0x1866 USB device
- Refactor how to send multizone over dbus, and how to write it (write 4 packets before writing SET/APPLY)
- Begin implementing profiles per board_name
- Boost toggle for AMD (not freq adjustment yet)
- Fix needing to double-tap fan-mode to change mode
- Flip writing order of effect colour blocks every other block write to try and even out. Previously the bottom rows were always last to be written.
- Add more examples: ball, comet, pulser.
- Refine the keyboard layout grid for GX502.
- Use tokio to delay main loop, not thread::sleep
- Minor tweaks to error handling. Needs refactor of errors.
- Fix reloading last keyboard brightness on boot
- Fixed return of rog-core in client mode
- Fixed writing of customised builtin LED modes
- Begin keeping a Changelog
- Internal structure changes to reduce the possibility of mutex await deadlocks when writing to the LED endpoint