Giter Club home page Giter Club logo

rogauracore's Introduction

rogauracore - RGB keyboard control for Asus ROG laptops

(c) 2019 Will Roberts

Linux-compatible open-source libusb implementation similar to the ROG Aura Core software. Supports RGB keyboards with IDs 0b05:1854 (GL553, GL753), 0b05:1869 (GL503, FX503, GL703), 0b05:1866 (GL504, GL533, GL703, GX501, GM501), and 0b05:19b6 (GA503).

Usage

Usage:
   rogauracore COMMAND ARGUMENTS

COMMAND should be one of:
   single_static
   single_breathing
   single_colorcycle
   multi_static
   multi_breathing
   rainbow_cycle
   red
   green
   blue
   yellow
   gold
   cyan
   magenta
   white
   black
   rainbow
   brightness
   initialize_keyboard

In typical use, you will need root privileges to directly communicate with the laptop's keyboard. This is easy to do with sudo. Try some of these commands and see what works for you:

sudo rogauracore single_static 0000ff
sudo rogauracore single_static 00ff00
sudo rogauracore single_static ffff00
sudo rogauracore multi_static ff0000 ffff00 00ff00 00ffff
sudo rogauracore single_colorcycle 1

If your keyboard does not respond to rogauracore, it may help to send an initialisation message to the keyboard to "wake it up":

sudo rogauracore initialize_keyboard

If your keyboard remains dark, its brightness might have defaulted to 0. Try:

sudo rogauracore brightness 3

Installation

Ubuntu

In all cases you will need libusb and libusb-dev installed:

sudo apt install libusb-1.0-0 libusb-1.0-0-dev

Optionally you might also need build tools:

sudo apt install build-essential

Retrieve the rogauracore package, either through curl or git:

VERSION=1.6
curl -LOs https://github.com/wroberts/rogauracore/releases/download/$VERSION/rogauracore-$VERSION.tar.gz
tar xf rogauracore-$VERSION.tar.gz
cd rogauracore-$VERSION/

or

git clone https://github.com/wroberts/rogauracore.git
cd rogauracore
autoreconf -i

Then configure, make and install:

./configure
make
sudo make install

Tips and tricks

On some machines, running rogauracore can cause the system's power management to not be able to find the keyboard backlight control. This manifests as unresponsive UI controls for brightening and darkening the keyboard backlight. If this issue affects you, @willlovesbearz suggests running this command after rogauracore:

sudo systemctl restart upower.service

Related projects

rogauracore's People

Contributors

gosuto-inzasheru avatar joshdreamland avatar mkikets99 avatar ssc134 avatar thorhop avatar vycton avatar wroberts 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

rogauracore's Issues

[BUG] Command sets US keyboard on launch

