Corsair RGB devices malfunction if they receive no input for ~ 5 seconds

Client: Windows 10 intel chip
Server: Raspberry pi 3

Client Software: Windows 64 bit Version 4.3.5
Server Software: VirtualHere USB Server Optimized for Pi3

Connected Devices: Corsair K70 RGB keyboard, Corsair sabre RGB mouse

Expected Result: Keyboard and mouse perform normal functions as well as execute and update RGB light animations controlled VIA corsair software running on the client.

Actual Result: If updates from the corsair software pause for a period of more than 5 seconds, animations on the keyboard and mouse will be frozen and cannot be updated until they are disconnected and reconnected again. Other basic keyboard functions continue to work normally. If the animations are not paused (i.e. continuous interaction or an animation on a loop) the device will continue to update the RGB lights normally. However, if the animation is paused for more than 5 seconds the device will report as malfunctioning and requires a reconnect.

TLDR: The keyboard and mouse needs a constant data stream otherwise it malfunctions. Perhaps there is a bandwidth saving function that doesn't listen for input from the client unless there is data coming from the client which is messing things up. Perhaps add an option for continuous streaming from both client and server.

#2

OK i think i know the problem, i think the keyboard is going to sleep. VirtualHere wont support that.

Do this

1. Use the keyboard via virtualhere
2. Open windows Device Manager and select View->Devices by Connection. Go to Virtualhere USB 3 eXtensible Host Controller
3. Under there it will have the keyboard / mouse listed, right click on that and select Properties then "Power Management". Then UNcheck "All the Computer to Turn Off this Device to Save Power"

#3

Unfortunately that didn't work. I really thought it would too. After two reboots and double checking that the power management option remained unchecked I can confirm that that fix did not work. Any other ideas?

#4

Update: I'd like to reiterate that if there is an animation on loop streaming from the client, it will not freeze. Another discovery I've made is restarting the corsair software will cause it to work for a few seconds and thus a USB reconnect is not necessary. Still, it does not work normally as mentioned in my first post.

#5

I think some part of the device is still sleeping, how many entries under the virtualhere host controller / root hub does it have when its working via virtualhere? Also you have unchecked the Power Event checkbox under each device under the root hub related to the corsair

#6

There are many entries for both the mouse and keyboard. Each one has 1x"USB Composite Device" > 3x "USB Input Device" > ~3x-4x "HID compliant xxxxxxxx". I went through thoroughly in each one and unchecked the Power Event checkbox the first time around. Like I said, no change.

#7

Ok, im almost certain something is sleeping, but perhaps there is no way to stop that component sleeping. I took a look on the corsair but couldnt see any special drivers for that keyboard so i dont think its going to be fixable.

#8

Okay, so using a 3rd party app "corsair effects engine" does indeed work normally. It looks like there is some kind of hangup that has to do specifically with the official software "Corsair Utility Engine". Thanks for the effort.