Jump to content
Corsair Community

USB Loss of Functionality - iCUE breaking USB connectivity for itself & other devices


Recommended Posts

Hi,

 

EDIT: Updates and consolidation.

 

This may help given the amount of "it's not iCUE it's the OS or third party system" despite everything working fine until iCUE is installed.

 

TL;DR: Received my Corsair K57 Wireless Keyboard and all working OK via KVM with USB 2.0 Hub plugged into USB 3.0 ports on 2 Laptops. I installed iCUE and then updated the drivers on the K57 Receiver and Keyboard. Which killed my Logitech Headset that is wired connection to USB Hub. This is due to USB Controllers and allowed Endpoints [uSB 3.0 Max 16] therefore Keyboard will only work if KVM plugged into a USB 2.0 port or the on an AM4 chipset not Intel.

 

Thorough story so strap in

 

Disclaimer; Fully qualified to debug IT issues even F/W inefficiencies in code.

 

Testbed:

- 2x laptops (intel), 1x Macbook Air, and 1x PC (AM4).

- 1x KVM with USB 2.0 to USB 3.0 connections to end PCs.

- Up to 4x USB devices (2.4G mouse, 2.4G keyboard, 1x wired Headset, and 1xUSB Drive).

 

Devices connected via KVM; 2.4G Corsair K57, Wired Logitech Headset, 2.4G ET Mouse.

Devices connected to other USB 3.0 ports on end PCs 1xExternal HDD is also plugged in.

 

Story:

For months I've been using a wired Logitech Headset, ET 2.4G Mouse, and KLIM 2.4G Keyboard no issues.

 

Corsair K57 2.4G Keyboard arrives, plugged in and working OK for 24 hours (activities: work hours, gaming, and other antics).

 

Right up until I install iCUE S/W and update drivers from Factory v1.x to v5.x.

 

Immediately on one laptop the keyboard and mouse intermittently disconnect/reconnect and the keystrokes (one 1ms press) creates a substring of characters rather than one. typing Hello might look like "heeeeeeeeeello" or it misses characters, or inserts blank spaces.

 

Let's investigate:

 

Hummmph, I got a billion 2.4G receiver within 1m squared radius in the room so they could be fighting

 

...but it's only started happening now. All devices working fine on other PCs.

 

Screw it, maybe that Dell laptop is throwing a wobbly lets turn it off and carry on with the evening using other PCs.

 

Launch a game to relax, realise K57 keyboard fine, mouse fine, but headset no longer playing back sound, microphone is OK.

 

Let's investigate:

 

default sound device:yes, disabled:no, allowed:yes, third party apps interfering:no, troubleshooter:ok, driver:up-to-date.

 

Screw it turn off and on release USB memory just in case... no change.

 

Go to forums about USB connectivity and peripheral devices...

 

Get to a post about check Windows Services for Windows Audio running, yes it is, stop it. Stop Windows Audio Endpoint Builder... 'Windows Endpoint Builder must terminate iCUE Audio service rubbish first'...

 

"Wait has iCUE changed windows system configuration :O , can't be it piggyback or controlling Windows audio bridge and endpoints services?"

 

Uninstall iCUE, run ccleaner, remove directories in Prog Files/Prog Files (x86)/AppData/ProgramData, purge Registry. Damn still not fixed it.

 

Go to Corsair forum search for iCUE issues, see if there are similar issues... Buzinga dozens.

 

Have dinner, think on it. Come back unplug wired headset from KVM and plug directly into other USB3.0 port (and remove External HDD), works fine, keyboard works fine, mouse works fine.

 

Plug it back into KVM, remove K57 2.4G receiver and plug K57 receiver into other USB 3.0 port, works fine. Rinse and repeat for both laptops and PC.

 

Plug all devices back into KVM and run windows USB troubleshooter 'USB Controller in Fault State or not installed'.

 

"What does that even mean I can see the controllers in device manager?"

 

Why could this be?! Remember learning about USB 3.0... speed vs density... endpoints... check a bunch of stuff in the matrix and get to 'Not enough USB Controller resources'. Boom I got it.

 

USB 3.0 controllers have a limit of 96 endpoints per controller moreover each USB 3.0 port itself has a limit of just 16 endpoints for Intel XHCI controllers. Plug the KVM into the only USB 2.0 port I have (on the Macbook Air) and working fine.

 

Running USBView I can see with all devices plugged in it creates 14 idle Open Pipes. K57 has 8 open pipes, Wired Headset 1 open pipes, 2.4G Mouse 2 open pipes, USB Drive 2 open pipes, and USB Hub itself 1 open pipe.

 

So not quite 16 so not 100% yet until I do further testing. Noticed in Device Manager under Keybaords the 2.4G receiver creates two HID Keyboard Device entities too 'Corsair Virtual Input Device' the Wired connection creates 3 2x'Corsair Virtual input Device' and a generic 'USB Input Device'. Both only create 1 'USB Composite Device' entity in Universal Serial Buss Controllers.

 

Assumption:

iCUE driver update obviously bounces Corsair peripherals (in this case K57 wireless keyboard) endpoint number exponentially. Potentially for slipstream(? idk). If K57 is using a wired connection it only uses 8 open pipes/endpoints.

 

Solution:

If you get USB connectivity issues check how many devices are pugged into the USB port, what type of USB port it is, and the USB controller.

 

Plug the hub/KVM into a USB 2.0 port, or use a different controller, or buy a PC with AM4 chipset. Or if like 3 of your devices are from 2018 or newer and you only have USB 3.0 ports then die inside and use a wired connection for your £90 wireless keybaord.

 

This in theory would be the case for RGB strips, keyboards, mice, headsets, anything with latest Corsair drivers coupled with anything else under the USB banner.

 

Next Steps:

1. I'm trying to reset the keyboard to factory settings and config to get the driver from v5.x.x to v1.x.x but turning it off holding ESC while turning on for 5 seconds not doing anything.

2. Asking Corsair support for old firmwares I'll test one by one until it breaks.

3. Try to find s/w that can get virtual USB controllers and remap laptop USB ports (unlikely). No option to buy a PCIe USB expansion card.

4. Send Keyboard back for replacement which I know ill ship with F/W v1.x.

5. Failing these if the issue persists then it is the Corsair Audio Bridging Service and not USB 3.0 endpoint utilisation. Which means that services is total dog ****e and no way to fix it. Given that it was working until updating the F/W and iCUE and its drivers are only installed on one PC I doubt it is this service running in background.

Edited by HoursSpent
Updates
Link to comment
Share on other sites

Can only get this working through KVM/Hub if wired USB cable connected or if 2.4G wireless in KVM/hub are connected to a USB 2.0 Port.

 

Cannot figure out a way around USB 3.0 endpoint limitations and/or modifying how many endpoints K57 Receiver thinks it needs over Wireless 2.4G with source code.

 

It has Firmware: K57 Keyboard v5.0.188, 2.4G Wireless Dongle v5.0.84.

 

Please can someone from Corsair send me a link/email me the .bins for the F/W that is shipped with receivers ~v1.1.164 or something. I'm suspecting it is the Receiver that is the culprit not the Keyboard.

Edited by HoursSpent
Link to comment
Share on other sites

Received a replacement Keyboard it is now working and I have reviewed the Open Pipes via USBView app and this K57 only has 6 endpoints connections now rather than 8+.

 

I assume the additional endpoints come when updating to latest Drivers for the 2.4G Receiver possibly for Slipstream(?)

 

Would really appreciate it if someone can confirm this as well as forward a link to all Drivers from v1 to v5

Edited by HoursSpent
Link to comment
Share on other sites

UPDATE: I reverted the F/W back to the factory F/W v0.15.149 and that fixed the issue too on the first keyboard.

 

Resolved; - 100% F/W upgrade creates additional Endpoints (8 or more) meaning if in a USB hub connected to a USB 3.0 port you will likely not be able to have anything more than a mouse on 2.4G wireless.

Link to comment
Share on other sites

  • 3 months later...

Retried and recreated issues identically without any KVMs, just using ports on a laptop. Don't blame third party products for bad F/W coding and implementation of standard protocols. Just an FYI incase anyone else comes across this.

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
 Share

×
×
  • Create New...