-
Notifications
You must be signed in to change notification settings - Fork 18
-
Notifications
You must be signed in to change notification settings - Fork 18
Unable to set colors for some keys #43
Comments
Hey, I've asked Corsair about the DPI indicator before. It's intended to not be changeable through the sdk, sadly :c |
I couldn't reproduce this so far but I'm using a K95 and this could be keyboard related. In case you don't have the SDK-code I just created a binary from it http://wyrez.org/uploads/color_pulse_example.zip |
All keys are properly lit up in the provided example. |
Ah I was able to reproduce the behavior you described, but it's nothing related to some special keys. CueSDK.Initialize();
CorsairKeyboard keyboard = CueSDK.KeyboardSDK;
if (keyboard == null)
throw new WrapperException("No keyboard found");
keyboard.Brush = new SolidColorBrush(Color.Black);
keyboard.Update();
IKeyGroup specialKeyGroup = new ListKeyGroup(keyboard, CorsairKeyboardKeyId.Brightness, CorsairKeyboardKeyId.WinLock);
specialKeyGroup.Brush = new SolidColorBrush(Color.Aqua);
// Replacing the specialKeyGroup with this won't work even if it seems to be the same
//keyboard[CorsairKeyboardKeyId.Brightness].Led.Color = Color.Aqua;
//keyboard[CorsairKeyboardKeyId.WinLock].Led.Color = Color.Aqua;
keyboard.Update(); Let me know if this helps. If not we would need to investigate a bit further if the strafe uses different IDs or something. |
I don't use brushes, I set each key individually as shown prior. How would IsLocked workaround work? But let me try making brushes for those two keys. |
Just set IsLocked to true before updating the keyboard like this: (And remember to unlock it first if you ever want to change the color.) keyboard[CorsairKeyboardKeyId.Brightness].Led.Color = Color.Aqua;
keyboard[CorsairKeyboardKeyId.Brightness].Led.IsLocked = true;
keyboard[CorsairKeyboardKeyId.WinLock].Led.Color = Color.Aqua;
keyboard[CorsairKeyboardKeyId.WinLock].Led.IsLocked = true;
keyboard.Update(); But I'm pretty sure this will not help if you don't use brushes. |
I just tried with creating two brushes, one for winlock other for brightness. Same result, keys are not set. |
Ok this is weird ... could you please run something like this foreach (CorsairKey key in keyboard)
Debug.WriteLine(key.KeyId + ": " + (int)key.KeyId + " - " + key.KeyRectangle); and post me the result? |
Here you go:
|
I don't get it - looks good as far as I can tell. CueSDK.Initialize(true);
CorsairKeyboard keyboard = CueSDK.KeyboardSDK;
keyboard.Brush = new SolidColorBrush(Color.Aqua);
keyboard.Update();
Thread.Sleep(5000); All keys on the keyboard should be aqua then - how many/which ones stay black? |
That turned the whole keyboard aqua. I then tried this:
And the two keys stayed aqua color, as opposed to previously black. But I don't lock any keys in my original code, so I don't see why they won't set to another color. |
ok - at least there is a way to make it work. With he code like this it should work without the lock too. |
Alright, problem resolved. Issue was on my side. My apologies. |
I am experiencing an issue where I cannot set color for some keys on a Corsair Strafe RGB and I cannot change the color of the DPI indicator on Corsair Sabre RGB. I am able to change color of other lights on both the keyboard and mouse, but not the Windows Lock, Brightness, and mouse DPI lights.
Is this an issue with CUE or on my end?
The text was updated successfully, but these errors were encountered: