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
Corsair H110i #664
Comments
thanks, i didn't read that bug number and PR :) also how can i help? should i start as described in the article and porting the device ex novo or i build on top that pr? |
You'll be almost certainly better building on top of that PR, since (IIRC the OpenCorsairLink code) those devices are all super similar. Besides any specific changes needed for the non GT model, you'll likely need to fix the bug that PR is currently stuck on. Otherwise it should be fairly straightforward, I hope. |
Ping: @Serphentas |
i see, thanks for the fast answer, i will have a look this evening :) i have just given a quick try on my machine, the driver
|
Sorry I didn't see the ping @jonasmalacofilho. I think OCL supports this device (non-GT) with the same driver, so perhaps we need fine tuning. @ciberkids are you able to run OCL from the start (to avoid the issues you noted) in debug mode, or possibly capture from Windows using Corsair's tool ? Thanks. |
i have seen a couple of commits and i tried with the latest release on my machine, now it seems to work correctly liquidctl-git 1.13.0.r70.01ef92f-1
|
Oh, we forgot to query the devices for their ID, and we're binding with any CoolIT device from that era. One way to fix this would be to add a custom I think a better way is for the driver to keep using the default Relevant OpenCorsairLink code for querying the device ID: int
corsairlink_coolit_device_id(
struct corsair_device_info* dev, struct libusb_device_handle* handle, uint16_t* device_id )
{
int rr;
uint8_t response[64];
uint8_t commands[64];
memset( response, 0, sizeof( response ) );
memset( commands, 0, sizeof( commands ) );
uint8_t ii = 0;
commands[++ii] = CommandId++; // Command ID
commands[++ii] = ReadOneByte; // Command Opcode
commands[++ii] = DeviceID; // Command data...
commands[0] = ii; // Length
rr = dev->lowlevel->write( handle, dev->write_endpoint, commands, 64 );
rr = dev->lowlevel->read( handle, dev->read_endpoint, response, 64 );
memcpy( device_id, response + 2, 1 );
dump_packet( response, sizeof( response ) );
return 0;
} |
Device type
AIO LIquid cooler
Product page
https://www.corsair.com/us/en/p/cpu-coolers/cw-9060026-ww/hydro-series-h110i-280mm-extreme-performance-liquid-cpu-cooler-cw-9060026-ww
First-party software
Icue
What monitoring functionality does the device support?
temperatures, fan/pump speeds or duty cycles
What configuration functionality does the device support?
fan/pump speeds or duty cycles, voltages, current or power limits
Physical connection
USB header
Connection protocol
USB
Additional information about the device
Can you help with implementing or testing the changes needed for liquidctl to support this device?
testing changes on Linux
The text was updated successfully, but these errors were encountered: