Jump to content
Corsair Community

K95 RGB Keyboard disappearing from ICue after Diablo3


skrybe

Recommended Posts

So I had a Diablo 3 profile to change key colours when Diablo 3 launched. I ended up deleting it because I wasn't really happy with it. Anyway, the keyboard still changes colours when I launch D3 but now when I exit D3 it doesn't revert to my default lighting profile. It stays stuck on the D3 lighting. I also realised that it's only working as a standard keyboard while it's like this - volume keys don't work, the "G" keys and brightness keys don't work etc.

I checked ICue and the keyboard has literally vanished from the main screen so there's no way to do anything about it. Rebooting windows will reset things and the keyboard usually returns to normal. Sometimes just unplugging the keyboard's USB connections will do the same, but not always.

So, any thoughts? Is this ICue being weird or the keyboard being weird? Do lighting profiles get saved to the physical keyboard even if they're deleted from ICue? And if so how do I remove it from the keyboard? It's happened over at least the last three versions of ICue.

Interestingly, the mouse (M55 RGB Pro) is connected via a USB port in the keyboard and it continues to appear in ICue and works just fine.

Link to comment
Share on other sites

So if I remember correctly, Diablo 3 was one of the early CUE lighting integration games.  However, when I look at the current list, I don't see Diablo 3 listed.  I am not sure if that's because it's on the older side or if support was dropped, but it seems possible there is still is some code in CUE or on the game side triggering a response.  

 

Open up CUE settings and go to the "Software and Games" tab.  See if Diablo 3 is listed.  Here you can toggle games or software integrations on or off, but the best method might be to check Diablo 3's game settings for the corresponding "enable 3rd party lighting" switch.  

Link to comment
Share on other sites

No it was a specific profile downloaded, not something built in. Can't remember exactly which one because I deleted it so I don't have the name anymore. Would have been something I found on the Corsair forums but it was custom.

Annoyingly, today I've just seen the keyboard disappear from ICue even without launching Diablo 3. Fresh (ish) reboot of Windows. Keyboard was working fine a few hours ago.  But now the lighting effects are stuck at default and the plugin for the keyboard is gone from the ICue main screen. Obviously the keyboard works since I'm typing this on it but none of the advanced features work nor can I change settings.

I'm guessing it'll reappear after another Windows reboot but now I'm wondering whether there is something faulty either in the physical hardware, the USB cable or the software. Bit annoying considering the cost of the keyboard and it's only a couple years old.

edit: Just tried shutting down and restarting ICue by itself (not shutting windows) and it still doesn't load the keyboard on the homescreen of ICue.

Edited by skrybe
More info.
Link to comment
Share on other sites

*Sigh* couldn't do second edit. So fresh post...

Unplugging and replugging the keyboard's USB cables makes it reappear and lighting seems to be working again. I'll try to keep an eye on it to see if I can determine when it's becoming non-responsive.

Link to comment
Share on other sites

If the KB is popping in and out of CUE, then it's time to contact support.  Typically that is a USB cable problem and not software, but it's hard to be sure.

 

There used to be a CUE SDK profile specifically for Diablo 3.  When activated it takes over CUE lighting.  I wondered if there might be some remnants still out there, either in the game engine or in CUE.  Newer devices might not be programmed for it and thus stay with their assigned effect, but older hardware might respond if present.  

Link to comment
Share on other sites

Well ICue is not seeing the keyboard again. No Diablo3 involved this time. Happened sometime in the last 5-6 hours. Unfortunately I can't say exactly when it disappeared. Was playing WoW and lighting was fine. It is possible that it happened during WoW because the key response was a little weird at one point. Though I put that down to either internet or brain lag at the time. I can't say for sure whether the lighting profile stopped working at that point because I honestly didn't notice (too focused on the screen). I think it was still ok though.

Did some internet browsing and watched a movie after that with no problems. But I don't have specific profiles set for that (other than to colour the Caps, Num and Scroll lock keys and I probably wouldn't have noticed them stop working. I might try adding a colour-ripple effect somewhere (maybe numpad) that should be a little more obvious when it stops working. I run dual monitor so I might try running with ICue open on the second one all the time for the time being.

Again, the keyboard works, since I'm typing and the mouse is still detected and working fine. So how can I test the USB cable? It's not removable so I can't just switch it out to a new one. I can try a different port in case it's the mobo' USB plug not the cable. Is there any sort of diagnostic that could be run on the keyboard short of returning it to Corsair? Or on the Mobo or Windows?

Link to comment
Share on other sites

