Open audiohacked opened 4 years ago
First of all, let me thank you for working on this project and spending valuable time and energy developing this. This project has been quite useful as an example of what Corsair protocols look like and as a starting point for hacking on my own device.
I think that there is a place for both liquidctl and OpenCorsairLink. In my opinion, a resource lightweight (memory and cpu wise) tool that is easily embedded in any other language is a valuable thing.
In your opinion, what is the amount of time needed for reverse engineering the different protocols vs actually implementing support?
Should we maybe, as a community, get a little bit more vocal asking from Corsair to open their protocol? As both consumers and power-users, I think we should try to nudge the company for more support, especially opening up their protocol which would benefit both liquidctl and other projects like OpenCorsairLink
Thanks again!
Using Windows and Wireshark, I can sort of figure out a protocol and almost fully map status, fan, and LED packets after about 3 days. And at least for me, I can see the patterns in the Wireshark dumps, but I also need to have direct interaction with iCUE and the hardware. The hardest part is finding motivation to do it.
Actually implementing support doesn't take much time either; maybe about the same amount of time. Again, the hardest part is finding motivation to do it.
I wanted to say thanks for all the hard work you've put it. I just started my adventure into AIO coolers and picked a Corsair product specifically because this this tool existed.
Sadly while this tool can read the values of the 115i platinum, liquidctl cannot yet (though some work looks to have been started).
Have fun on whatever it is you do next!
@wispoffates I have a branch that should allow liquidctl to read reliably the 115i platinum.
I was very glad to see that unfortunately it did not work for me. It detects the device but liquidctl status sends a packet and hangs. But no worries its a work in progress and I'm glad its even that far along.
Edit: Disregard... I'm an idiot and was using the branch on liquidctl and not your branch, The branch on liquidctl doesn't work but yours looks a lot more complete. Thanks for the heads up!
Edit#2:
~/g/liquidctl corsair-platinum-coolers sudo liquidctl status 303ms Wed 10 Jun 2020 06:35:44 PM EDT
Corsair H115i Platinum (experimental)
├── Liquid temperature 28.1 °C
├── Fan 1 speed 472 rpm
├── Fan 2 speed 486 rpm
├── Pump speed 2480 rpm
└── Firmware version 1.1.15
Looks amazing!
Sad news that this project is being closed. Thank you a lot for your work, controlling the fan speed works well but have not figured out the LEDs yet. Will all features of OpenCorsairLink be migrated into liquidctl in the end or will the features of the tools not overlap?
@Solarer I plan on migrating as much of OpenCorsairLink as I can into liquidctl
Those who want to help port drivers to liquidctl may find liquidctl#129 (comment) to be helpful as a first guide. Please also feel free to open issues and ask questions.
@audiohacked and all others that have contributed to OpenCorsairLink, thank you!
Not only you have helped the open-source community in general, but you were also responsible for me having faith that, if I needed, I would be able to write the tools and drivers for the devices I wanted to get.
(Which turned out to be the case, and that eventually led to liquidctl).
On June 6th 2020, I decided to retire OpenCorsairLink as explained in the
README.md
. I also set the Project to Read-Only/Archived. This morning I realized I would like to collect/merge any and all branches for posterity and as a resource. I'd like to Archive this project by January 1st 2021 and move future development to liquidctl. I believe python is fast/mature enough and liquidctl has a great framework for supporting Corsair products on Linux.There are several changes and improvements I would like to make to OpenCorsairLink, but they might become breaking and full API changes.
I'd really appreciate some thoughts and comments on the project.