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

"CRC mismatch" error appearing in log for Hydro Platinum devices #47

Closed
EvanMulawski opened this issue May 22, 2023 · 41 comments
Closed
Assignees
Labels
bug Something isn't working or functioning as expected fixed Fix available in official release in-prerelease Available or fixed in a pre-release

Comments

@EvanMulawski
Copy link
Owner

EvanMulawski commented May 22, 2023

I can confirm that the "SendCommand CRC mismatch" happens even when OpenRGB is totally disabled, and every time my system wakes up from sleep.

Originally posted by @chjohans in #45 (comment)

22/5/2023 06:10:31: [CorsairLink] An exception occurred refreshing device 'H115iRGBPROXT (D288920C757645790248E957911BA8A2)' (\\?\hid#vid_1b1c&pid_0c21#b&1240a30f&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}):
22/5/2023 06:10:31: [CorsairLink] CorsairLink.CorsairLinkDeviceException: SendCommand CRC mismatch (device=H115iRGBPROXT (D288920C757645790248E957911BA8A2), data=1400FF05FFFFFFFFFF03FFFFFFFF5703FFFFFFFF5701FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF, writeBuf=003FC01400FF05FFFFFFFFFF03FFFFFFFF5703FFFFFFFF5701FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8, readBuf=00C120112000AC02F51B14035EE8035EA602035EE8035E060201BF0000BF07090000000000000000000000000000000000000000000000000000000000000000F7, readCrcByte=F7, readBufCrcResult=9B)
   at CorsairLink.HydroDevice.SendCommand(Byte command, ReadOnlySpan`1 data)
   at CorsairLink.HydroDevice.WriteCooling()
   at CorsairLink.HydroDevice.Refresh()
   at FanControl.CorsairLink.CorsairLinkPlugin.OnTimerTick(Object sender, ElapsedEventArgs e)
@EvanMulawski EvanMulawski self-assigned this May 22, 2023
@EvanMulawski EvanMulawski added the triage Issue has not yet been fully identified label May 22, 2023
@EvanMulawski EvanMulawski changed the title "SendCommand CRC mismatch" appearing in log for AIO devices "SendCommand CRC mismatch" appearing in log for Hydro devices May 22, 2023
@EvanMulawski
Copy link
Owner Author

@chjohans Is this issue still occurring?

@chjohans
Copy link

Yes, still happens every time my computer wakes from sleep.

@rabenv4ter
Copy link

Hi all,
I do have the same problem. But it does not happen when the system returns from hibernate - it happens while the system is running normally.
Until now I was not able to pinpoint a definitive triggerpoint, but I have to admit that I had OpenRGB running in parallel. For the time being I disabled OpenRGB.

If I can be of any assistance with tests or any information, please feel free to ask.

@EvanMulawski EvanMulawski changed the title "SendCommand CRC mismatch" appearing in log for Hydro devices "SendCommand CRC mismatch" appearing in log for Hydro Platinum devices Jul 22, 2023
@No-good-deed-goes-unpunished
Copy link

No-good-deed-goes-unpunished commented Aug 15, 2023

This happens to me every couple of hours as @ 15th August 2023. I have a h150i 360mm Corsair cooler and I get a popup message; Image here: https://ibb.co/BfpntXY

I recently updated the DLL from v1.2 and it started straight awy.
Log file attached.

CorsairLink.zip

I noticed that it seems to happen whenever there is an event that causes the fans to speed up. I have automated backups using Macrium Reflect and the times coincided with the times the backups run

@EvanMulawski
Copy link
Owner Author

EvanMulawski commented Aug 16, 2023

I am working on a potential fix for the sporadic occurrences of this issue in addition to #76 (comment) / #80.

@EvanMulawski EvanMulawski added troubleshooting Issue likely caused by external factors and removed triage Issue has not yet been fully identified labels Aug 16, 2023
@EvanMulawski EvanMulawski changed the title "SendCommand CRC mismatch" appearing in log for Hydro Platinum devices "CRC mismatch" error appearing in log for Hydro Platinum devices Aug 16, 2023
@Meh7991
Copy link

Meh7991 commented Aug 21, 2023

Hello, not sure if this is the right place to add this but I have kind of found a fix for the cooler randomly disconnecting.

If I run FanControl from the Start menu, then click yes on the UAC popup then it fails to load.
If I run FanControl from it's directory (mine is in my Downloads folder, run it as admin) then it loads perfectly first time, every time.

I haven't had the CorsairLink error pop up since I've been doing this either.

Thought I'd let you know!

Edit: after several hours of my PC running like this, the error message just popped up again and the cooler has disconnected. Of course it happens not even 30 minutes after I post this message!!

@EvanMulawski EvanMulawski added the in-prerelease Available or fixed in a pre-release label Aug 27, 2023
@EvanMulawski
Copy link
Owner Author

Mitigated in v1.4.0-beta.2

@Meh7991
Copy link

Meh7991 commented Aug 28, 2023

I just installed v1.4.0-beta.2 but it seems to have started a different issue.

I have two system tray icons set up (one for my CPU temp and one for my GPU temp), after about 5 or so minutes of it running, when I hover over the icons they disappear and it turns out FanControl is no longer running and Task Manager reports no instances of FanControl running either.
I can tell when this happens when the tray icons no longer change the temperature values.

I have tried running FanControl with and without the SiUSBXp DLL installed, it happens regardless.

I do not get any error messages popup when this happens, it just ends itself silently.

I am running V168 of FanControl.

Attached are all my log files - this issue has happened four or five times now. I have also included a desktop capture showing what happens when the above occurs (hopefully the capture plays after being zipped).

Logs & Desktop Capture.zip

@EvanMulawski
Copy link
Owner Author

@Meh7991 The logs indicate v1.4.0-beta.2 is not being used.

@Meh7991
Copy link

Meh7991 commented Aug 28, 2023

Well, I downloaded the beta.2 zip, unblocked it, deleted the old CorsairLink DLL in the Plugins folder and replaced it with the new one. Not sure if there's anything else I need to do?

Edit: also, I have reverted to the beta.1 and FanControl no longer ends itself. But, I get the "Multiple errors detected during this session" error message, as I did before.

@EvanMulawski
Copy link
Owner Author

EvanMulawski commented Aug 28, 2023

@Meh7991 In that case, the latest log file doesn't have anything concerning. Can you delete/move the current log files and enable debug logging when using v1.4.0-beta.2? To enable debug logging, set the FANCONTROL_CORSAIRLINK_DEBUG_LOGGING_ENABLED environment variable to 1 and restart Fan Control. (To set an environment variable, search for "env" in the Windows start menu and select "Edit environment variables for your account".)

@Meh7991
Copy link

Meh7991 commented Aug 28, 2023

Right, just did all that and attached is the only log file in my FanControl directory.
The same thing happened as I mentioned in my message above (with the screen capture logs).

I am going to revert to beta.1 again, and am going to delete the debug logging environment variable now.

log.zip

@EvanMulawski
Copy link
Owner Author

@Meh7991 Any errors in Event Viewer (Windows Logs > Application)?

@Meh7991
Copy link

Meh7991 commented Aug 28, 2023

These are the errors shown that occurred around the same time as my previous comment:
image
image
image

Here are the exports for them if you need that instead:
Event Viewer Logs.zip

@EvanMulawski
Copy link
Owner Author

@Meh7991 Should be fixed in v1.4.0-beta.3.

@Meh7991
Copy link

Meh7991 commented Aug 28, 2023

Well that seems to be fixed now, however I just got the "multiple errors detected" error message popup, here are my latest logs:
Log.zip

That is still the only log/txt file I have in my FanControl directory.

When this error popped up, I heard the USB disconnect sound and then the cooler's LEDs switched off, then after a few seconds the hardware lighting effect kicked in and it has been like that ever since. While it is like this, the fans ignore the curves set for them, I can see them spinning much slower than what they should be (as set in my curves).

Restarting FanControl seems to have made the fans respond again, but the cooler's LEDs are still on the hardware effect.

Not sure if it's related, but all this time I have been running SignalRGB in the background to control all my LEDs. I have already tried running FanControl with and without SignalRGB running, the "multiple errors" message popped up regardless.
I never have iCUE running, it's installed, I just never launch it.

No related events in Event Viewer.

@EvanMulawski
Copy link
Owner Author

EvanMulawski commented Aug 28, 2023

@Meh7991 I did notice that the Corsair Service was running in your screen recording. That may be causing this issue. Can you stop that service and set its startup type to Manual or Disabled?
image

@Meh7991
Copy link

Meh7991 commented Aug 28, 2023

I have set it to "Disabled", I have stopped it as well. I will restart my PC and will report back if anything is still playing up!

@Meh7991
Copy link

Meh7991 commented Aug 28, 2023

After doing the above, it seemed to be working fine but I just got the error popup again.
log.zip

CorsairService is still stopped.

Cooler's LEDs are off (in SignalRGB, I have everything set to be a dim white, with the "Bursts" effect) but the "Bursts" effect is still showing, it's just the white under-layer that has gone off, which is weird. This has happened many times in the past, not just this time.

At this time, the cooler's fans are still obeying my fan curves, but thought I would send over the logs as I got that error popup again. I will attach further logs once the cooler "disconnects".

@EvanMulawski
Copy link
Owner Author

@Meh7991 I'll be adjusting the logic to not cause an alert to be presented if these types of issues are only occurring sporadically.

@Meh7991
Copy link

Meh7991 commented Aug 29, 2023

Not sure if this is any use, but the issue is still happening but I have a lot more log files now.

I have problems on launching FanControl where it does not recognise my cooler's fans (three fans at the front of my case).
Below are the errors I get in FanControl on launch.

image
image

Logs.zip

I decided to completely uninstall iCUE today due to errors in SignalRGB (they recommended to uninstall it), but for me to fix this issue, I need iCUE installed so I can start CorsairService, stop it, then restart FanControl! Such a headache.

@EvanMulawski
Copy link
Owner Author

@Meh7991

I decided to completely uninstall iCUE today due to errors in SignalRGB (they recommended to uninstall it), but for me to fix this issue, I need iCUE installed so I can start CorsairService, stop it, then restart FanControl! Such a headache.

iCUE doesn't need to be uninstalled if iCUE itself and the CorsairService (USB device communication) and CorsairLLAService (DRAM RGB control) services are not running.

Any reason you need to start the CorsairService?

@EvanMulawski
Copy link
Owner Author

Going to reopen this - working on another solution.

@EvanMulawski EvanMulawski reopened this Aug 30, 2023
@EvanMulawski
Copy link
Owner Author

@Meh7991
Copy link

Meh7991 commented Aug 30, 2023

@EvanMulawski

iCUE doesn't need to be uninstalled if iCUE itself and the CorsairService (USB device communication) and CorsairLLAService (DRAM RGB control) services are not running.

Any reason you need to start the CorsairService?

So, when the cooler's lights bug out and the fans don't respond to my curves, I quit FanControl (and SignalRGB) then I switch CorsairService's startup from 'Disabled' (as you told me to do previously) to 'Automatic'.
Then I open iCUE, wait for it to control everything, then I exit it, switch CorsairService back to 'Disabled' then I stop the service again and then re-open FC and SRGB.

That way, the LEDs work and the fans respond again.

I've never touched the CorsairLLAService before, I've never had any problems with my RAM. Just the cooler and those three fans.

Can you try this build? FanControl.CorsairLink-HydroPlatinumIssue47-v20230829r001.zip

I will download this in a while a report back the results. Appreciate the assistance with all this!

@Meh7991
Copy link

Meh7991 commented Aug 30, 2023

Just used the new build you sent, the error popped up again and the front three fans became unresponsive to my curves again.

Logs.zip

Not sure if this is of any use, but the console log in SignalRGB for my cooler contains multiple of the following:
[10:33:53]: Log: Device Status: undefined from Color Packet
[10:33:53]: Log: Device Status: undefined from Color Packet
[10:33:54]: Log: Device Status: undefined from Color Packet
[10:33:54]: Log: Device Status: undefined from Color Packet
[10:33:55]: Log: Device Status: undefined from Color Packet
[10:33:55]: Log: Device Status: undefined from Color Packet
[10:33:55]: Log: Device Status: undefined from Color Packet
[10:33:56]: Log: Device Status: undefined from Color Packet
[10:33:56]: Log: Device Status: Success
[10:33:56]: Log: Liquid Temp: 0.05 C
[10:33:56]: Log: Fan 1 Duty: 0.00%
[10:33:56]: Log: Fan 1 RPM: 0
[10:33:56]: Log: Fan 2 Duty: 0.00%
[10:33:56]: Log: Fan 2 RPM: 0
[10:33:56]: Log: Fan 3 Duty: 0.00%
[10:33:56]: Log: Fan 3 RPM: 0
[10:33:56]: Log: Pump Mode: Quiet
[10:33:56]: Log: Pump RPM: 0
[10:33:56]: Log: Device Status: undefined from Color Packet
[10:33:57]: Log: Device Status: undefined from Color Packet
[10:33:57]: Log: Device Status: undefined from Color Packet
[10:33:57]: Log: Device Status: undefined from Color Packet
[10:33:58]: Log: Device Status: undefined from Color Packet
[10:33:58]: Log: Device Status: undefined from Color Packet
[10:33:59]: Log: Device Status: undefined from Color Packet
[10:33:59]: Log: Device Status: undefined from Color Packet
[10:33:59]: Log: Device Status: Success
[10:33:59]: Log: Liquid Temp: 0.05 C
[10:33:59]: Log: Fan 1 Duty: 0.00%
[10:33:59]: Log: Fan 1 RPM: 0
[10:33:59]: Log: Fan 2 Duty: 0.00%
[10:33:59]: Log: Fan 2 RPM: 0
[10:33:59]: Log: Fan 3 Duty: 0.00%
[10:33:59]: Log: Fan 3 RPM: 0
[10:33:59]: Log: Pump Mode: Quiet
[10:33:59]: Log: Pump RPM: 0
[10:34:00]: Log: Device Status: undefined from Color Packet
[10:34:00]: Log: Device Status: undefined from Color Packet

Other errors in SRGB that I have seen say this:
Log: Device Status: CRC Error from Color Packet

Probably unrelated, and maybe not supposed to report it here but when those errors occur, the lighting on the cooler itself is extremely laggy. Then eventually it goes off and reverts to the hardware lighting effect that I have set in iCUE.

(Sorry if I shouldn't post other project stuff here, I would rather send more things that could help than nothing at all)

@EvanMulawski EvanMulawski removed the in-prerelease Available or fixed in a pre-release label Aug 30, 2023
@EvanMulawski
Copy link
Owner Author

@Meh7991 New build. Can you enable the debug logging again and try without anything else running (iCUE, SignalRGB, etc.)?
FanControl.CorsairLink-HydroPlatinumIssue47-v20230830r001.zip

@Meh7991
Copy link

Meh7991 commented Aug 30, 2023

Installed the above build, didn't run anything else apart from FanControl and I had no errors pop up:
Log after 1.5hr without SRGB.zip

I then quit FanControl, opened SignalRGB and then opened FanControl again. Everything worked fine until after 5 or so mins when the cooler's LEDs went off. Another few mins after that, I got the error pop up:
Log after 10m with SRGB.zip

I'll try disabling the CPU from being used in SRGB and try running FanControl again, see if that does anything.
Seems to me that this is an SRGB issue, right?

Edit: disabling the cooler in SRGB has resulted in no errors, and fans are still controllable after ~1 hour.

@EvanMulawski
Copy link
Owner Author

@Heal-Bot Does SignalRGB use the Corsair mutex for AIO devices or just the Commander devices?

@Heal-Bot
Copy link

Heal-Bot commented Aug 30, 2023

Currently just the commander devices due to interactions with CPUID. But they could likely be added to the other AIOs if it's causing issues.

Do note the plat/pro xt coolers use a 'sequence id' that shifts with each command. So two programs writing to them will have to constantly be catching those sequence errors and recovering.

Repository owner deleted a comment from ECruzCruzCruz Aug 30, 2023
@EvanMulawski
Copy link
Owner Author

@Meh7991 New build. Please enable debug logging, stop other programs, and make sure the device is operating as expected. Thanks!
FanControl.CorsairLink-HydroPlatinumIssue47-v20230830r002.zip

@Meh7991
Copy link

Meh7991 commented Aug 31, 2023

New build made front three fans become unresponsive to my curves.

The build before this one worked perfectly (until SRGB runs).

Log with new build.zip - fans stick at ~580rpm
Log with previous build.zip - fans ramp up to ~1000rpm, as set in my curves

@EvanMulawski
Copy link
Owner Author

@Meh7991 New build. Please enable debug logging, stop other programs, and make sure the device is operating as expected. Thanks!
FanControl.CorsairLink-HydroPlatinumIssue47-v20230831r001.zip

@Meh7991
Copy link

Meh7991 commented Aug 31, 2023

Just installed, seems fine so far (fans react to the curves).
Will let it run for an hour or so and then open SRGB and re-enable the cooler on there.

Will post logs after that, or if any other errors pop up before!

@EvanMulawski
Copy link
Owner Author

@Meh7991 Thanks. SignalRGB likely still won't work simultaneously, but this test result will open the door for compatibility.

@EvanMulawski EvanMulawski added bug Something isn't working or functioning as expected and removed troubleshooting Issue likely caused by external factors labels Aug 31, 2023
@Meh7991
Copy link

Meh7991 commented Aug 31, 2023

New logs:
Log after ~1h without SRGB.zip
Log after ~30m with SRGB.zip

Worked perfectly without SRGB running (and I assume it does when the cooler is disabled in SRGB when it runs), when I ran SRGB the front three fans became unresponsive to my curves after just a few minutes.

Lighting on the cooler still did the same thing, resulting in me running the CorsairService, opening iCUE, quitting, disabling the service then opening FC and SRGB again.

@EvanMulawski
Copy link
Owner Author

@Heal-Bot It looks like the Platinum devices don't care about the sequence number - iCUE only needs to see a successful status byte during the device reboot process. Also, iCUE doesn't perform a read after sending cooling and LED packets. The device responded to all writes using a constant sequence number of 0x08.

I'm thinking we can remove the sequence number generator (and ignore the 0x10 sequence error status byte when reading the state) and remove any unnecessary reads. Then we should be good when the mutex is used.

@EvanMulawski
Copy link
Owner Author

Fixed in v1.4.0-beta.4

@Meh7991
Copy link

Meh7991 commented Sep 1, 2023

v1.4.0-beta.4 seems fine when I disable the cooler in SRGB, I tried enabling it again but it did the same as before where the fans stop responding.

New log if it is of any help:
Log.zip

@Meh7991
Copy link

Meh7991 commented Sep 1, 2023

Just left my system running for a few hours with v1.4.0-beta.4, I've now noticed the cooler's fans are running as slow as they possibly can. Totally ignoring my fan curves.

I've restarted FanControl and they ramp up to the correct speeds set in my curves, but then they slowly fall down to ~600rpm.

New log:
Log & Desktop Capture.zip

I've also attached a screen capture of what happens when I load FanControl with v1.4.0-beta.4. You can see the front fans ramp up to their correct speeds, then they slowly go back down to ~600rpm as described above.

I have reverted back to the build you sent above (called v20230831r001.zip) and all fans respond perfectly.

@EvanMulawski
Copy link
Owner Author

@Meh7991 Moved to #90

@EvanMulawski EvanMulawski added in-prerelease Available or fixed in a pre-release fixed Fix available in official release labels Sep 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working or functioning as expected fixed Fix available in official release in-prerelease Available or fixed in a pre-release
Projects
None yet
Development

No branches or pull requests

6 participants