Teach me obi wan. I am happy to probe usb traffic to understand the controller and enhance the liquidctl driver.
@dehjomz,
Let's start with something simple:
- Download and install Wireshark for Windows
- One of the options during installation will be USBPcap, which we must select, but the other option (for network capture, believe, can be skipped)
- Launch Wireshark and double-click on USBPcap1 as shown in the red box:
Wireshark will begin capturing all USB traffic, which can be overwhelming so we'll apply a filter to monitor only the Aura LED controller.
Start by entering a filter condition as shown here, but specify
idProduct of the Aura controller on your Z690 Maximus Formula. Then click the "right arrow" icon just to the right of the "x" on the same row. That will activate the filter.
Here we see some USB traffic to and from the Aura LED controller on Z690 ProArt. If you click on any of the rows in the top half of the window, Wireshark will show details about that packet in the lower half. Here we've clicked on the first row and expanded the
USB URB section in the bottom half.
The
URB is the USB Request Block and it contains a lot of "header" information including
Device address, which in this particular case is
Device address: 4.
Change the filter condition in the green box to
usb.device_address == 4 (use the actual device address) and click the "right arrow" icon on the right side of the green rectangle. Then click the
+ icon to save this filter condition as a "favorite" so you don't have to remember it every time. When you click
+ you can give the filter a name. As you can see on the far right side of that line, I've given the name
Asus Aura LED.
Now use any app in Windows that controls LEDs. Most likely you'll be using Asus Aura Crate. As you change color modes and colors, you'll find that Aura Crate sends a continuous stream of control packets to the LED controller. This means it's operating in "direct" mode where the software is responsible for managing the dynamic color schemes. If you change the color mode to "static" you will find that the continuous stream of control packets comes to a stop because in static mode the software does not have to keep changing LED colors.
Recommendation:
- Use Aura Crate to set all channels to static mode so there's no continuous barrage of USB traffic
- Stop and start Wireshark capture
- Just change color (not mode)
- There should be about 10-15 packets of USB traffic
- Stop and save the capture
- Start the capture again
- Now select a dynamic color mode and note which mode it was
- A huge onslaught of USB traffic will begin
- Switch back to static color mode to stop the onslaught
- Stop and save the capture
- Post the two capture files