[Bug Report] Aura Sync USB protocol maps channel ids differently for ASUS PRIME B550-PLUS AC-HES
Summary: My motherboard seems to deviate slightly from the expected Aura Sync USB protocol. It looks like the addressable headers start with channel ID 0x00, perhaps because of no mainboard RGB?
Out of box, OpenRGB 0.7 did not have any effect on the addressable RGB. OpenRGB displays 3 zones for this mobo: mainboard, addressable 1, and addressable 2. None of these zones affected my fans, which are plugged into an addressable RGB header on the board. I verified that the Linux USB HID device is writable by my user, and resized the zones as large as possible.
I was curious if the device was working at all, which led me to @inlart 's write-up of the reverse-engineered Aura Sync protocol:
https://blog.inlart.com/post/openrgb-asus-x570/
Using Python, I tried sending some commands to the device:
>>> import os
>>> import binascii
>>> u = os.open('/dev/hidraw0', os.O_RDWR)
# Addressable Off (no effect)
>>> os.write(u, binascii.unhexlify('ec3501000000' + 59 * '00'))
# Addressable Static (no effect)
>>> os.write(u, binascii.unhexlify('ec3501000001' + 59 * '00'))
As a shot in the dark, I tried changing the "channel_effect id" to 0x00, and it worked!
# Addressable Off (works!)
>>> os.write(u, binascii.unhexlify('ec3500000000' + 59 * '00'))
# Addressable Static
>>> os.write(u, binascii.unhexlify('ec3500000001' + 59 * '00'))
I can trigger all of the different effect modes this way. Also, interestingly, after setting the effect this way, the OpenRGB GUI started working for setting the color when set to "Static" mode.
Here's a guess at what's going on: this motherboard has no built-in RGB, and I don't think it even has a 12v connector, only addressable RGB headers. It seems like for this board, the 0x00 "channel_effect id" refers to the header my devices are plugged into, which is at the bottom of the board (box 11 in the diagram):
I don't have anything currently plugged into the top connector. I'm curious if that is controlled by 0x01 or 0x00. Happy to do a little testing if it'd be helpful.
Device info:
Here's the product page:
https://www.asus.com/Motherboards-Components/Motherboards/PRIME/PRIME-B550-PLUS-AC-HES/

