Closed onkelbeh closed 2 weeks ago
Imho, this looks related to https://github.com/pymodbus-dev/pymodbus/pull/2098/files. Looks like this is fixed in 3.6.6
confirm, after upgrading to pymodbus 3.6.6 everything works again (Homeassistant-2024.3.3).
Thanks for the detailed bug report and thorough investigation. I couldn't reproduce the issue yet, but I merged #95, which hopefully fixes this. Please confirm the issue is fixed on master
, so I can publish a new release.
I have installed the current master branch
While the master
branch should work, I generally wouldn't recommend that. If you don't want to use HACS, I would still recommend you stick to the tagged versions.
Is there a reason that version is always "0.0.0" in manifest.json?
AFAIK the field is more or less unused by Home Assistant itself (there seems to be some code related to blocking integrations that entirely break Home Assistant, but nothing else). So for development and testing using 0.0.0
works fine. And constantly updating the version would create useless noise in the git history.
For releases, there is a GitHub Actions workflow that sets the version field based on the release tag for use in HACS.
If you want to have the proper version in the manifest.json
, you can download the idm_heatpump.zip
file from the GitHub Releases like HACS does. The direct link should always be https://github.com/kodebach/hacs-idm-heatpump/releases/download/[version]/idm_heatpump.zip
where [version]
is e.g. v0.8.0
.
Yep, thanks. I do not use the (changed by https://github.com/kodebach/hacs-idm-heatpump/pull/95) requirements.txt. I copied the current master https://github.com/kodebach/hacs-idm-heatpump/commit/ffa981860cc5c7bedba552b5cecdc6a43071b36b again, still everything works on Home Assistant 2024.3.3, with pymodbus-3.6.6, currently I am only reading from the pump.
Updating manifest.json with the current release and requirements is a good idea, hard pinning the requirement certainly not, I'd suggest you put a minimum version like 'pymodbus>=3.6.6' in your manifest. In one of my other lifes, I am maintaining https://github.com/onkelbeh/HomeAssistantRepository, an Overlay to run Home Assistant on Gentoo Linux, and I had this discussion many times.
In a nutshell, the only place where requirements should be pinned (for some reason) is Home Assistant Core. https://github.com/home-assistant/core/blob/dev/requirements_all.txt is generated on every release, collecting all requirements from various places. All other dependants should not pin (unneccesary) version numbers for dependencies.
I can also confirm, that pymodbus 3.6.6 fixes the issue. Had the same issue after upgrading to homeassistant 2024.3.1 a few days ago, so I downgraded to 2024.5 again. Today I updated homeassistant to 2024.3.3 and IDM heat pump is still working. I have v0.8.0 installed via HACS
This pymodbus library is a pain. It destroyed my modbus integration by nearly all latest updates due to "some" changes. Of course everything I have is against the spec, however was working before. Hope I can upgrade to latest HA, stopped in April due to a lot of issues.
Hi, I updated to beta6 but have issues:
2024-09-07 19:44:30.348 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] IDM_Waermepumpe_PV_schreiben: Error executing script. Error for call_service at pos 2: Must acknowledge risk to call set_power 2024-09-07 19:44:30.349 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] Error while executing automation automation.idm_waermepumpe_pv_schreiben: Must acknowledge risk to call set_power 2024-09-07 19:45:00.324 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] IDM_Waermepumpe_PV_schreiben: Error executing script. Error for call_service at pos 2: Must acknowledge risk to call set_power 2024-09-07 19:45:00.324 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] Error while executing automation automation.idm_waermepumpe_pv_schreiben: Must acknowledge risk to call set_power 2024-09-07 19:45:30.324 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] IDM_Waermepumpe_PV_schreiben: Error executing script. Error for call_service at pos 2: Must acknowledge risk to call set_power 2024-09-07 19:45:30.325 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] Error while executing automation automation.idm_waermepumpe_pv_schreiben: Must acknowledge risk to call set_power 2024-09-07 19:46:00.323 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] IDM_Waermepumpe_PV_schreiben: Error executing script. Error for call_service at pos 2: Must acknowledge risk to call set_power 2024-09-07 19:46:00.324 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] Error while executing automation automation.idm_waermepumpe_pv_schreiben: Must acknowledge risk to call set_power
I am on HA 2024.7.4 do you think it is related to that? I updated HACS to 2.0.1
I updated now HA to 2024.9.1 and also HA OS to newest version. No change still got this log: 2024-09-08 10:37:30.055 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] IDM_Waermepumpe_PV_schreiben: Error executing script. Error for call_service at pos 2: Must acknowledge risk to call set_power 2024-09-08 10:37:30.056 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] Error while executing automation automation.idm_waermepumpe_pv_schreiben: Must acknowledge risk to call set_power
Hi, I updated to beta6 but have issues:
Nothing to do with this issue, therefore hidden as off topic. Please see https://github.com/kodebach/hacs-idm-heatpump/issues/123#issuecomment-2336642522 for more.
First a big thanks for this component.
## Version of the custom_component 0.8.0, not using hacs, I have installed the current master branch at commit 513f66264fb7b6c49a6e283bc2c579977d9340f7 ## Configuration ```yaml no yaml config used, one pump configured per config flow Navigator 2.0, SW: 20.23-58 ``` ## Describe the bug Home Assistant currently pins pymodbus==3.6.6 https://github.com/home-assistant/core/blob/2024.3.3/homeassistant/components/modbus/manifest.json You have pymodbus==3.6.4 in https://github.com/kodebach/hacs-idm-heatpump/blob/v0.8.0/requirements.txt but still pymodbus==3.5.0 in https://github.com/kodebach/hacs-idm-heatpump/blob/v0.8.0/custom_components/idm_heatpump/manifest.json so actually idm-heatpump tries to load 3.5.0 After adjusting the version in manifest.json, it loads 3.6.6, and pulls all values from the pump exactly one time, but then all entities from the pump are not updated anymore, they stay at the values from the first run. ## Debug logafter adjusting the version in manifest.json, it loads, and pulls all values from the pump exactly one time, but then:
Since 0.8.0, it loads all data from the heatpump after a restart. But then, after a couple of minutes (perhaps this is the next pull):
All entities from the pump are not updated anymore, they stay at the initially loaded values.
And at this opportunity another question: Is there a reason that version is always "0.0.0" in manifest.json?