Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support New iCue Commander Core? #211

Open
JoseArtunedo opened this issue Jan 11, 2021 · 34 comments
Open

Support New iCue Commander Core? #211

JoseArtunedo opened this issue Jan 11, 2021 · 34 comments
Assignees
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@JoseArtunedo
Copy link

Thank you first of all, for your great project, its potential is undeniable.

Will support be added for the new Icue Commander Core?

image
https://www.amazon.es/gp/product/B08G1Q3GZR?psc=1

I was investigating, and I have not seen a trace, but the temperature sensors could be included in the arduino code or it is not possible.

Thank you

@Legion2
Copy link
Owner

Legion2 commented Jan 12, 2021

The link does not work and I can't find any reference for the iCue Commander Core.

@Legion2 Legion2 added the question Further information is requested label Jan 12, 2021
@kostyamat
Copy link

Hello. Please tell me which type of thermistors is suitable for Commander Pro?
Will this work?
€ 0,83 | 5PCS/LOT Thin Film Thermistor ntc 10k 1% 25mm SMD 103 Membrane Temperature Sensor for 3D Printer Termistor
https://a.aliexpress.com/_BTrsYz

@Legion2
Copy link
Owner

Legion2 commented Jan 14, 2021

10 k ohm Thermistor should work

@JoseArtunedo
Copy link
Author

El enlace no funciona y no puedo encontrar ninguna referencia para el iCue Commander Core.

I do not know why the link I sent cannot be displayed. I leave you another.

Also adding the diagram of connections.

https://www.corsair.com/es/es/Categor%C3%ADas/Productos/Accesorios-%7C-Piezas/Commander-CORE-RGB-&-PWM-Fan-Controller/p/CW-8960071

Squematic

@JoseArtunedo
Copy link
Author

Hola. Dígame qué tipo de termistores es adecuado para Commander Pro.
esto funcionara?
€ 0,83 | 5 unids / lote termistor de película delgada ntc 10k 1% 25mm SMD 103 Sensor de temperatura de membrana para termistor de impresora 3D
https://a.aliexpress.com/_BTrsYz

Great this info comes to me, I was also looking for and had the doubt if they were 10K, I had the original commander pro at home, I measured and if they are 10k to work.

@Legion2 Legion2 added the enhancement New feature or request label Jan 15, 2021
@Legion2
Copy link
Owner

Legion2 commented Jan 15, 2021

I think it should be possible to support the Commander Core, now only the USB PID is required, so iCUE will detect it.

@JoseArtunedo
Copy link
Author

JoseArtunedo commented Jan 15, 2021

I think so, it's basically an all-in-one commander pro + Lighting Node Core. It will simplify everything to the maximum. With this, it is simply all you need to be able to control PWM and lighting from the same place.

The USB PID, is taken from an original controller, or what is the way to obtain it?

@Legion2
Copy link
Owner

Legion2 commented Jan 15, 2021

The features of a commander core can already be realized with this library, just combine the commander pro and the MultipleFans example.

The USB PID can be obtained from the original device or by guessing it.

@JoseArtunedo
Copy link
Author

I am waiting to receive a Corsair iCUE H150i ELITE CAPELLIX, which contains the Commander Core, if you explain to me how I can obtain or know the USB Pid I will provide it to you. Is this part I do not know how to do it, I have the basic knowledge of arduino and programming

@Spegs21
Copy link
Contributor

Spegs21 commented Feb 11, 2021

I am waiting to receive a Corsair iCUE H150i ELITE CAPELLIX, which contains the Commander Core, if you explain to me how I can obtain or know the USB Pid I will provide it to you. Is this part I do not know how to do it, I have the basic knowledge of arduino and programming

Have you found the PID yet? You can use HWiNFO or just device manager to find the PID. In HWiNFO, expand Ports->USB in the device tree. Then expand all of the USB controllers and hubs until you find the Commander Core. PID is listed in the Hardware ID line. It'll look like:

Hardware ID: USB\VID_1B1C&PID_1B2D

@z0rlac
Copy link

z0rlac commented Feb 11, 2021

Using USBDeview, here is the information from my Commander Pro attached to a H150i Capellix

Device Name: CORSAIR iCUE Commander CORE
PID: USB\VID_1B1C&PID_0C1C<device serial number here>

@Legion2
Copy link
Owner

Legion2 commented Feb 11, 2021

Device Name: CORSAIR iCUE Commander CORE
PID: USB\VID_1B1C&PID_0C1C

Looks good, I will try this weekend to create a sketch for the commander core.

@Legion2 Legion2 self-assigned this Feb 14, 2021
@Legion2
Copy link
Owner

Legion2 commented Feb 14, 2021

I tried to use the PID and iCUE tries to use the devices, but it does not show up in iCUE.
Here is an excerpt from the iCUE log:

2021-02-14T19:26:22 I cue.dev.hidenumerator: Found device VID 6940 PID 3100 Usage Page 65472 Usage 3072
2021-02-14T19:26:22 I cue.dev.mgr: Candidate device for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "input")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))  not found.
2021-02-14T19:26:22 I cue.dev.mgr: No manifest for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "input")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))
2021-02-14T19:26:22 I cue.dev.mgr: Candidate device for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "input")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))  not found.
2021-02-14T19:26:22 I cue.dev.mgr: No manifest for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "input")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))
2021-02-14T19:26:22 I cue.dev.mgr: Candidate device for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "output")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))  not found.
2021-02-14T19:26:22 I cue.dev.mgr: No manifest for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "output")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))
2021-02-14T19:26:22 I cue.dev.mgr: Candidate device for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "output")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))  not found.
2021-02-14T19:26:22 I cue.dev.mgr: No manifest for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "output")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))
2021-02-14T19:26:22 I cue.hid_device_detector: DeviceInstance(Path: "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#7&52bfe76&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}", InstanceId: "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000", ParentInstanceId: "USB\\VID_1B1C&PID_0C1C\\FB66DF55421900F8\u0000") inserted.
2021-02-14T19:26:22 I cue.hid_device_detector: Add open task: "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#7&52bfe76&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" with delay 0 ms.
2021-02-14T19:26:22 I cue.hid_device_detector: "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#7&52bfe76&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" opened.
2021-02-14T19:26:22 I cue.hid_device_detector: Mark all tasks as finished.
2021-02-14T19:26:22 I cue.devices: Begin attaching to "Commander CORE" (vid=1b1c, pid=c1c) "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#7&52bfe76&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" status b= 0
2021-02-14T19:26:22 I cue.devices: End attaching to "Commander CORE" (vid=1b1c, pid=c1c) "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#7&52bfe76&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" status a= 0
2021-02-14T19:26:22 I cue.devices: Created new device"Commander CORE" (vid=1b1c, pid=c1c); ready:false

@z0rlac can you look into the iCUE logs CUELogs and compare them to my logs.

@JoseArtunedo
Copy link
Author

JoseArtunedo commented Feb 14, 2021

Intenté usar el PID e iCUE intenta usar los dispositivos, pero no aparece en iCUE.
Aquí hay un extracto del registro de iCUE:

2021-02-14T19:26:22 I cue.dev.hidenumerator: Found device VID 6940 PID 3100 Usage Page 65472 Usage 3072
2021-02-14T19:26:22 I cue.dev.mgr: Candidate device for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "input")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))  not found.
2021-02-14T19:26:22 I cue.dev.mgr: No manifest for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "input")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))
2021-02-14T19:26:22 I cue.dev.mgr: Candidate device for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "input")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))  not found.
2021-02-14T19:26:22 I cue.dev.mgr: No manifest for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "input")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))
2021-02-14T19:26:22 I cue.dev.mgr: Candidate device for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "output")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))  not found.
2021-02-14T19:26:22 I cue.dev.mgr: No manifest for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "output")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))
2021-02-14T19:26:22 I cue.dev.mgr: Candidate device for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "output")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))  not found.
2021-02-14T19:26:22 I cue.dev.mgr: No manifest for QMap(("bus", "hid")("devInstanceId", "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000")("hid-direction", "output")("hid-type", "report")("hid-usage", "3072")("hid-usagepage", "65472")("model-name", "Commander CORE")("usb-pid", "3100")("usb-vid", "6940")("vendor", "Corsair"))
2021-02-14T19:26:22 I cue.hid_device_detector: DeviceInstance(Path: "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#7&52bfe76&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}", InstanceId: "hid\\vid_1b1c&pid_0c1c&mi_02\\7&52bfe76&0&0000", ParentInstanceId: "USB\\VID_1B1C&PID_0C1C\\FB66DF55421900F8\u0000") inserted.
2021-02-14T19:26:22 I cue.hid_device_detector: Add open task: "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#7&52bfe76&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" with delay 0 ms.
2021-02-14T19:26:22 I cue.hid_device_detector: "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#7&52bfe76&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" opened.
2021-02-14T19:26:22 I cue.hid_device_detector: Mark all tasks as finished.
2021-02-14T19:26:22 I cue.devices: Begin attaching to "Commander CORE" (vid=1b1c, pid=c1c) "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#7&52bfe76&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" status b= 0
2021-02-14T19:26:22 I cue.devices: End attaching to "Commander CORE" (vid=1b1c, pid=c1c) "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#7&52bfe76&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" status a= 0
2021-02-14T19:26:22 I cue.devices: Created new device"Commander CORE" (vid=1b1c, pid=c1c); ready:false

@ z0rlac, ¿puedes mirar los registros de iCUE CUELogsy compararlos con mis registros?

Hello what version of iCue are you using. You have the latest beta of the program closed, if not, tell me where I can filter it for you.

@Legion2
Copy link
Owner

Legion2 commented Feb 14, 2021

I have iCUE 3.37.140. You can export the logs in the iCUE settings
image in the exported zip there is a CUELogs folder with the log files.

@JoseArtunedo
Copy link
Author

I have 4.5.134, where I think new data was attached, for the Commader Core. Talk to me here Discord (Jaren # 0618) and if you want to try the code under that version or I will provide you with the closed beta.

@Legion2
Copy link
Owner

Legion2 commented Feb 14, 2021

I have access to the closed beta, but I don't use it, because it does not receive the normal updates.

@JoseArtunedo
Copy link
Author

Ahh oki, then the only thing I can do is try the skets in that version to see if it works for me.

@Legion2
Copy link
Owner

Legion2 commented Feb 14, 2021

I did not modify any sketch, just changed the PID in the device config AppData\Local\arduino15\packages\Legion2\hardware\avr\0.3.0\boards.txt

@JoseArtunedo
Copy link
Author

JoseArtunedo commented Feb 15, 2021

Same problems you have, I have obtained the same results. The name of the device does not matter what it is, the important thing is the pid.

From what I've been testing, I've given Commader Core different names, and the iCue log does seem to have a bug with the Commander Core, so if it detects that pid 0x0c1c

2021-02-15 00:11:26.103 I cue.sys_info.win: Info: prop=Size class=Win32_DiskDrive returned=false
2021-02-15 00:11:26.106 I cue.devices: Manifest for device (vid=258a, pid=1007) not found.
2021-02-15 00:11:26.107 I cue.devices: Manifest for device (vid=c45, pid=7697) not found.
2021-02-15 00:11:26.107 I cue.devices: Manifest for device (vid=258a, pid=1007) not found.
2021-02-15 00:11:26.107 I cue.devices: Manifest for device (vid=258a, pid=1007) not found.
2021-02-15 00:11:26.107 I cue.devices: Manifest for device (vid=258a, pid=1007) not found.
2021-02-15 00:11:26.107 I cue.devices: Manifest for device (vid=c45, pid=7697) not found.
2021-02-15 00:11:26.108 I cue.devices: Manifest for device (vid=c45, pid=7697) not found.
2021-02-15 00:11:26.108 I cue.devices: Manifest for device (vid=258a, pid=1007) not found.
2021-02-15 00:11:26.108 I cue.devices: Manifest for device (vid=c45, pid=7697) not found.
2021-02-15 00:11:26.108 I cue.devices: Manifest for device (vid=258a, pid=1007) not found.
2021-02-15 00:11:26.109 I cue.devices: Manifest for device (vid=258a, pid=1007) not found.
2021-02-15 00:11:26.109 I cue.devices: Manifest for device (vid=258a, pid=1007) not found.
2021-02-15 00:11:26.109 I cue.devices: Manifest for device (vid=c45, pid=7697) not found.
2021-02-15 00:11:26.109 I cue.hid_device_detector: DeviceInstance(Path: "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#8&311d48f2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}", InstanceId: "hid\\vid_1b1c&pid_0c1c&mi_02\\8&311d48f2&0&0000", ParentInstanceId: "USB\\VID_1B1C&PID_0C1C\\FB66DF55421900F5\u0000") inserted.
2021-02-15 00:11:26.109 I cue.hid_device_detector: Add open task: "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#8&311d48f2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" with delay 0 ms.
2021-02-15 00:11:26.110 I cue.hid_device_detector: "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#8&311d48f2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" opened.
2021-02-15 00:11:26.110 I cue.hid_device_detector: Mark all tasks as finished.
2021-02-15 00:11:26.111 I cue.devices: Begin attaching to "Commander CORE" (vid=1b1c, pid=c1c) "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#8&311d48f2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" status b= 0
2021-02-15 00:11:26.111 I cue.devices: End attaching to "Commander CORE" (vid=1b1c, pid=c1c) "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#8&311d48f2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" status a= 0
2021-02-15 00:11:26.111 I cue.devices: Created new device"Commander CORE" (vid=1b1c, pid=c1c); ready:false
2021-02-15 00:11:26.671 I cue.sys_info.win: Info: prop=Caption class=Win32_PnpEntity returned=false
2021-02-15 00:11:26.734 I cue.sys_info.win: Info: prop=DeviceID class=Win32_PnpEntity returned=false
2021-02-15 00:11:27.305 I cue.sys_info.win: Info: prop=Name class=Win32_PnpEntity returned=false
2021-02-15 00:11:27.891 I cue.sys_info.win: Info: prop=Manufacturer class=Win32_PnpEntity returned=false
2021-02-15 00:11:27.944 I cue.sys_info.win: Info: prop=Service class=Win32_PnpEntity returned=false
2021-02-15 00:12:29.303 I cue.hid_device_detector: "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#8&311d48f2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" removed.
2021-02-15 00:12:29.303 I cue.hid_device_detector: Add close task: "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#8&311d48f2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"
2021-02-15 00:12:29.304 I cue.hid_device_detector: "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#8&311d48f2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" closed.
2021-02-15 00:12:29.304 I cue.hid_device_detector: Mark all tasks as finished.

I will continue investigating.

@z0rlac
Copy link

z0rlac commented Feb 15, 2021

Is there anything I can help with? I exported my system info and logs. Under the "Corsair Devices" in SystemInfo.txt I have these two entries:

Device name : Corsair CORSAIR iCUE Commander CORE (serial number removed)
Status : DeviceConnected (0x1)
Working speed : High Speed (0x2)
Connected to : USB xHCI Compliant Host Controller ? Root Hub ? Port 5
USB VID : 0x1b1c
USB PID : 0xc1c
Hub driver : Standard, USB 3.0
Device supports USB 3.0 :
Device support flags :
Port protocol support :

--

Device name :
Status : DeviceConnected (0x1)
Working speed : Full Speed (0x1)
Connected to : USB xHCI Compliant Host Controller ? Root Hub ? Port 5
USB VID : 0x1b1c
USB PID : 0x1c05
Hub driver : Standard, USB 3.0
Device supports USB 3.0 :
Device support flags :
Port protocol support :

@JoseArtunedo
Copy link
Author

JoseArtunedo commented Feb 15, 2021

Thanks for sharing. I'm a little lost. Maybe for @Legion2 knows better**

For this device I keep getting this.

Device name : Corsair CORSAIR iCUE Commander CORE
USB VID: 0x1b1c
USB PID: 0xc1c

2021-02-15 13:42:29.659 I cue.devices: Begin attaching to "Commander CORE" (vid=1b1c, pid=c1c) "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#8&311d48f2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" status b= 0
2021-02-15 13:42:29.659 I cue.sys_info.win: Info: prop=Manufacturer class=Win32_DiskDrive returned=false
2021-02-15 13:42:29.659 I cue.devices: End attaching to "Commander CORE" (vid=1b1c, pid=c1c) "\\\\?\\hid#vid_1b1c&pid_0c1c&mi_02#8&311d48f2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" status a= 0
2021-02-15 13:42:29.659 I cue.devices: Created new device"Commander CORE" (vid=1b1c, pid=c1c); ready:false
2021-02-15 13:42:29.666 I cue.sys_info.win: Info: prop=Size class=Win32_DiskDrive returned=false
2021-02-15 13:42:30.250 I cue.sys_info.win: Info: prop=Caption class=Win32_PnpEntity returned=false
2021-02-15 13:42:30.304 I cue.sys_info.win: Info: prop=DeviceID class=Win32_PnpEntity returned=false

Also try this device, and it does recognize it
Device name : HX750i (Power supply)

USB VID: 0x1b1c
USB PID: 0x1c05
image

@z0rlac
Copy link

z0rlac commented Feb 15, 2021

Ah yes, I do have HX750i installed and connected via USB, so we can be sure that is not the PID for the Commander Core

@cnn123666
Copy link

Device Information
Device Manufacturer: Corsair
Product Name: CORSAIR iCUE Commander CORE
Serial Number: a20a30705ecb3abad56b36f52091005f
USB Version Supported: 2.00
USB Device Speed: USB 2.0 High-speed
Driver Description: USB Composite Device
Hardware ID: USB\VID_1B1C&PID_0C1C

Driver Information
Driver Manufacturer: (标准 USB 主控制器)
Driver Description: USB Composite Device
Driver Provider: Microsoft
Driver Version: 10.0.19041.488
Driver Date: 21-Jun-2006
DeviceInstanceId USB\VID_1B1C&PID_0C1C\A20A30705ECB3ABAD56B36F52091005F
Location Paths PCIROOT(0)#PCI(0801)#PCI(0003)#USBROOT(0)#USB(1)
微信截图_20220211194339

@Legion2 Legion2 added help wanted Extra attention is needed and removed question Further information is requested labels Feb 11, 2022
@Spegs21
Copy link
Contributor

Spegs21 commented Feb 16, 2022

I added the information in my latest PR #270. It still won't show; I'm guessing we are missing new commands that iCue is sending to it or it doesn't like the device ID.

I'd like to get the info for a Commander Core XT as it doesn't have the integrated pump controller and would probably be easier to support.

@Spegs21
Copy link
Contributor

Spegs21 commented Feb 24, 2022

If I try to configure a Commander Pro by changing the TinyUSB sketch from CORSAIR_LIGHTING_NODE_PRO to CORSAIR_COMMANDER_PRO it doesn't show in iCue with a Pico. I still need to try modifying the command pro sketch for TinyUSB to see if it works. This leads me to believe that simply changing PIDs is not enough to get something to show up. @Legion2 when you tested this here did you use the commander pro sketch?

@Legion2
Copy link
Owner

Legion2 commented Feb 24, 2022

I don't know which sketch I used. You must use the commander pro sketch, because it has more commands, which need to exist else icue will not detect the device

@Spegs21
Copy link
Contributor

Spegs21 commented Feb 27, 2022

DEVICE DESCRIPTOR
    bLength: 18
    bDescriptorType: 0x01 (DEVICE)
    bcdUSB: 0x0200
    bDeviceClass: Device (0x00)
    bDeviceSubClass: 0
    bDeviceProtocol: 0 (Use class code info from Interface Descriptors)
    bMaxPacketSize0: 64
    idVendor: Corsair (0x1b1c)
    idProduct: Unknown (0x0c1c)
    bcdDevice: 0x0100
    iManufacturer: 1
    iProduct: 2
    iSerialNumber: 3
    bNumConfigurations: 1

CONFIGURATION DESCRIPTOR
    bLength: 9
    bDescriptorType: 0x02 (CONFIGURATION)
    wTotalLength: 66
    bNumInterfaces: 2
    bConfigurationValue: 1
    iConfiguration: 0
    Configuration bmAttributes: 0xc0  SELF-POWERED  NO REMOTE-WAKEUP
        1... .... = Must be 1: Must be 1 for USB 1.1 and higher
        .1.. .... = Self-Powered: This device is SELF-POWERED
        ..0. .... = Remote Wakeup: This device does NOT support remote wakeup
    bMaxPower: 50  (100mA)

INTERFACE DESCRIPTOR (0.0): class HID
    bLength: 9
    bDescriptorType: 0x04 (INTERFACE)
    bInterfaceNumber: 0
    bAlternateSetting: 0
    bNumEndpoints: 2
    bInterfaceClass: HID (0x03)
    bInterfaceSubClass: No Subclass (0x00)
    bInterfaceProtocol: 0x00
    iInterface: 0

HID DESCRIPTOR
    bLength: 9
    bDescriptorType: 0x21 (HID)
    bcdHID: 0x0100
    bCountryCode: Not Supported (0x00)
    bNumDescriptors: 1
    bDescriptorType: HID Report (0x22)
    wDescriptorLength: 34

ENDPOINT DESCRIPTOR
    bLength: 7
    bDescriptorType: 0x05 (ENDPOINT)
    bEndpointAddress: 0x84  IN  Endpoint:4
        1... .... = Direction: IN Endpoint
        .... 0100 = Endpoint Number: 0x4
    bmAttributes: 0x03
        .... ..11 = Transfertype: Interrupt-Transfer (0x3)
    wMaxPacketSize: 768
        ...0 0... .... .... = Transactions per microframe: 1 (0)
        .... ..11 0000 0000 = Maximum Packet Size: 768
    bInterval: 1

ENDPOINT DESCRIPTOR
    bLength: 7
    bDescriptorType: 0x05 (ENDPOINT)
    bEndpointAddress: 0x04  OUT  Endpoint:4
        0... .... = Direction: OUT Endpoint
        .... 0100 = Endpoint Number: 0x4
    bmAttributes: 0x03
        .... ..11 = Transfertype: Interrupt-Transfer (0x3)
    wMaxPacketSize: 1024
        ...0 0... .... .... = Transactions per microframe: 1 (0)
        .... ..00 0000 0000 = Maximum Packet Size: 0
    bInterval: 1

INTERFACE DESCRIPTOR (1.0): class HID
    bLength: 9
    bDescriptorType: 0x04 (INTERFACE)
    bInterfaceNumber: 1
    bAlternateSetting: 0
    bNumEndpoints: 1
    bInterfaceClass: HID (0x03)
    bInterfaceSubClass: No Subclass (0x00)
    bInterfaceProtocol: 0x00
    iInterface: 0

HID DESCRIPTOR
    bLength: 9
    bDescriptorType: 0x21 (HID)
    bcdHID: 0x0100
    bCountryCode: Not Supported (0x00)
    bNumDescriptors: 1
    bDescriptorType: HID Report (0x22)
    wDescriptorLength: 21

ENDPOINT DESCRIPTOR
    bLength: 7
    bDescriptorType: 0x05 (ENDPOINT)
    bEndpointAddress: 0x83  IN  Endpoint:3
        1... .... = Direction: IN Endpoint
        .... 0011 = Endpoint Number: 0x3
    bmAttributes: 0x03
        .... ..11 = Transfertype: Interrupt-Transfer (0x3)
    wMaxPacketSize: 768
        ...0 0... .... .... = Transactions per microframe: 1 (0)
        .... ..11 0000 0000 = Maximum Packet Size: 768
    bInterval: 1

The commands are 1024 bytes and the responses are 768 bytes. The commands appear to be encrypted, they do not follow the same patterns as supported devices and I see no discernable patterns.

OpenRGB actually has a controller implementation.

@cnn123666
Copy link

20220409164301
20220409164252
The Commander core and Commander coreXT
I think Commander core and Commander coreXT have the same hardware, and Commander core can write to Commander coreXT firmware.
Commander Core has a cold head interface, which contains PWM, temperature probe (monitoring water temperature), light, ID (used to identify the model of water cooling radiator)
Commander Core XT has a small board attached to it, which brings out the temperature probe, light, and ID.

@JoseArtunedo
Copy link
Author

JoseArtunedo commented Apr 9, 2022

These images are very interesting to see how these products are designed, although it is not necessary (in quotes)

Here the important thing is to know the ID of each device (As recognized by windows and the iCue software) So that when using the arduino, said ID is the same and iCue can be fooled and access the functionalities of these devices, without that ID, the device will not appear in iCue.

If it is true that when we see these images we can see what it does, and thus add the functions when creating an emulate a project.

At the moment the Commander Core ID has been obtained; but could not "emulate so that it appears in iCue"
I don't know if the Commander Core XT ID is known; could you share it to try (at the beginning of this question you can see how to get it)
For Commander Pro, there is already a project that works and is recognizable in iCue

@Spegs21
Copy link
Contributor

Spegs21 commented Apr 9, 2022

These images are very interesting to see how these products are designed, although it is not necessary (in quotes)

Here the important thing is to know the ID of each device (As recognized by windows and the iCue software) So that when using the arduino, said ID is the same and iCue can be fooled and access the functionalities of these devices, without that ID, the device will not appear in iCue.

If it is true that when we see these images we can see what it does, and thus add the functions when creating an emulate a project.

At the moment the Commander Core ID has been obtained; but could not "emulate so that it appears in iCue" I don't know if the Commander Core XT ID is known; could you share it to try (at the beginning of this question you can see how to get it) For Commander Pro, there is already a project that works and is recognizable in iCue

Unfortunately, it's a bit more complicated than that. The protocol is completely different for these devices. I've used Wireshark to sniff the HID packets to and from my Command Core and it doesn't look anything the controller implementation in the repo. I've been able to decode some of the commands and values but I haven't had much time to work on it.

Additionally, these devices use a microcontroller with USB High-Speed capability, now confirmed thanks to @cnn123666 . This is evident in the packet size I posted above as well as Full-Speed maxes out at 64 bytes per HID packet for interrupt transfers. No Arduinos and few third-party boards support HS. I think we can still get most of the functionality because it doesn't seem like it uses much of the packet but a lot of work still needs done on figuring out the protocol.

@cnn123666
Copy link

@JoseArtunedo Is this what you want?
Device Information
Device Manufacturer: Corsair
Product Name: CORSAIR iCUE COMMANDER CORE XT
Serial Number: d10f20a08ac184aa6c3a0c065091005f
USB Version Supported: 2.00
USB Device Speed: USB 2.0 High-speed
Driver Description: USB Composite Device
Hardware ID: USB\VID_1B1C&PID_0C2A

Driver Information
Driver Manufacturer: (Standard USB Host Controller)
Driver Description: USB Composite Device
Driver Provider: Microsoft
Driver Version: 10.0.19041.488
Driver Date: 21-Jun-2006
DeviceInstanceId USB\VID_1B1C&PID_0C2A\D10F20A08AC184AA6C3A0C065091005F
Location Paths PCIROOT(0)#PCI(1A00)#USBROOT(0)#USB(1)#USB(6)#USB(3)

@cnn123666
Copy link

This is used when ICUE is not started (CORSAIR ICUE COMMANDER CORE XT)
Device Information
Device Manufacturer: Corsair
Product Name: Corsair, PID=1D0B
Serial Number: -
USB Version Supported: 2.00
USB Device Speed: USB 2.0 High-speed
Driver Description: USB Composite Device
Hardware ID: USB\VID_1B1C&PID_0C2A

Driver Information
Driver Manufacturer: (Standard USB Host Controller)
Driver Description: USB Composite Device
Driver Provider: Microsoft
Driver Version: 10.0.19041.488
Driver Date: 21-Jun-2006
DeviceInstanceId USB\VID_1B1C&PID_0C2A\D10F20A08AC184AA6C3A0C065091005F
Location Paths PCIROOT(0)#PCI(1A00)#USBROOT(0)#USB(1)#USB(6)#USB(3)

@cnn123666
Copy link

This is used when ICUE is not started (CORSAIR ICUE COMMANDER CORE )
Device Information
Device Manufacturer: Corsair
Product Name: Corsair, PID=1D0B
Serial Number: -
USB Version Supported: 2.00
USB Device Speed: USB 2.0 High-speed
Driver Description: USB Composite Device
Hardware ID: USB\VID_1B1C&PID_0C1C

Driver Information
Driver Manufacturer: (Standard USB Host Controller)
Driver Description: USB Composite Device
Driver Provider: Microsoft
Driver Version: 10.0.19041.488
Driver Date: 21-Jun-2006
DeviceInstanceId USB\VID_1B1C&PID_0C1C\E00800207C8A5ABA2DD366F53091005F
Location Paths PCIROOT(0)#PCI(1400)#USBROOT(0)#USB(3)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

6 participants