Open ChrisMisker opened 6 months ago
@ChrisMisker Please set speed to 100 % and take a dump. (See here) Then set speed to 50 % and take another dump. Dif the files and look abount a changing sensor or upload both files in this ticket.
The setting for cooling is parameters.ID_Einst_P155_PumpCool_RPM
, it's a percentage (Percent2
).
Unfortunately setting it through the interface used by this integration seems to be impossible. It is protected by the installer password. I have tried, it didn't work.
@Kars-de-Jong Installer password is only in the Luxtronik Frontend. With the Socket Interface everthing can be set without password. So I think it is possible if we know the correct parameter.
@BenPru I tried, it didn't update...
Hi @BenPru (@Kars-de-Jong ), for the pump for the brine, it's 1040 ID_Einst_P155_PumpVBO_RPM_C
.
The cooling pump is 1038 ID_Einst_P155_PumpCool_RPM
.
It's a number (e.g. 50 or 100) value.
And I have just tried setting it through the service luxtronik2.write and it works! It changes. That's great! I'll try adding it in the YAML now too, see if that works.
I can't get the YAML part to work... any help? It'd really help me to add these values to my installation.
sensor:
- platform: luxtronik2
sensors:
- group: parameters
id: ID_Einst_P155_PumpVBO_RPM_C
friendly_name: Luxtronik2 VBO Pump
- group: parameters
id: ID_Einst_P155_PumpCool_RPM
friendly_name: Luxtronik2 Cool pump
Hi, I'm trying to set the pump speed through a script (based upon an input_number helper), but I get this error in the log. Am I doing something wrong?
Detected blocking call to sleep inside the event loop by custom integration 'luxtronik2' at custom_components/luxtronik2/lux_helper.py, line 279: time.sleep(WAIT_TIME_WRITE_PARAMETER) (offender: /config/custom_components/luxtronik2/lux_helper.py, line 279: time.sleep(WAIT_TIME_WRITE_PARAMETER)), please create a bug report at https://github.com/BenPru/luxtronik/issues Traceback (most recent call last): File "<frozen runpy>", line 198, in _run_module_as_main File "<frozen runpy>", line 88, in _run_code File "/usr/src/homeassistant/homeassistant/__main__.py", line 223, in <module> sys.exit(main()) File "/usr/src/homeassistant/homeassistant/__main__.py", line 209, in main exit_code = runner.run(runtime_conf) File "/usr/src/homeassistant/homeassistant/runner.py", line 190, in run return loop.run_until_complete(setup_and_run_hass(runtime_config)) File "/usr/local/lib/python3.12/asyncio/base_events.py", line 672, in run_until_complete self.run_forever() File "/usr/local/lib/python3.12/asyncio/base_events.py", line 639, in run_forever self._run_once() File "/usr/local/lib/python3.12/asyncio/base_events.py", line 1988, in _run_once handle._run() File "/usr/local/lib/python3.12/asyncio/events.py", line 88, in _run self._context.run(self._callback, *self._args) File "/usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 452, in _handle_request resp = await request_handler(request) File "/usr/local/lib/python3.12/site-packages/aiohttp/web_app.py", line 543, in _handle resp = await handler(request) File "/usr/local/lib/python3.12/site-packages/aiohttp/web_middlewares.py", line 114, in impl return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 92, in security_filter_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 83, in forwarded_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 26, in request_context_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 85, in ban_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 242, in auth_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 32, in headers_middleware response = await handler(request) File "/usr/src/homeassistant/homeassistant/helpers/http.py", line 73, in handle result = await handler(request, **request.match_info) File "/usr/src/homeassistant/homeassistant/components/websocket_api/http.py", line 54, in get return await WebSocketHandler(request.app[KEY_HASS], request).async_handle() File "/usr/src/homeassistant/homeassistant/components/websocket_api/http.py", line 438, in async_handle async_handle_str(command_msg_data) File "/usr/src/homeassistant/homeassistant/components/websocket_api/connection.py", line 229, in async_handle handler(self.hass, self, schema(msg)) File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 46, in schedule_handler hass.async_create_background_task( File "/usr/src/homeassistant/homeassistant/core.py", line 860, in async_create_background_task task = create_eager_task(target, name=name, loop=self.loop) File "/usr/src/homeassistant/homeassistant/util/async_.py", line 37, in create_eager_task return Task(coro, loop=loop, name=name, eager_start=True) File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 27, in _handle_async_response await func(hass, connection, msg) File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 241, in handle_call_service response = await hass.services.async_call( File "/usr/src/homeassistant/homeassistant/core.py", line 2741, in async_call response_data = await coro File "/usr/src/homeassistant/homeassistant/core.py", line 2784, in _execute_service return await target(service_call) File "/usr/src/homeassistant/homeassistant/components/script/__init__.py", line 663, in _service_handler response = await self._async_start_run( File "/usr/src/homeassistant/homeassistant/components/script/__init__.py", line 621, in _async_start_run script_result = await coro File "/usr/src/homeassistant/homeassistant/components/script/__init__.py", line 652, in _async_run return await self.script.async_run(script_vars, context) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1773, in async_run return await asyncio.shield(create_eager_task(run.async_run())) File "/usr/src/homeassistant/homeassistant/util/async_.py", line 37, in create_eager_task return Task(coro, loop=loop, name=name, eager_start=True) File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in async_run await self._async_step(log_exceptions=False) 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 self._hass.async_create_task_internal( File "/usr/src/homeassistant/homeassistant/core.py", line 828, in async_create_task_internal task = create_eager_task(target, name=name, loop=self.loop) File "/usr/src/homeassistant/homeassistant/util/async_.py", line 37, in create_eager_task return Task(coro, loop=loop, name=name, eager_start=True) File "/usr/src/homeassistant/homeassistant/core.py", line 2741, in async_call response_data = await coro File "/usr/src/homeassistant/homeassistant/core.py", line 2784, in _execute_service return await target(service_call) File "/config/custom_components/luxtronik2/__init__.py", line 69, in write_parameter await coordinator.async_write(parameter, value) File "/config/custom_components/luxtronik2/coordinator.py", line 112, in async_write return await self._async_read_or_write(True, parameter, value) File "/config/custom_components/luxtronik2/coordinator.py", line 118, in _async_read_or_write data = self._write(parameter, value) File "/config/custom_components/luxtronik2/coordinator.py", line 155, in _write self.client.write() File "/config/custom_components/luxtronik2/lux_helper.py", line 223, in write self._read_write(write=True) File "/config/custom_components/luxtronik2/lux_helper.py", line 254, in _read_write self._write() File "/config/custom_components/luxtronik2/lux_helper.py", line 279, in _write time.sleep(WAIT_TIME_WRITE_PARAMETER)
This is my script config:
alias: Luxtronik Stel pompen in
sequence:
- service: luxtronik2.write
data:
parameter: ID_Einst_P155_PumpVBO_RPM_C
value: "{{ states('input_number.helper_brine_pomp') }}"
- service: luxtronik2.write
data:
parameter: ID_Einst_P155_PumpCool_RPM
value: "{{ states('input_number.helper_koeling_pomp') }}"
description: ""
@ChrisMisker That's a known issue, it should still work.
@ChrisMisker That's a known issue, it should still work.
Yeah, thanks, I figured it out: Had to add | INT to the line, then it'll work.
Any ideas on how to get the YAML part working? (see https://github.com/BenPru/luxtronik/issues/252#issuecomment-2141830169 ) or is that not supported anymore?
No, that's not supported anymore. You need to install the old Luxtronik integration for that.
I would still like to see it supported for "advanced" users, just like with template sensors. You can define them like helpers, but if you need more advanced setttings you still need to use YAML.
In the installer menu on the heat pump, it's possible to set the pumps speed (I have a Water/Water heat pump, so I can set the speed of the pump towards the heat source; and of course the speed of the pump of the central heating/floor heating). When it's cooling, I set those to 50%.. it saves me about 150w (out of 200w when having the pumps at 100%), so quite some energy saving, but with the same amount of cooling.
Is it possible to be able to set these with this integration?