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

Reboot Hydro Platinum device when reads fail #80

Closed
EvanMulawski opened this issue Aug 18, 2023 · 80 comments
Closed

Reboot Hydro Platinum device when reads fail #80

EvanMulawski opened this issue Aug 18, 2023 · 80 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@EvanMulawski
Copy link
Owner

EvanMulawski commented Aug 18, 2023

From #76, #78, #127, #130

When a Hydro Platinum device read fails multiple times, iCUE reboots the device:

https://forum.corsair.com/forums/topic/176494-corsair-h100i-platinum-se-randomly-stops-and-restarts/
https://forum.corsair.com/forums/topic/171275-hydro-h100i-connectingdisconnecting/

Implement reboot logic when a read fails by sending the reboot packet.

Notes:

@EvanMulawski
Copy link
Owner Author

@jflevesque @Profetorum @BrendanMan3 @larz101 Please try the attached build. This will attempt to reboot the Hydro Platinum device if reads start failing (just like iCUE does). If the device reboots, the latest CorsairLink.log file will have "Rebooting device" followed by a read of the device state. Thanks!

FanControl.CorsairLink-HydroPlatinumReboot-v20231223r001.zip

@BrendanMan3
Copy link

CorsairLink.log

@EvanMulawski
Copy link
Owner Author

@BrendanMan3 Do you have any other software running that is communicating with the device (iCUE, Corsair Service, OpenRGB, SignalRGB, monitoring software, etc.)?

@BrendanMan3
Copy link

CorsairLink.log
log.txt
Corsair looks to all have been shut down. The logs I just sent were after running fine for a few minutes.

I was running signal RGB. I'm testing now with it disabled.

@BrendanMan3
Copy link

I can run SignalRGB with the H115i disabled and fan control has not (yet) thrown any errors.

@Profetorum
Copy link

Profetorum commented Dec 24, 2023

@jflevesque @Profetorum @BrendanMan3 @larz101 Please try the attached build. This will attempt to reboot the Hydro Platinum device if reads start failing (just like iCUE does). If the device reboots, the latest CorsairLink.log file will have "Rebooting device" followed by a read of the device state. Thanks!

FanControl.CorsairLink-HydroPlatinumReboot-v20231223r001.zip

CorsairLink.log
Still erroring out. I think it actually rebooted the pump or something, since the pump lights blinked, but apparently it didn't do much.
Only using hwinfo, no other conflicting softwares afaik

@EvanMulawski
Copy link
Owner Author

@BrendanMan3 What version of SignalRGB? Compatibility with Hydro Platinum devices requires SignalRGB 2.3.45-beta or later.

@EvanMulawski
Copy link
Owner Author

@Profetorum Thanks. I think I need to close and reopen the device after rebooting - will have another build soon.

@EvanMulawski
Copy link
Owner Author

New build.

FanControl.CorsairLink-HydroPlatinumReboot-v20231224r001.zip

@Profetorum
Copy link

New build.

FanControl.CorsairLink-HydroPlatinumReboot-v20231224r001.zip

Going to download it.
Not sure when i'll report back though since tomorrow i won't be much at my pc, and i can't force-reproduce the issue
(Merry christmas btw :) )

@BrendanMan3
Copy link

I'll give the new build a try.

I am using SignalRGB 2.3.47-beta.

So far no errors on build from yesterday as long as H115i is disabled in SignalRGB. As soon as it is enabled in SignalRGB I start to get errors and when I restart fan control it doesn't detect any of the corsair products.

@Profetorum
Copy link

Profetorum commented Dec 24, 2023

New build.

FanControl.CorsairLink-HydroPlatinumReboot-v20231224r001.zip

CorsairLink.log
Ok it was surprisingly quick!

Errored out again - can't tell if it restarted the pump, haven't noticed

@EvanMulawski
Copy link
Owner Author

New build.

FanControl.CorsairLink-HydroPlatinumReboot-v20231224r002.zip

@BrendanMan3
Copy link

Errors detected using 24r002 build while the H115i is enabled in SignalRGB - Will test with it disabled.
CorsairLink.log

@BrendanMan3
Copy link

With the H115i disabled in Signal RGB I have not had any issues after 6 hours of running.

@EvanMulawski
Copy link
Owner Author

New build. Still trying to successfully reboot the device.

FanControl.CorsairLink-HydroPlatinumReboot-v20231227r001.zip

@Profetorum
Copy link

Profetorum commented Dec 27, 2023

Going to download this one as well.
Haven't had a pump failure with the previous build, it never restarted. So I can't tell if it was working.

