FanControl.Liquidctl
FanControl.Liquidctl copied to clipboard
Loading FanControl.Liquidctl v0.1.1 with latest and prebuilt liquidctl exeutable crashes FanControl at application startup
I'm running liquidictl v1.12.1 from a virtualize python environment on Windows 10 and come upon this message when starting up the latest build of Fancontrol (V1.51). This is without the prebuilt executable in the plugin directory. Currently running the latest build of liquidctl (v1.12.1) through python 3.11.
3/25/2023 11:00:52 AM: System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at FanControl.Liquidctl.LiquidctlCLIWrapper.LiquidctlCall(String arguments)
at FanControl.Liquidctl.LiquidctlPlugin.Initialize()
at FanControl.Domain.BackendProviders.Plugin.PluginBackendProvider.Open()
As a precaution, I disabled the path and python variables to it and placed the latest built of liquidctl directly into the plugin folder. Same result (though I would expect this).
3/25/2023 11:32:57 AM: Newtonsoft.Json.JsonReaderException: Could not convert string to double: balanced. Path '[0].status[3].value', line 1, position 290.
at Newtonsoft.Json.JsonReader.ReadDoubleString(String s)
at Newtonsoft.Json.JsonTextReader.FinishReadQuotedNumber(ReadType readType)
at Newtonsoft.Json.JsonTextReader.ReadAsDouble()
at Newtonsoft.Json.JsonReader.ReadForType(JsonContract contract, Boolean hasConverter)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
at FanControl.Liquidctl.LiquidctlCLIWrapper.ReadStatus()
at FanControl.Liquidctl.LiquidctlPlugin.Load(IPluginSensorsContainer _container)
at FanControl.Domain.BackendProviders.Plugin.PluginBackendProvider.Open()
Just for sanity check I reverted back to the originally built liquidctl file from the latest version of the plugin and still having the same problem
3/25/2023 11:20:56 AM: System.Exception: liquidctl returned non-zero exit code -1073741819. Last stderr output:
WARNING: python -m liquidctl.cli is deprecated, prefer python -m liquidctl
at FanControl.Liquidctl.LiquidctlCLIWrapper.LiquidctlCall(String arguments)
at FanControl.Liquidctl.LiquidctlPlugin.Initialize()
at FanControl.Domain.BackendProviders.Plugin.PluginBackendProvider.Open()
Additional relevant information: The provided liquidictl provided with the plugin provide the following input with initializing:
PS C:\FanControl\Plugins> .\liquidctl.exe initialize
WARNING: python -m liquidctl.cli is deprecated, prefer python -m liquidctl
PS C:\FanControl\Plugins> .\liquidctl.exe --version
liquidctl v0.0.0-unknown (Windows-10-10.0.19045-SP0)
From the python virtualize environment
PS C:\python_venv\Scripts> .\liquidctl.exe initialize
Corsair Hydro H100i Pro
└── Firmware version 1.0.4.0
PS C:\python_venv\Scripts> .\liquidctl.exe --version
liquidctl v1.12.1 (Windows-10-10.0.19045-SP0)