There is no realistic user test for cable integrity.  What you can do is move the connectors to different USB ports in the back.  Take note as to whether they are USB 2 or 3.x.  See if the behavior continues. This is likely to be one of the first questions from support, so having a ready answer should expedite things.  If it keeps dropping regardless of port selection, then it would seem to be on the KB end.  

Link to comment
Share on other sites

Well as I said, the keyboard itself is functional as in I can type on it even when ICue doesn't see it. And the mouse which passes through the keyboard is always detected and working fine, even when the keyboard isn't. So it seems unlikely that the USB port (or cable) is faulty.

I've just tried moving both keyboard USB connectors to different USB 3.2 gen 1 ports and I'm trying my other two ideas, I've set up a colour spiral on the numpad and going to run ICue constantly on the second monitor. Hopefully I'll be able to see the exact moment it drops out. Maybe that will be useful.

 

Link to comment
Share on other sites

Just had a thought, ICue has debug logging. I've enabled that and will see if anything comes up next time the keyboard disappears. Maybe that'll be illuminating.

Link to comment
Share on other sites

  • 2 weeks later...

So I enabled debug logging and last night it had the problem again. Checked the debug logs and the only thing I see is a bunch of the following:

2022-08-22 10:41:31.5567 | 20 | CARNACKI | 4.27.0.1 | DevicesMonitor | ->
CorsairLink4.Devices.Flextronics.Core.FlextronicsMaxTriesCountExceeded: Exception of type 'CorsairLink4.Devices.Flextronics.Core.FlextronicsMaxTriesCountExceeded' was thrown.
   at CorsairLink4.Devices.Flextronics.Core.FlextronicsCommandHandler.<WriteDataUntilSuccess>d__35.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at CorsairLink4.Devices.Flextronics.Core.FlextronicsCommandHandler.<WriteVerifyByteValue>d__1b.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at CorsairLink4.Devices.Flextronics.Flextronics.FlextronicsControllerWriter.<DoSet12VOutputOverCurrentPotectionEnabled>d__12.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at CorsairLink4.Devices.Flextronics.Flextronics.FlextronicsControllerWriter.<Set12VOutputOverCurrentLimit>d__9.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   at CorsairLink4.Devices.Flextronics.Flextronics.FlextronicsCommunicationDataHandler.<ProcessControlData>d__11.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at CorsairLink4.Devices.Flextronics.FlextronicsDeviceComponent.<InternalProcessControlData>d__f.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at CorsairLink4.Module.Common.BaseControlledComponent.<ProcessControlData>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at CorsairLink4.Service.Common.Utils.DeviceControlExtentions.<ProcessDeviceRequest>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at CorsairLink4.Service.Common.Core.DevicesMonitor.<RunTask>d__29.MoveNext()

There are literally dozens of those exceptions in the log over the last week. Basically they date from the point I turned logging on up til now. None of them coincide with the point at which the keyboard "dropped off" of ICue last night. I believe at least some of those exceptions match reboot times. But I don't think all of them do (I have not restarted my PC dozens of times in a week).

Had a look at the Service Trace log and it looks like it's a pretty consistent 1006ms time. Highest I can find is 1014 and lowest is 990. No noticeable spikes near the time the keyboard disappeared last night. Interestingly it also says Devices: 7 (60 sens.) the whole log. I'd have thought if the device (keyboard was disappearing then those numbers would drop.

Did find something interesting in one of the CUELogs files though.

2022-08-22 01:37:30.567 W cue.devices.enum.subdevice: Fail counter for "K95 RGB PLATINUM XT" reached zero, removing subdevice
2022-08-22 01:37:30.567 I cue.devices.bragi.command_queue: Command cancelled bragiprotocol::CommandId::WriteBuffer
2022-08-22 01:37:30.567 I cue.devices.bragi.command_queue: Command cancelled bragiprotocol::CommandId::Ping
2022-08-22 01:37:30.567 I cue.devices.bragi.command_queue: Command cancelled bragiprotocol::CommandId::Ping
2022-08-22 01:37:30.567 I cue.devices.bragi.command_queue: Command cancelled bragiprotocol::CommandId::Ping
2022-08-22 01:37:30.567 I cue.devices.bragi.command_queue: Command cancelled bragiprotocol::CommandId::Ping
2022-08-22 01:37:30.567 C cue.devices.bragi.physical_hid: Main subdevice disconnected! "K95 RGB PLATINUM XT"
2022-08-22 01:37:30.567 W cue.devices.enum.subdevice: Fail counter for "K95 RGB PLATINUM XT" reached zero, removing subdevice
2022-08-22 01:37:30.567 C cue.devices.bragi.physical_hid: Main subdevice disconnected! "K95 RGB PLATINUM XT"
2022-08-22 01:37:30.567 W QCoreApplication::postEvent: Unexpected null receiver
2022-08-22 01:37:30.567 C cue.devices: Write hunk failed. Device: "K95 RGB PLATINUM XT"
2022-08-22 01:37:30.567 W QCoreApplication::postEvent: Unexpected null receiver
2022-08-22 01:37:30.567 C cue.devices: Exception:  Timeout (5805ms) while receiving reply.

2022-08-22 01:37:30.567 W QCoreApplication::postEvent: Unexpected null receiver
2022-08-22 01:37:30.567 C cue.devices: Exception while runCommand on device  K95 RGB PLATINUM XT :
  Timeout (5805ms) while receiving reply.

2022-08-22 01:37:30.568 I cue.devices.bragi.command_queue: Command not send. Subdevice disabled. bragiprotocol::CommandId::WriteBufferBegin
2022-08-22 01:37:30.568 W cue.devices.enum.subdevice: Fail counter for "K95 RGB PLATINUM XT" reached zero, removing subdevice
2022-08-22 01:37:30.568 C cue.devices.bragi.physical_hid: Main subdevice disconnected! "K95 RGB PLATINUM XT"
2022-08-22 01:37:30.568 C cue.devices: Write hunk failed. Device: "K95 RGB PLATINUM XT"
2022-08-22 01:37:30.568 C cue.devices: Exception:  IO operation was cancelled.

2022-08-22 01:37:30.568 C cue.devices: Exception while runCommand on device  K95 RGB PLATINUM XT :
  IO operation was cancelled.

2022-08-22 01:37:30.609 I cue.lightings.direct_player: Stopped lighting worker in 0x1b78
2022-08-22 01:37:30.679 W cue.devices.enum.subdevice:  Get property UsbVid failed.
  Timeout (100ms) while sending command.

2022-08-22 01:37:30.679 C cue.devices.abstact_protocol: stopWorker wasn't called correctly for "K95 RGB PLATINUM XT"
2022-08-22 01:37:30.680 C cue.devices: Cannot create subdevice for: "K95 RGB PLATINUM XT"
2022-08-22 01:37:30.680 C cue.devices:  Failed to get vid, pid from subdevice id: 0

2022-08-22 01:37:30.680 W QObject::connect(AbstractProtocol, bragi::LogicalSubdevice): invalid nullptr parameter
2022-08-22 01:37:30.691 C cue.devices: Trying to remove main subdevice for "K95 RGB PLATINUM XT"
2022-08-22 01:37:35.695 C cue.devices.abstact_protocol: stopWorker wasn't called correctly for "K95 RGB PLATINUM XT"

That looks like about the time the keyboard disappeared from ICue.

Link to comment
Share on other sites

The top section is the PSU.  The bottom obviously the KB, but I am not qualified to interpret most of it.  Time to start a support ticket and pass this on to them.  

Link to comment
Share on other sites

While I was looking for the support link I noticed a FAQ item about resetting the keyboard.

https://help.corsair.com/hc/en-us/articles/360025465031-How-to-Reset-your-keyboard

Happy to try this before I lodge a ticket (since I'm guessing they'll ask me to do that too) but would like to know what it's actually resetting. I'm guessing it would clear saved keyboard profiles from the onboard memory, would that be all? Just making sure I don't need to backup/export anything before I try it.

Link to comment
Share on other sites

A ESC key reset is going to clear onboard memory. However, your profiles there should be stores in CUE as K95P XT HW1 through HW5. You can re-save them to the device when done. 

Link to comment
Share on other sites

Thanks for that. I'll give this a whirl and if I'm still getting the keyboard dropouts I'll lodge a ticket.

Link to comment
Share on other sites

Well, that didn't help. Had another drop out. I've lodged a ticket and I'll update this thread once I get a response in case other people are having similar issues in future.

Link to comment
Share on other sites

  • 5 months later...
On 8/29/2022 at 10:19 AM, skrybe said:

Well, that didn't help. Had another drop out. I've lodged a ticket and I'll update this thread once I get a response in case other people are having similar issues in future.

Hi Skrybe, did you end up resolving this issue? Myself and a number of others are experiencing the same dropout (and freeze) with our K100 keyboards.

Having looked through my logs, the first entry is the same as yours was.

cue.devices.enum.subdevice: Fail counter for "K100 RGB" reached zero, removing subdevice

Any info would be much appreciated!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...