Some time ago I used this software on Debian and had no issues at all. Now on Arch, however, whenever the command is executed, my keyboard layout changes, becoming the US one (or UK, I'm not that keyboard-layout savvy).
This is fine for my startup script as I can just append setxkbmap -layout it to the rogauracore command, but it gets annoying if I have to change the color or poweroff (black color) the leds.
The only keyboard which seems to be affected is the X one.

Steps to reproduce

  • Select a different KB layout than US/UK using setxkbmap (e.g. setxkbmap -layout it)
  • Launch any command of rogauracore (try setting a color)

Expected behaviour
The color of the led change, with no other changes happening

What actually happens
The color changes successfully, but the X keyboard layout gets set to US/UK

Any chance to support Asus TUF Gaming FX505DU?

I've patched the i2c-piix4 module by following these guides:
https://gitlab.com/CalcProgrammer1/KeyboardVisualizer/issues/85#note_121577579
https://www.reddit.com/r/linux/comments/asxhcc/i_wrote_a_program_to_control_asus_aura_rgb/egy7uvk/

And here's the result of calling sudo i2cdetect -l:

i2c-3	smbus     	SMBus PIIX4 adapter port 2 at 0b00	SMBus adapter
i2c-10	i2c       	NVIDIA i2c adapter 5 at 1:00.0  	I2C adapter
i2c-1	i2c       	NVIDIA GPU I2C adapter          	I2C adapter
i2c-8	i2c       	dmdc                            	I2C adapter
i2c-6	smbus     	SMBus PIIX4 adapter port 1 at 0b20	SMBus adapter
i2c-4	smbus     	SMBus PIIX4 adapter port 3 at 0b00	SMBus adapter
i2c-2	smbus     	SMBus PIIX4 adapter port 0 at 0b00	SMBus adapter
i2c-0	i2c       	Synopsys DesignWare I2C adapter 	I2C adapter
i2c-9	i2c       	NVIDIA i2c adapter 1 at 1:00.0  	I2C adapter
i2c-7	i2c       	AMDGPU DM i2c hw bus 0          	I2C adapter
i2c-5	smbus     	SMBus PIIX4 adapter port 4 at 0b00	SMBus adapter

I've called chmod 777 to all the SMBus PIIX4 adapters (/dev/i2c-6, etc.).
Then I tried using apps like Borealis, OpenAuraSDK, but still no luck.
My keyboard backlight is only red now.

Here's my HW probe result:
https://linux-hardware.org/?probe=27bb2f0366
There I see my i2c_piix4 vendor is AMD and my keyboard is PS/2, not USB.

And hwinfo result:
hwinfo.txt

Issues on G531GW (ROG Strix Scar III)

I recently installed Ubuntu 19.10 on my Asus Strix Scar III (Model Number G531GW) and the lighting sometimes works and sometimes it doesn't. My keyboard id is 0b05:1866
Following is a complete list of issues I have tracked so far (I don't know which ones will be useful):

  • Just after installing Ubuntu 19.10, my charger was not being detected anymore. At the same time I installed rogauracore which didn't work.

  • I was able to fix the charger problem by long pressing the power button (from Windows 10) for 35 seconds (note that for this to work, the charger needs to be disconnected from the laptop first; keep a note of this, it is going to be useful for the lighting later on) but the lighting still did not work; at that point of time I had only tried few of the options.

  • I did not use my laptop for 24 hours (was not connected to power source all this while; was at 100% charge though when I last switched off) and this time when I switched on my laptop the lighting surprisingly worked (no idea how) but I was only getting RED; tried changing the colors but did not work

  • Later on the same day I noticed an unusual behavior : the colors were actually changing after applying for example sudo rogauaracore green but for that to work, I had to disconnect the charger first, power off the laptop, wait for 2-3 minutes, again switch it on and THEN connect the charger (any change of sequence of the events would not make it work; a restart also does not work; it needs to be powered off)

  • During this entire experimentation phase of 4 days just once it happened that the light worked but the keyboard did not work (a few hard power offs solved it).

  • Finally again after 34 hours of rest (no power source to laptop; battery at 100% charge) the commands finally started working! I mean proper working (you type the command and the lighting immediately changes). However any breathing and rainbow commands were not working under any circumstances. All others worked perfectly like a charm (I mean type the commands and change the colors).

  • Yesterday, I connected my Samsung Galaxy Buds over Bluetooth and everything went wrong from there : the lighting stopped, the charger stopped, the WiFi stopped. Disconnecting and switching off Bluetooth and restarting the computer fixed the WiFi but not the other 2 issues.

  • I retraced all the above steps many times and got the charger working in the first attempt but not the lighting system. Now finally the lighting system works but only white and red and that too I need to power off my computer, disconnect the charger, wait for 2-3 minutes and switch it back on. None of the other colors are working.

My BIOS settings : UEFI boot enabled (tweaking this doesn't affect the lighting system in my experiments, cannot say for sure), FAST BOOT disabled

I know this is NOT A HARDWARE ISSUE or any issue with the internals of my laptop because everything works well on Windows no questions asked so either it is to do with un-supported hardware or with the inherent issues of Ubuntu 19.10 iteself

However, if it worked once, why is not working now and more importantly, how do I make it work?

Confirmed working with ASUS ROG Zephyrus M (GM501)

Taking line 415 in src/rogauracore.c
const uint16_t ASUS_PRODUCT_IDS[] = { 0x1854, 0x1869 };

And adding the Product ID 0x1866
const uint16_t ASUS_PRODUCT_IDS[] = { 0x1854, 0x1869, 0x1866 };

Makes the code work on the Zephyrus M (GM501).

Not working with GM501GS

Installed via the first method, able to enter commands without errors (sudo rogauracore single_colorcycle 1) but nothing happens on the keyboard. tried all command options, none change the keyboard LEDs at all.

Difficulty with GU501G

I compiled and ran rogauracore. No errors and everything looks reasonable to me, but the colors aren't actually changing. I noticed the PR for the GM501 had my vendor and product id, but that my smbus is showing up on a different i2c. (7 instead of 0). I'm not sure if this is helpful, but here's some more information. Is there anything else I can provide that might help add support for this device?

sudo i2cdetect -l
i2c-3	i2c       	i915 gmbus dpd                  	I2C adapter
i2c-1	i2c       	i915 gmbus dpc                  	I2C adapter
i2c-6	i2c       	Synopsys DesignWare I2C adapter 	I2C adapter
i2c-4	i2c       	DPDDC-A                         	I2C adapter
i2c-2	i2c       	i915 gmbus misc                 	I2C adapter
i2c-0	i2c       	i915 gmbus dpb                  	I2C adapter
i2c-7	smbus     	SMBus I801 adapter at efa0      	SMBus adapter
i2c-5	i2c       	Synopsys DesignWare I2C adapter 	I2C adapter
sudo i2cdetect 7
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- 08 -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: 30 -- -- -- -- 35 36 -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- 44 -- -- -- -- -- -- -- -- -- -- -- 
50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --                         

It's interesting that the current code actually finds the device in the libusb device list, but for whatever reason that message doesn't cause a color change.

 sudo ./rogauracore -v single_static ff0000
parse color ff0000
interpreted color 255 0 0
args:
color1 255 0 0
color2 232 28 127
color3 0 0 128
color4 3 0 0
speed 0
single_static
constructed 1 messages:
message 0: 5d b3 00 00 ff 00 00 00 00 00 00 00 00 00 00 00 00 
Initialising libusb
Initialised libusb.
Found 5 USB devices.
Checking device 1d6b:0003, address 1
Checking device 13d3:56a2, address 2
Checking device 8087:0aaa, address 4
Checking device 0b05:1866, address 3
Found ROG Aura Core keyboard.
Opened USB device.
Auto detach kernel mode set.
Claimed interface 0.

If I update iface to 7 in the py script, just to check, it throws a nasty error.

sudo python3 ./rogauracore.py single_static ff0000
Traceback (most recent call last):
  File "./rogauracore.py", line 262, in <module>
    main()
  File "./rogauracore.py", line 244, in main
    dev, iface, active_iface = acquire_usb()
  File "./rogauracore.py", line 80, in acquire_usb
    raise e
  File "./rogauracore.py", line 75, in acquire_usb
    usb.util.claim_interface(dev, iface)
  File "/usr/lib/python3/dist-packages/usb/util.py", line 205, in claim_interface
    device._ctx.managed_claim_interface(device, interface)
  File "/usr/lib/python3/dist-packages/usb/core.py", line 102, in wrapper
    return f(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/usb/core.py", line 167, in managed_claim_interface
    self.backend.claim_interface(self.handle, i)
  File "/usr/lib/python3/dist-packages/usb/backend/libusb1.py", line 811, in claim_interface
    _check(self.lib.libusb_claim_interface(dev_handle.handle, intf))
  File "/usr/lib/python3/dist-packages/usb/backend/libusb1.py", line 595, in _check
    raise USBError(_strerror(ret), ret, _libusb_errno[ret])
usb.core.USBError: [Errno 2] Entity not found

I feel like this might be overkill on the information, but I was really excited to see this project and I'm happy to help debug on my hardware if you come up with anything to test!

Current master won't build (autoreconf problem).

OS_release:
NAME="Pop!_OS"
VERSION="19.04"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Pop!_OS 19.04"
VERSION_ID="19.04"
HOME_URL="https://system76.com/pop"
SUPPORT_URL="http://support.system76.com"
BUG_REPORT_URL="https://github.com/pop-os/pop/issues"
PRIVACY_POLICY_URL="https://system76.com/privacy"
VERSION_CODENAME=disco
UBUNTU_CODENAME=disco

I tested this by cloning the code directly from wroberts/rogauracore and trying to build it on 19.04 of Pop!_OS (which technically is not stable just yet, which I'm making clear right now).

I have most build dependencies provided by the Ubuntu meta package.

** Steps to reproduce:**

  1. Clone wlroberts/rogauracore
  2. cd/to/dir
  3. Run autoreconf
  4. Receive errors about missing files in config/

Log:

hobbes :: ~/Sources/rogauracore ‹master› % autoreconf                                                                                                                                    
configure.ac:11: error: required file 'config/compile' not found
configure.ac:11:   'automake --add-missing' can install 'compile'
configure.ac:8: error: required file 'config/install-sh' not found
configure.ac:8:   'automake --add-missing' can install 'install-sh'
configure.ac:8: error: required file 'config/missing' not found
configure.ac:8:   'automake --add-missing' can install 'missing'
Makefile.am: error: required file 'config/depcomp' not found
Makefile.am:   'automake --add-missing' can install 'depcomp'
autoreconf: automake failed with exit status: 1
hobbes :: ~/Sources/rogauracore ‹master› ./configure                                                                                                                                1 ↵
configure: error: cannot find install-sh, install.sh, or shtool in config "."/config
hobbes :: ~/Sources/rogauracore ‹master› make                                                                                                                                       1 ↵
make: *** No targets specified and no makefile found.  Stop.

Issue:
A proper ./configure and makefile are not generated at all, meaning the source cannot be built.

Possible solution:
Running these commands (requiring libtool) would fix the issue, and possibly straighten up some of the automake files...

$ libtoolize --force
$ aclocal
$ autoheader
$ automake --force-missing --add-missing
$ autoconf
$ ./configure
$ make
$ sudo make install

This is a copy-pasted solution from another project and will change the make files. This might be overkill and might set some unsolicited values. Please advise.

Instructions unclear

Clone the github repo and enter the top-level directory. Then:

autoreconf -i
./configure
make

Here, I suppose autoreconf produces Makefile without LIBS = -lusb-1.0 if it is not installed, so make fails. So I inserted it manually

Rog G752VY Not Working

Could not find Rog Aura Core keyboard.

Is support coming? Or does anyone know of something that works?

Ga502DU 0B05:1866

I installed rogauracore after verifying support with the vendor id, but am unable to get it to do anything, no errors, just no lights.

the keyboard is a white light only keyboard, with the brightness controls on fn+up and down keys.

Let me know if I can get you any info from this device.

Add SPEED paramter to Rainbow

Currently, I can specify the value of speed parameter alongside single_color or multi_color
How to add the speed parameter alongside Rainbow and make it moving?

Not Working in G531-GT

I have installed via the second method. Here is the output of the following things which I have done it .
lsusb

Output is :


Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 0b05:1866 ASUSTek Computer, Inc. 
Bus 001 Device 003: ID 8087:0aaa Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

When I run sudo ./rogauracore -v single_static ffffff

This i what I get:

Output:

parse color ffffff
interpreted color 255 255 255
args:
color1 255 255 255
color2 171 153 127
color3 0 0 128
color4 3 0 0
speed 0
single_static
constructed 1 messages:
message 0: 5d b3 00 00 ff ff ff 00 00 00 00 00 00 00 00 00 00 
Initialising libusb
Initialised libusb.
Found 4 USB devices.
Checking device 1d6b:0003, address 1
Checking device 0b05:1866, address 2
Found ROG Aura Core keyboard.
Opened USB device.
Auto detach kernel mode set.
Claimed interface 0.

When I ran sudo lsusb -v -d 0b05:

Output:

Bus 001 Device 002: ID 0b05:1866 ASUSTek Computer, Inc. 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x0b05 ASUSTek Computer, Inc.
  idProduct          0x1866 
  bcdDevice            0.02
  iManufacturer           1 ASUSTeK Computer Inc.
  iProduct                2 N-KEY Device
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           91
    bNumInterfaces          3
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              3 (error)
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      67
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              1 ASUSTeK Computer Inc.
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      65
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              1 ASUSTeK Computer Inc.
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength     167
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
Device Status:     0x0001
  Self Powered

I have also tried many different solutions present on the internet like echo 0 | sudo tee /sys/class/leds/asus::kbd_backlight/brightness But None worrked .

Please Please help me . Any help is appreciated

can't control the led strip

i can't control the led strip below the keyboard can you add a separate option for the led strip i can't turn it on it will be highly appreciated. BTW @wroberts thanks for the project its amazing .

Calculator opens on running command [bug]

When run a sudo command (for e.g sudo rogauracore green), the color changes but the calculator opens after every single attempt. I'm using a GL503GE with Ubuntu 20.04.1 LTS.

Fix the brightness

As stated on the readme, one has to sudo systemctl restart upower.service in case the brightness control doesn't work anymore. Like in my case. Am I suppose to do this everytime I change the colors? If so isn't it a way to do it for good? Thanks!

README

Installing the repository from it github is also necesary to install libusb libraries, at least in ubuntu systems (19.10)

GL553V support

sudo rogauracore initialize_keyboard
outputs:
Could not find ROG Aura Core keyboard

It doesn't supports this model?

Not working on GU502GU

Was able to install but the commands don't do anything to the lighting on the keyboard

Not working with GL704GW

This is not working with my CUK ASUS ROG Strix Scar II GL704GW Gaming Laptop running Ubuntu Disco Dingo 19.04.
It is so close to your GL703 listed as supported, so how can this be tweaked to get it to work?

[FEATURE] Querying rogauracore state

Feature discussion

One thing I want to do is create a gnome extension, whereby settings
can be adjusted through an applet in the upper bar. Set modes, select
colours using a colour wheel, a brightness slider, all in the system
menu. The idea poses a couple of problems however...

Problem

It requires that applications can query for the current state of
rogauracore, i.e which mode, speed and colour(s) are in use.
But how should that be done? rogauracore could for example run
as a daemon in the background and receive changes through dbus.
This might be a bit too much to begin with. An easier alternative is to
add a status parameter to the commandline, which could output the
data necessary to have an overview of the current state. For example:

Example solution

$ rogauracore status
mode: single_colourcycle
speed: 2
colours: null

This is simple and programatical. Since the mode is single_colourcycle
there is no colour defined, i.e it outputs "null". Alternatively a state file
could be setup in /tmp or /var/run called rogauracore.state, which
is reset everytime rogauracore runs. This way the file only needs to be
parsed instead of constantly launching rogauracore itself.

Ideally there should be a dbus implementation, but that is a hard nut
to crack. Making rogauracore into a daemon or system service requires
a fair bit of testing and coding. Relying on either a status command or
a state file would be easier in regards to cross-platform compatibility (see #4 ).

I'm not that good at coding, but would gladly try to implement this feature.
I just want to be sure of which direction to take.

help me i want to edit the source to add features

hey man ,
first of all nice workk but i want to add some features, but i am unable to understand the file structure and the code you have written please add some comments to your code please and for getting file structure please add a relative help file .
please help

Help Implementing per key colors

hi, I tried enable per-key control for my GX701 laptop, but can't get it to work. I set the messages just as the wireshark log shows, but it seems I'm missing something.
Here's the wireshark log where I set all my keys to an XX/XX/XX color which starts from FF/FF/FF and decrementing by 2 each key.
So from esc:FFFFFF is goes to F1:FDFDFD to F2 FBFBFB and so on...

I'll be glad to help, so I'll try to take some times to run tests if needed.

allkeys.zip

how to switch off all the lights

My laptop (ASUS ROG Strix Scar II GL504GW-ES012T according to the order, keyboard 0xb05-0x1866 according to hardinfo) running Ubuntu 18.04, kernel 5.3.0-45, is mainly for work use so I would like to turn the backlight and the ROG symbol on the lid off altogether.

After downloading and compiling rogauracore I ran
$ rogauracore black
and
$ rogauracore single_static 000000
respectively (both followed by a reboot).

Unfortunately that leaves the backlight and the symbol in slowly varying 'rainbow' mode. According to the readme.md file this model would be supported so I had high expectations. Should I have done something differently or does rogauracore not work for this model (GW-ES012T)?

Add ability to dim backlight

First: this project is awesome! I couldn't find any way to change the default rainbow setting on my G531GT until I found this project.

Could you add support for dimming the backlight?

Error during make command

Error : initializer element is not constant during making the file (make command).

The todo here is :

The error is in src/rogauracore.c, where SPEED and BRIGHTNESS are defined as
const. Using macro definitions instead to define them as constants may help.

Turn off RGB bar under the keyboard

Is there a function to turn off the RGB bar under the keyboard?
At the moment I'm modifying the raibow function with

void rainbow(Arguments *args, Messages *messages) { memcpy(args->colors, WHITE, 3); multi_static(args, messages); }
so that only the keyboard lights up.

Error installing on G531GT-BQ002T i

I was installing via the second method in elementary OS 5.1 Hera. on running the "make" command I had this particular issue:

make all-am
make[1]: Entering directory '/home/aditya/Documents/rogauracore'
depbase=echo src/rogauracore.o | sed 's|[^/]*$|.deps/&|;s|\.o$||';
gcc -DHAVE_CONFIG_H -I. -g -O2 -MT src/rogauracore.o -MD -MP -MF $depbase.Tpo -c -o src/rogauracore.o src/rogauracore.c &&
mv -f $depbase.Tpo $depbase.Po
src/rogauracore.c:278:52: error: initializer element is not constant
{"single_breathing", &single_breathing, 2, 1, {SPEED}},
^~~~~
src/rogauracore.c:278:52: note: (near initialization for ‘FUNCTION_RECORDS[1].scalars[0]’)
src/rogauracore.c:279:54: error: initializer element is not constant
{"single_colorcycle", &single_colorcycle, 0, 1, {SPEED}},
^~~~~
src/rogauracore.c:279:54: note: (near initialization for ‘FUNCTION_RECORDS[2].scalars[0]’)
src/rogauracore.c:281:50: error: initializer element is not constant
{"multi_breathing", &multi_breathing, 4, 1, {SPEED}},
^~~~~
src/rogauracore.c:281:50: note: (near initialization for ‘FUNCTION_RECORDS[4].scalars[0]’)
src/rogauracore.c:291:44: error: initializer element is not constant
{"brightness", &set_brightness, 0, 1, {BRIGHTNESS}},
^~~~~~~~~~
src/rogauracore.c:291:44: note: (near initialization for ‘FUNCTION_RECORDS[14].scalars[0]’)
Makefile:395: recipe for target 'src/rogauracore.o' failed
make[1]: *** [src/rogauracore.o] Error 1
make[1]: Leaving directory '/home/aditya/Documents/rogauracore'
Makefile:278: recipe for target 'all' failed
make: *** [all] Error 2

Windows version

Hi,
i was thinking since i bought my GL553VD,2 years ago, to build a desktop software with new effects
like the one when the charger plugged in when the pc in sleep mode, wave effect
but i don't know how to start
i learned the basics of C and JAVA
do you think i can control the rgb leds using JAVA ?
is this project have new effects other than those in aura core ?

Thanks

Issues on GX701 / GX735

Hi, i'm not able to get rogauracore working on my archlinux install.
I'll be glad to help as i still have a Windows 10 + wireshark setup, all i need is some help figuring which packet are useful (i guess the usb out ones are those i must look for, but i don't know which parts of the packets are relevant).
I may help other issues as my keyboard is a 0b05:1866.

Only works after a restart from windows on GA502DU

I only have brightness control on this model. It will only work after I do a restart from windows where the keyboard stays on. If I power the system off then back on and boot into manjaro, ubuntu, or fedora first. The commands never work and that includes running the sudo systemctl restart upower.service.

This leads me to believe that the linux kernel cannot detect a keyboard back light on a cold boot. There for making this impossible to use on this model of pc unless you boot to windows do a restart and the load linux.

There is a patch that has to be manually applied that brings full keyboard functionality. When using a rolling release you have to patch and compile a kernel ever 1-2 weeks and that gets old. Is there a way to implement what this patch does into this to allow for functionality with our requiring a boot into windows first. Here is the link the to actual patch that can be applied.

https://patchwork.kernel.org/patch/9662291/

Not working on Asus GL504GM

Hi,

I just tried with compiling rogauracore and running it on a GL504GM.
If I run rogauracore single_static ffffff it returns Could not open ROG Aura Core keyboard: LIBUSB_ERROR_ACCESS.
So I run sudo rogauracore single_static ffffff. In this case no error is returned but the backlight color does not change.

This is my lsusb output:

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 13d3:56a2 IMC Networks 
Bus 001 Device 004: ID 8087:0aaa Intel Corp. 
Bus 001 Device 003: ID 0b05:1866 ASUSTek Computer, Inc. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

May I provide more information on my system that could be helpful for you?

Thank you!

Rainbow turns off the RGB keyboard

The command "sudo rogauracore rainbow" completely turns off the RGB keyboard on my laptop.

Appreciate the effort of whoever are developing this.
Changed the RGB keyboard on my Asus ROG Strix Scar III to the new gold color and it looks so awesome.

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.