Ich habe zwei Wärmepumpen in meiner HA Integriert und möchte per Modbus ein paar Parameter in Holding Register ändern können. Da ich habe mehrere Modbus systeme habe, muss ich leider mit Hub arbeiten, aber das führt beim Ausführen der Automation immer zu einem KeyError mit dem Namen des Hubs.
Hier die einfache Entität mit Automation
modbus:
- name: wpb_modbus
type: tcp
host: !secret wpb_modbus_host_ip
port: !secret wpb_modbus_port
delay: 5
timeout: 10
input_number:
wpb_p01_heating_setp:
name: "WPB P01 Heating Setpoint"
initial: 35
min: 10
max: 55
step: 0.5
automation:
- alias: "Update Modbus wpb_p01_heating_setp"
description: "Sendet den geänderten Wert des Heating Setpoints an Modbus"
mode: single
triggers:
- trigger: state
entity_id: input_number.wpb_p01_heating_setp
actions:
- action: modbus.write_register
data_template:
hub: wpb_modbus
slave: !secret wpb_modbus_slave
address: 0xCC #
value: "{{ states('input_number.wpb_p01_heating_setp') | int *2 }}"
Unter Protokolle findet sich Ein Eintrag
Update Modbus wpb_p01 _heating_setp.' Error executing script. unexpected error for call_service at pos 1 : •wpb_modbus'
und in dem Eintrag
Logger: homeassistant.components.automation.update_modbus_wpb_p01_heating_setp
Quelle: helpers/script.py:526
Integration: Automation (Dokumentation, Probleme)
Erstmals aufgetreten: 15:25:37 (1 Vorkommnisse)
Zuletzt protokolliert: 15:25:37
Update Modbus wpb_p01_heating_setp: Error executing script. Unexpected error for call_service at pos 1: 'wpb_modbus'
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 526, in _async_step
await getattr(self, handler)()
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 764, in _async_call_service_step
response_data = await self._async_run_long_action(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<9 lines>...
)
^
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 727, in _async_run_long_action
return await long_task
^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2795, in async_call
response_data = await coro
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2838, in _execute_service
return await target(service_call)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/modbus/modbus.py", line 173, in async_write_register
hub = hub_collect[service.data.get(ATTR_HUB, DEFAULT_HUB)]
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
KeyError: 'wpb_modbus'
Irgendwie scheint der Hub nicht erkannt zu werden?
Any idea was ich falsch mache?
Gruß aus Kölle
Detlef