New driver for Asus Aura LED USB controllers#456
New driver for Asus Aura LED USB controllers#456jonasmalacofilho merged 67 commits intoliquidctl:mainfrom CaseySJ:main
Conversation
Alpha level code for Asus Aura LED (USB) controller with: idVendor 0x0b05 idProduct 0x19af
Added entry to 71-liquidctl.rules and replaced " with ' in aura_led.py
Fix typo
Lots of code optimizations and support added for 'sync' channel
Fix typo
Added "test_aura_led.py" for pytest. Cleaned up some code in aura_led.py
Added new color modes 0x10 through 0x13. Made additional code cleanup.
Testing compatibility with idProduct 0x18f3. Additional code cleanup.
Device 0x18f3 is not fully supported, but rather than delete the line entirely, it's been commented out. Users wishing to experiment with this may uncomment the line
|
Hey @CaseySJ, hope you're doing well! @MarshallAsch, can you review this one for me? |
Yup I'll take a look after work |
Hello @jonasmalacofilho, I'm doing great, thank you for mentioning. Hope all is well on your end. It's good to see how this project has grown recently, with automated builds, lint checking, "code of conduct" ;), and other enhancements. Also good to see expanded support for lighting on GPUs and DIMMs. |
MarshallAsch
left a comment
There was a problem hiding this comment.
I have a few general comments, a couple questions, and several changes that I am requesting.
- remove all the
.DS_Storefiles, I would suggest that you add.DS_Storeto your~/.gitignoreor~/.config/git/ignorefile to prevent them from being adding to future commits. - Add the device to the man pages file, essentially copy the existing format of the file to document the new device.
- Try to add some more white space in your code to help visually separate the blocks a little bit generally it looks good some parts are a little dense.
- Merge the upstream branch back into yours.
- run the black linter / formatter against your code.
currently this is the only conflict
<<<<<<< main
| Graphics card RGB | [Additional EVGA GTX 1070 and 1070 Ti cards](docs/nvidia-guide.md) | I²C | <sup>_Uenx_</sup> |
| Motherboard | [Asus Aura LED Z690 motherboards](docs/asus-aura-led-guide.md) | USB HID | <sup>_e_</sup> |
=======
| Graphics card RGB | [Additional EVGA GTX 1070 and 1070 Ti cards](docs/nvidia-guide.md) | I²C | <sup>_Uex_</sup> |
>>>>>>> main
It is the top block you want to accept to resolve the conflict.
docs/asus-aura-led-guide.md
Outdated
| # liquidctl -m Aura set rgb color static af5a2f | ||
| # liquidctl -m Aura set argb1 color breathing 350017 | ||
| # liquidctl -m Aura set argb2 color rainbow | ||
| # liquidctl -m Aura set argb3 color spectrum-cycle | ||
| # liquidctl -m Aura set sync color gentle-transition |
There was a problem hiding this comment.
In the block of text describing these commands it says that all channels will get the same effect, why specify individual channels if they all behave as sync?
There was a problem hiding this comment.
Added a note stating that individual channel names are provided in case a future BIOS update changes the behavior.
Per feedback from pull request, several changes have been made to the controller and documentation
Channel names are now led1, led2, ...
Status command returns number of ARGB and RGB channels. If --debug is enabled, it returns entire set of status bytes
Fix Lint complaint
|
I've added |
Documentation corrections and rewording.
MarshallAsch
left a comment
There was a problem hiding this comment.
A couple more changes then it looks good to me and Ill approve it.
|
Thank you both! |
This pull request adds support for Asus AURA LED USB lighting controllers. This driver supports "effect" mode in which the controller is responsible for modulating all lighting effects, but lacks the level of control and flexibility of "direct" mode in which the client software modulates lighting effects by continuously sending commands to the controller.
I should have submitted this pull request while there were no merge conflicts. Hopefully the conflicts are easy to resolve as this is mostly new code.
Checklist:
liquidctl.8Linux/Unix/Mac OS man pagedocs/*guide.mddevice guidesNew CLI flag?
extra/completions/New device?
extra/linux/71-liquidctl.rules(instructions in the file header)en)New driver?
docs/developer/protocol/