Going to report back next time it tries to restart the pump

@chjohans
Copy link

I too get errors with my H115i when running SignalRGB, the latest beta v 2.3.47-beta. If I disable the H115i in SignalRGB everything works just fine. I'm running HWiNFO64 as well, and it too looses the H115i sensore readings when this happens. This makes me question if the CorsairLink mutex implementation for Corsair Pro/Platinium AiOs they supposedly implemented in v 2.3.45-beta is working as intended: https://docs.signalrgb.com/changelogs/2-3-45

So I don't think the issue is with this plugin.

I've not had much luck in communicating with SignalRGB support in the past (I'm only a "free" user).

If you @EvanMulawski has communicated with them re the CorsairLink Mutex in the past then maybe you have a better channel to give them feedback on this?

@EvanMulawski
Copy link
Owner Author

@chjohans Can you attach your latest CorsairLink.log file? I'm thinking it could just be an inherent issue with the AIO's microcontroller and/or firmware - which is why iCUE has logic built-in to reboot these devices when it can no longer read from them.

@Meh7991
Copy link

Meh7991 commented Jan 19, 2024

@Heal-Bot Hopefully these changes will make it into an upcoming build of SingalRGB. Without these changes, I can't use SignalRGB without quickly running into issues that require a reboot.

Same here - this plugin (the new, edited Platinum_Pro_XT_Elite_AIO.js) now makes my H150i Pro XT sync perfectly with everything else, crash-free! Being included by default in a future SignalRGB patch would be perfect so as we don't need to go in and overwrite the original plugins every time.

@Meh7991
Copy link

Meh7991 commented Jan 19, 2024

Just had something strange happen. I noticed the FanControl error message was popping up every minute or so.
I thought I would check if the H150i fans are responding in FanControl and they... Were not 😟

My log file was updating near enough every second:
CorsairLink.zip

And this is my console log from SignalRGB:
image

The lighting is also not updating with SignalRGB.

I haven't tampered with anything whatsoever, literally been using the same setup for the past few days since my other comment above.

Edit: My PC needs to be power cycled as iCUE isn't reading the cooler.

@EvanMulawski
Copy link
Owner Author

New build. This changes the checksum failure logs to Warning but internally counts them as read failures - three read failures in a row will trigger a reboot.

Note: if a reboot fails, there isn't anything that can be done on the software/OS side - the device needs a power cycle (disconnecting/reconnecting the SATA power - disconnecting/reconnecting USB is not enough at that point).

FanControl.CorsairLink-HydroPlatinumReboot-v20240121r001.zip

@Meh7991
Copy link

Meh7991 commented Jan 21, 2024

Using the new build, after about an hour of running I heard a USB disconnect sound in Windows. I looked around my PC and saw my cooler was still updating with my RGB effect set in SignalRGB, but the centre of it was flickering in rainbow colours.

Here is my log file:
CorsairLink.zip

FanControl was still updating the fan speeds and all the lighting (except the centre) was working as intended - and I did not need to power cycle my system, simply exiting FC and SRGB and starting the Corsair Service fixed it.

For now, I have reverted to the previous build (v20240112r001).

@EvanMulawski
Copy link
Owner Author

@Meh7991 Can you try the v20240121r001 build again but ensure the Corsair Service is stopped and disabled? Using that should not be necessary. I'm not sure why the lighting would only be partially working - if it happens again, take a screenshot of the SignalRGB logs and try just a restart of SignalRGB.

@Meh7991
Copy link

Meh7991 commented Jan 21, 2024

While I was using v20240121r001, I definitely had the Corsair Service disabled and stopped. I had to go into services and manually set it to "automatic" and "start" it when it happened earlier in order to fix it.
It's definitely stopped and disabled now.

I would have sent a screenshot of my SRGB log, but I checked it and there was nothing alarming in there - just the standard fan and pump logs.

I will re-install the new build and set it up again early tomorrow, and report back again if it happens (or anything else happens).

@EvanMulawski
Copy link
Owner Author

@Meh7991 Thanks. According to your log, the device rebooted as expected after three consecutive read failures (hence the USB notification sounds). Thinking about it more, I might know why starting the Corsair Service fixed the lighting issue - I'll do some more testing on my end.

@Meh7991
Copy link

Meh7991 commented Jan 21, 2024

Just come across another strange interaction...
I just downloaded a game from my Steam library, it installed perfectly, but when I launch it, after a couple of seconds FanControl pops up with that error again.

Look at the amount of logs that happen while I have the game running:
CorsairLink.zip
22:23:20 is when I first launched the game. Using the old plugin build (v20240112r001).

CorsairLink.zip
This is the log with the new build (v20240121r001).

image
And this is a screenshot of my SRGB log with the new plugin build (v20240121r001).

I exited the game and re-launched it three times (the first attached log), and every single time is the same.
As soon as I close the game, the logging stops. All lighting works, but the fan speeds don't update when I have game running.
Not sure if this would be a FC problem, plugin issue, a problem with the game, or something else?
Is there any way of narrowing the source down further?

I am able to play any other game perfectly fine, it's literally just this one which is very strange.

The problematic game is Crash Bandicoot N Sane Trilogy. Screw me I guess for wanting some childhood nostalgia tonight 😭

@EvanMulawski
Copy link
Owner Author

@Meh7991 That is very interesting. Can you perform a packet capture when able? I need to see if the game is attempting to communicate with the Corsair device.

Procedure:

  1. Follow step 1 of the USB packet capture instructions.
  2. Exit Fan Control and SignalRGB.
  3. Follow step 2 of the USB packet capture instructions.
  4. Launch the game. Wait about a minute.
  5. Follow step 5 of the USB packet capture instructions.

@Meh7991
Copy link

Meh7991 commented Jan 22, 2024

@EvanMulawski Hopefully I did that capture properly!
I exited FanControl and SignalRGB, left Corsair Service as "disabled" and it was not started. I did not open iCUE (assuming I only had to follow steps 1, 2 and 5).

I opened the game around 10:10, played around for a bit and then quit near to 10:12.

CrashBandicootTrilogyCapture.zip

Let me know if I need to provide anything else.

Side note, I re-installed the new build (v20240121r001) and the exact same thing happened after a while with the lighting. Again, nothing noteworthy in SRGB logs.

@EvanMulawski
Copy link
Owner Author

@Meh7991 Looks like as soon as you started the game at 10:10 it began spamming the device with requests for its Product Name.

image
image

The game is requesting it continuously:

image

This is likely causing issues reading from the device. You will have to contact the game developer about it.

@Meh7991
Copy link

Meh7991 commented Jan 23, 2024

Hmm is it common for games to do this, do you know?
I don't really see it having a need to spam it endlessly - it's an offline platforming game 😂 I can maybe understand it if it's a triple-A, open-world, extreme realism game, but this?!

Thanks for checking it for me though!

@chjohans
Copy link

I have had 2 updates for SingalRGB and I didn't repløaced the plugin with the one from @EvanMulawski, so I guess the SignalRGB devs have fixed the timeout values. It's working great now so thanks to all that contributed to this!

@Meh7991
Copy link

Meh7991 commented Jan 26, 2024

I have had 2 updates for SingalRGB and I didn't repløaced the plugin with the one from @EvanMulawski, so I guess the SignalRGB devs have fixed the timeout values. It's working great now so thanks to all that contributed to this!

Yeah, SignalRGB now includes the changes to the plugin that were made here, as per the release notes 😁

@chjohans
Copy link

chjohans commented Jan 26, 2024

Thanks, good to know. Hope this now works as well for you all as it does for me. And please consider buying @EvanMulawski a coffee for his effort with this excellent plugin! :)

I would have supported the SignalRGB project too if they only allowed me to buy a perpetual license, I'm not doing the "software rental" crap!

@EvanMulawski
Copy link
Owner Author

Yeah, SignalRGB now includes the changes to the plugin that were made here, as per the release notes 😁

Great news! I'll be posting an official 1.6 beta release soon - hopefully this weekend.

@Meh7991
Copy link

Meh7991 commented Jan 26, 2024

@Meh7991 Thanks. According to your log, the device rebooted as expected after three consecutive read failures (hence the USB notification sounds). Thinking about it more, I might know why starting the Corsair Service fixed the lighting issue - I'll do some more testing on my end.

Btw, did you figure out what the cause for this was?
I tried the most recent build again yesterday and the lighting still glitched out after a while.

@EvanMulawski
Copy link
Owner Author

@Meh7991 Please try the attached build.

FanControl.CorsairLink-HydroPlatinumReboot-v20240126r001.zip

@Meh7991
Copy link

Meh7991 commented Jan 27, 2024

@Meh7991 Please try the attached build.

FanControl.CorsairLink-HydroPlatinumReboot-v20240126r001.zip

So far, so good after 1 hour of use!
Will keep an eye on it for the rest of the day and report back later tonight (or before if anything goes wrong).

@Meh7991
Copy link

Meh7991 commented Jan 27, 2024

@EvanMulawski Hopefully I did that capture properly! I exited FanControl and SignalRGB, left Corsair Service as "disabled" and it was not started. I did not open iCUE (assuming I only had to follow steps 1, 2 and 5).

I opened the game around 10:10, played around for a bit and then quit near to 10:12.

CrashBandicootTrilogyCapture.zip

Let me know if I need to provide anything else.

Side note, I re-installed the new build (v20240121r001) and the exact same thing happened after a while with the lighting. Again, nothing noteworthy in SRGB logs.

Just did some more testing on this...

It seems, both FanControl and this plugin works perfectly fine when I run the game and I have SignalRGB closed.
If I have both FC and SRGB running when I launch the game, the device bugs out.
If I have FC closed and SRGB running when I launch the game, it still bugs out. SRGB logs contain a bunch of errors and warnings.

Could anything further be done to the SRGB device plugin to rectify this, or would it be too much work and/or tricky to pinpoint what to change?

I'm not asking for more changes to be added to the public release for the SRGB plugin, I'm more than happy to overwrite the file manually after every update if it means everything works for me! 😁

Of course though, @EvanMulawski, don't go out of your way for this - if it comes to it, when I want to play it I will just settle with closing SRGB, but if it turns out to be a simple fix.. 🤩
Although, I don't know if anything could be done as the game spams requests to the device, as you mentioned above.

@Meh7991
Copy link

Meh7991 commented Jan 27, 2024

@EvanMulawski, this happened after several hours of constant use.
20240127_220924.jpg

All lighting set to a dim white colour, no errors or anything, got a couple of those checksum failures in the CorsairLink log.

Restarting SRGB didn't fix it, I had to exit both FC and SRGB, start Corsair Service then stop and re-open both apps again.

@EvanMulawski
Copy link
Owner Author

@EvanMulawski, this happened after several hours of constant use.

All lighting set to a dim white colour, no errors or anything, got a couple of those checksum failures in the CorsairLink log.

Restarting SRGB didn't fix it, I had to exit both FC and SRGB, start Corsair Service then stop and re-open both apps again.

Hmmm, if it happens again, can you perform a USB packet capture just before starting the Corsair Service (capture can be stopped as soon as the lighting is fixed)?

@Meh7991
Copy link

Meh7991 commented Jan 27, 2024

Will do - after I quit SRGB just now, the lighting changed from the blue above to flickering in all rainbow colours, working fine at the moment.

But yeah, if/when it does it again, I'll get a capture.

@Meh7991
Copy link

Meh7991 commented Jan 27, 2024

I was just watching a video on YouTube, barely any apps running in the background (nothing more than usual) and I heard a USB disconnect sound.
I saw the cooler lighting freeze and then rectify itself after about 5 seconds. Its fans' RPM in FC were slowly ramping back up from 0RPM to the value they should be set to (around 1000RPM) so it was definitely the cooler that "disconnected".

Nothing in any logs, but I've attached my latest log file (I deleted the log after I fixed the lighting in my previous message, so this only has like 30 minutes worth of logs):
CorsairLink.zip

It's all be working perfectly fine up until tonight! Why is this device so finnicky?!

@EvanMulawski
Copy link
Owner Author

I was just watching a video on YouTube, barely any apps running in the background (nothing more than usual) and I heard a USB disconnect sound. I saw the cooler lighting freeze and then rectify itself after about 5 seconds. Its fans' RPM in FC were slowly ramping back up from 0RPM to the value they should be set to (around 1000RPM) so it was definitely the cooler that "disconnected".

Nothing in any logs, but I've attached my latest log file (I deleted the log after I fixed the lighting in my previous message, so this only has like 30 minutes worth of logs): CorsairLink.zip

It's all be working perfectly fine up until tonight! Why is this device so finnicky?!

That is "expected" behavior - the device will be instructed to reboot when three read failures occur in a row. iCUE does the same thing. It's caused by a hardware or firmware issue and the reboot is just a workaround to get it back in a good state.

@Meh7991
Copy link

Meh7991 commented Jan 27, 2024

Ahh yes, I remember you mentioning that a while ago.

Thought I'd mention it, unexpected USB sounds scare me lol...

I'll try and keep my PC running for most of tomorrow and if I'm able to, I'll send that USB capture.

@EvanMulawski
Copy link
Owner Author

Closing this as completed in v1.6.0-beta.1 as the reboot feature is done.

@Meh7991 Please open a new issue when you get that capture.

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

No branches or pull requests

6 participants