-
Notifications
You must be signed in to change notification settings - Fork 17
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
Plugin not working with Corsair H100i v2 due to version naming #16
Comments
This seems like it's the same problem that @kromosomX (tagging you here because the other issue was closed) had here. You could give my fork a try if you want, the issue with the Firmware version should be fixed there as well now. |
@SuspiciousActivity I have the same Asetek as kromosomX but unfortunately your fork doesn't seem to avoid the crash, and I wonder if it's because the firmware version is being reported in a different place than FIBSensei (above). Without knowing if the fix works for FIBSensei though, I can't be sure. I cloned your fork and have been looking around a bit to see if I can understand what's going on, but my knowledge is very basic. What I can do however, is post my json report as well as error message in case this helps narrow it down to a universal solution. If you end up taking a look and would like any more info, please let me know. CLI:
Formatted JSON:
Fan Control\log.txt
|
@hmm-norah did you also use the newest version of my fork of the plugin? Because that error cannot come from my fork anymore, I moved the code that tries to convert the firmware version to a number to another place. Could you check if the plugin dll in your plugins folder is the same as the one in my latest release? Also, did you restart FanControl after you copied my fork? |
@SuspiciousActivity |
@levvp did you use my liquidctl.exe together with my FanControl.LiquidctlPlugin? My liquidctl.exe doesn't work with the original plugin, only with my fork. That's because its based on a newer version of liquidctl, which added support for some other stuff that the original plugin cannot handle, but mine can. |
First of all thanks for your fork, I confirm that your v1.0.1 LiquidCtl plugin works for my Kraken Z53 pump control but doesn't seem to detect my NZXT RGB & Fan Controller. Also it works perfectly on startup but for some reason the plugin crashes and shows and error when the computer is coming out of sleep mode. Is it an error you're aware of ? |
@SuspiciousActivity Just to make sure, I've just stopped FanControl, replaced the files in the "Plugins" folder again from the release ZIP file, then started FanControl again. |
@realgooseman I don't know of any error when coming out of sleep mode. Can you tell me what the error is? Does the log.txt file in FanControl's folder have some more information? |
In doing a complete reinstall to weed out having made a mistake like the non-forked dll being loaded I have updated to v152 which I was building your fork myself, but I can't say confidently enough that I was closing it because I keep forgetting even now that it hides in the task bar. Launching the exe when it's already running just opens the already-running program, and it's completely possible that I was tricking myself into thinking it was a new launch. |
Here's how the plugin behaves in my particular case :
Here are the different pop-ups and errors I'm getting when it crashes :Here is the log text for the error :25/03/2023 23:09:38: Unhandled exception in FanControl v1.0.0.0 à FanControl.Liquidctl.LiquidctlCLIWrapper.LiquidctlCall(String arguments) à FanControl.Liquidctl.LiquidctlCLIWrapper.LiquidctlCall(String arguments) à FanControl.Liquidctl.LiquidctlCLIWrapper.LiquidctlCall(String arguments) à FanControl.Liquidctl.LiquidctlCLIWrapper.LiquidctlCall(String arguments) à FanControl.Liquidctl.LiquidctlCLIWrapper.LiquidctlCall(String arguments) à FanControl.Liquidctl.LiquidctlCLIWrapper.LiquidctlCall(String arguments) If the error is not known, is there something I'm doing wrong ? |
This is the same error that I seem to be receiving as well once adding the files to the Plugins folder, FanControl runs perfectly for me until then. I recorded a video on a clean setup and verified that I am running the fork including the fork's liquidctl.exe. The only difference I can see between mine and realgooseman's is that I don't receive an error about restoring the configuration because I did not have one set up using the plugin to begin with. liquidctl output:
|
Alright @realgooseman and @hmm-norah I've made a new version of both the plugin and liquidctl (ZIP here). Hopefully it fixes something, if not, there should be some new output in the log.txt. |
Just tried and it works like before but still shows similar errors when the pc boots out of sleep mode. New log.txt here |
Looks to be loading now with a new error, GUI repeats error in a similar way to the video I attached further up. Interesting to see the message about python making its way into the log. I have a second device that shows up in liquidctl as well (has always been there but didn't think to mention it), not sure if that would help to pinpoint what's going on. Non-json status command:
result of --json list and --json status
|
@hmm-norah I believe the error in your log.txt |
@realgooseman Can you give this liquidctl version for the plugin a try? It should give more output in the log.txt. |
Thanks for following up, just tried with the 1.0.1.1 debug version and same errors as before after leaving sleep mode. New log.txt here |
Could you open up command prompt in the Plugins folder and run the following: |
update
granted, this is just taking a hacksaw to your code and isn't a workable solution as a release, but I hope this helps narrow the problem down Instead of ./liquidctl list -v
./liquidctl.exe --bus usb1 status:
./liquidctl.exe --bus usb1 --json status:
./liquidctl.exe --bus usb1 --json list:
./liquidctl.exe --usb-port 11 status:
./liquidctl.exe --usb-port 11 --json status:
./liquidctl.exe --usb-port 11 --json list:
No devices found:
|
@hmm-norah That was very helpful, thanks! New version (plugin and liquidctl need an update) |
New version looks to be working perfectly for my use case! (monitoring liquid temp and moving the radiator fans to a header on the motherboard instead of the AIO.) Thank you so much for figuring out what was up, especially since the EVGA-branded Asetek seems to be much less common than the NZXT ones. I cannot begin to explain how bad the EVGA software is. |
I tried v1.0.3 and still same problems when leaving sleep mode, and for some reason the commands don't do anything in the plugin's path + liquidctl opens for a sec then closes when I click on it. Tried installing Python + libusb but nothing changes. But as I'm not so experienced in coding, I don't know what I'm doing wrong lol. New log.txt here |
@realgooseman What do you mean by "the commands don't do anything"? Liquidctl is a command line program, when you double click it, you can't see much. You need to start it from a command prompt.
|
When going to the Plugins folder and entering the cmd command from that path, this window pops up for one second then closes. entering the list command doesn't show anything either. Is it missing something to run properly ? |
@realgooseman I think you are still running the command directly, let me show you how to do it:
And yes it will basically show what you posted in your image, but more of that. I need the output of all of the 3 commands:
|
Well, that's exactly what I did. When entering the command in cmd it then pops up a liquidctl window showing my previous screenshot and closes one second after. Is it maybe missing a KrakenZ3 driver ? As I uninstalled NZXT CAM |
@realgooseman huh that's really weird. And liquidctl supplies its own driver for all the devices. I have literally no idea why it acts like that. Another question: why did you install FanControl in the Start Menu? (I doubt it has something to do with that, just wondering) |
Yes, very weird indeed. And I installed FanControl in start menu because I had task schedule issues on startup launch when it was in the default C:/Program Files path. But i'll try it in the default path to see if there's any difference now. Also maybe worth mentioning, I use a USB header 9pin splitter in my case as I don't have enough USB pin slots on my motherboard. Maybe that's the reason why it causes some problems ? But ultimately the plugin does work but just not when leaving sleep mode so idk if that's the real reason. |
@SuspiciousActivity Hey I am using your version of fan control.liquidctl to control my kraken in remo0's fan control and its brilliant love it so much more than having to use CAM however im having an issue where my Asus motherboard rgb lights turn off as soon as fan control launches when the liquidctl plugin is enabled. Is there any way I can disable that function? I didnt see an issue thread on your page for the version you made and apparently you cant direct msg people on here so hoping this is tha appropriate way to reach out to you. |
Hello,
I'm trying to use your plugin with my Corsair H100i v2. To me the problems seems to be the version naming. In the error log it throws the following error:
Newtonsoft.Json.JsonReaderException: Could not convert string to double: 2.8.0.0. Path '[0].status[3].value', line 1, position 294.
bei Newtonsoft.Json.JsonReader.ReadDoubleString(String s)
bei Newtonsoft.Json.JsonTextReader.FinishReadQuotedNumber(ReadType readType)
bei Newtonsoft.Json.JsonTextReader.ReadAsDouble()
bei Newtonsoft.Json.JsonReader.ReadForType(JsonContract contract, Boolean hasConverter)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
bei Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
bei Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
bei Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
bei FanControl.Liquidctl.LiquidctlCLIWrapper.ReadStatus()
bei FanControl.Liquidctl.LiquidctlPlugin.Load(IPluginSensorsContainer _container)
bei FanControl.Domain.BackendProviders.Plugin.PluginBackendProvider.Open()
The text was updated successfully, but these errors were encountered: