Gibtnix / MSIKLM

Control the SteelSeries keyboard of your MSI gaming notebook with Linux
GNU General Public License v3.0
242 stars 50 forks source link

Msi stealth gs66 rgb issue #48

Open JustAnotherGameDevWasTaken opened 1 year ago

JustAnotherGameDevWasTaken commented 1 year ago

I can control the per key rgb using msiperkeyrgb, apart from the rgb under the power button, which is very annoying. Based on the output of msiklm list, there's two devices that are steelseries klc, both with the same vendor and product ids, just the device interface number is 1 instead of 0 on the second. The ids listed are different than the ones listed with lsusb, and only one device shows up under lsusb. I'm not sure how to control the rgb of that one single key using either bit of software and it's really annoying me. 20221203_073137

JustAnotherGameDevWasTaken commented 1 year ago

Msiklm id vendor:product: 4152:4410 Msiklm device paths: 3-4:1.0 & 3-4:1.1 Lsusb id: 1038:113a

Gibtnix commented 1 year ago

Well, if the configuration is possible using the SteelSeries Engine on Windows, it might be possible to use WhireShark or something else to find out what's the required command for your configuration of choice. Thereafter, implementing the same command with a different application should be straightforward.

bakx commented 1 year ago

do you've any tutorials on how to capture those packets? I tried it and got some data, but not exactly sure what I am looking for. Right now this tool (running it from C code as I had to change the openKeyboard() function) blinks the lights quickly, but the lights don't stay on.. I'm guessing it needs a different sequence of bits or a specific format, but so far no luck in figuring out how to do this usb capturing. on windows

Gibtnix commented 1 year ago

Personally, I don't have any tutorials on how to dump or reverse engineer the command structure. I propose to use WireShark for this and maybe stick with tutorials on how to dump/analyze USB traffic with it.