Giter VIP home page Giter VIP logo

luxtronik's Introduction

Luxtronik

Validate with hassfest HACS Action hacs_badge

This component has been created to be used with Home Assistant.

The Luxtronik integration lets you control heat pump units controlled by a Luxtronik controller. It is used by various manufacturers such as:

  • Alpha Innotec
  • Siemens Novelan
  • Roth
  • Elco
  • Buderus
  • Nibe
  • Wolf Heiztechnik

Its only necessary to connect the Luxtronik controller to your network, no additional hard- or software is needed.

Configuration

To enable this component, add the following lines to your configuration.yaml file:

# Example configuration.yaml entry
luxtronik:
  host: 192.168.178.10
  port: 8889
  • host
    • description: IP address or hostname of the Luxtronik controller.
    • required: true
    • type: string
  • port
    • description: The port name of the Luxtronik controller.
    • required: true
    • default: 8889
    • type: integer
  • safe
    • description: Enables the writing of unknown parameters if set to false.
    • required: false
    • default: true
    • type: boolean
  • lock_timeout
    • description: Lock timeout for concurrent read- and write operations in seconds.
    • required: false
    • default: 30
    • type: integer
  • update_immediately_after_write
    • description: Update sensor data after every write operation
    • required: false
    • default: false
    • type: boolean

Note:

Not all data received by the Luxronik controller is understood by now as the protocol is not publicly documented.

Parameter IDs

Take these files as a reference to figure ot which IDs to use:

Service

In order to change parameters on the Luxtronik conroller, you can use the following service:

Domain: luxtronik
Service: write
Service Data: {"parameter": "ID_Ba_Hz_akt", "value": "Automatic"}
  • parameter
    • description: ID of the parameter.
    • type: string
  • value
    • description: Value you want to set the parameter to.
    • type: [string, float]

Only a small number of the over 1100 parameters have a known funtion and only these can be written, these are:

  • ID_Ba_Hz_akt The mode of operation of the heating circuit, possible values are "Automatic", "Second heatsource", "Party", "Holidays", "Off"
  • ID_Ba_Bw_akt The mode of operation of the hot water circuit, possible valus are "Automatic", "Second heatsource", "Party", "Holidays", "Off"
  • ID_Soll_BWS_akt The set point for hot water generation, for example 50.0 for 50.0°C
  • ID_Einst_BA_Kuehl_akt The mode of operation of the cooling circuit, possible values are "Automatic", "Off"
  • ID_Einst_KuehlFreig_akt The outdoor temprature from wher on the cooling should start to operate, for example 24.0
  • ID_Ba_Sw_akt The mode of operation of the swimming pool heating circuit, possible values are "Automatic", "Party", "Holidays", "Off"
  • ID_Einst_TDC_Max_akt Max. temperature difference of the hot water buffer tank, for example 70.0
  • ID_Sollwert_KuCft1_akt Cooling set point for mixer circuit 1, for example 19.0
  • ID_Sollwert_KuCft2_akt Cooling set point for mixer circuit 2, for example 19.0
  • ID_Sollwert_AtDif1_akt Cooling working temperature difference 1, for example 5.0
  • ID_Sollwert_AtDif2_akt Cooling working temperature difference 2, for example 5.0
  • ID_Ba_Hz_MK3_akt The mode of operation of the heating mixer circuit 3, possible values are "Automatic", "Party", "Holidays", "Off"
  • ID_Einst_Kuhl_Zeit_Ein_akt Cooling outdoor temperature overrun, for example 0.0
  • ID_Einst_Kuhl_Zeit_Aus_akt Cooling outdoor temperature underrun, for example 0.0
  • ID_Einst_Solar_akt Mode of operation for solar heat generation, "Automatic", "Second heatsource", "Party", "Holidays", "Off"
  • ID_Einst_BA_Lueftung_akt Mode of operation of the integrated ventilation unit, posisble values are "Automatic", "Party", "Holidays", "Off"
  • ID_Sollwert_KuCft3_akt Cooling set point for mixer circuit 3, for example 20.0
  • ID_Sollwert_AtDif3_akt Cooling working temperature difference 3, for example 5.0

Note:

Before changing a parameter it smart to first read the current value and note it somewhere in case you want to set it back to its original value. All parameters can be configured as sensors and read that way. If you want to write unknown parameters, set the config option safe to false.

Sensor

The Luxtronik sensor platform allows you to monitor the status values of a heat pump unit controlled by a Luxtronik controller.

Sensors are read-only. To write to the heatpump, use the provided service Luxtronik Integration - Service.

To use a Luxtronik sensor in your installation, add the following lines to your configuration.yaml file:

# Example configuration.yaml entry
sensor:
  - platform: luxtronik
    sensors:
      - group: calculations
        id: ID_WEB_Temperatur_TVL
  • group:
    • description: Value group where the ID is located, possible values are calculations, parameters, visibilities.
    • required: true
    • type: string
  • id:
    • description: The id of the value.
    • required: true
    • type: string
  • friendly_name:
    • description: Sets a meaningful name for the sensor, if not provided the sensor will be named after the id, luxtronik.id_webemperatur_tvl for example, otherwise luxtronik.temperature_forerun.
    • required: false
    • type: string
  • icon:
    • description: Set an icon for the sensor
    • required: false
    • type: string

Full example

# Example configuration.yaml entry
sensor:
  - platform: luxtronik
    sensors:
      - group: calculations
        id: ID_WEB_Temperatur_TVL
        friendly_name: Temperature forerun
        icon: mdi:thermometer

Binary Sensor

The Luxtronik binary sensor platform allows you to monitor the status values of a heat pump unit controlled by a Luxtronik controller.

Binary sensors are read-only. To write to the heatpump, use the provided service Luxtronik Integration - Service.

To use a Luxtronik binary sensor in your installation, add the following lines to your configuration.yaml file:

# Example configuration.yaml entry
binary_sensor:
  - platform: luxtronik
    sensors:
      - group: calculations
        id: ID_WEB_EVUin
  • group:
    • description: Value group where the ID is located, possible values are calculations, parameters, visibilities.
    • required: true
    • type: string
  • id:
    • description: The id of the value.
    • required: true
    • type: string
  • friendly_name:
    • description: Sets a meaningful name for the sensor, if not provided the sensor will be named after the id, luxtronik.id_web_evuin for example, otherwise luxtronik.utility_company_lock.
    • required: false
    • type: string
  • icon:
    • description: Set an icon for the sensor
    • required: false
    • type: string
  • invert:
    • description: Inverts the value
    • required: false
    • type: boolean
    • default: false

Full example

# Example configuration.yaml entry
binary_sensor:
  - platform: luxtronik
    sensors:
      - group: calculations
        id: ID_WEB_EVUin
        friendly_name: Utility company lock
        icon: mdi:lock

luxtronik's People

Contributors

benpru avatar bouni avatar feibeck avatar klarstein avatar remuslazar avatar schack17 avatar thvd avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

luxtronik's Issues

Missing 'state_class' attribute

A lot of the sensor readings are perfect to use with the statistics functionality of HA. Would it be possible to add the 'state_class: measurement' to the temperature values of the calculations group?

Errors during upgrade to latest HACS release

I tried to update my Luxtronic HACS integration from 0.1.12 to 0.1.15. My HassIO won't boot after that upgrade.
First I saw the following error in the log:

Fatal error while loading config: inconsistent use of tabs and spaces in indentation (__init__.py, line 136) Failed config General Errors: - inconsistent use of tabs and spaces in indentation (__init__.py, line 136)

I corrected the tabs on line 136 and tried to restart. Then I get the following error:
Fatal error while loading config: name 'CONF_LOCK_TIMEOUT' is not defined Failed config General Errors: - name 'CONF_LOCK_TIMEOUT' is not defined

I tried to go back to 0.1.13 but then I got the errors. So I deinstalled the component en installed version 0.1.12 and now my integration working again.

Renaming this integration

I am currently trying to process and provide my further development of this integration as a ha core integration.
We had already discussed renaming this integration in the past.
Do you still want to tackle this? luxtronik_legacy or similar?

HA 0.110.x BinarySensorDevice is deprecated

Hi !

Thanks for the great work. Starting from HA 0.110.x, there is now an error in HA log when using Luxtronik component:

Log Details (WARNING)
Logger: homeassistant.components.binary_sensor
Source: components/binary_sensor/__init__.py:174
Integration: Binary sensor (documentation, issues)
BinarySensorDevice is deprecated, modify LuxtronikBinarySensor to extend BinarySensorEntity

Thanks !

[Errno 111] Connection refused

I'm running latest HAOS in Proxmox VM. A new Alpha Innotec heat pump was installed earlier this week, but looks like can't setup the integration in HA. Installed Luxtronik via HACS.

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 235, in _async_setup_component
    result = await task
  File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/luxtronik/__init__.py", line 74, in setup
    luxtronik = LuxtronikDevice(host, port, safe, lock_timeout)
  File "/config/custom_components/luxtronik/__init__.py", line 101, in __init__
    self._luxtronik = Lux(host, port, safe)
  File "/usr/local/lib/python3.10/site-packages/luxtronik/__init__.py", line 25, in __init__
    self.read()
  File "/usr/local/lib/python3.10/site-packages/luxtronik/__init__.py", line 40, in read
    self._connect()
  File "/usr/local/lib/python3.10/site-packages/luxtronik/__init__.py", line 29, in _connect
    self._socket.connect((self._host, self._port))
ConnectionRefusedError: [Errno 111] Connection refused
  • I can ping the IP and it's visible in my router
  • The IP doesn't show up with netstat -a
  • telnet 192.168.1.2xx 8889 gives telnet: Unable to connect to remote host: Connection refused, same with port 8888
  • Tried nmap -p 22,80,8888,8889 192.168.1.2xx, it says host is up but every port is in closed state
  • I added the pump to myupway.com, I can see everything in real-time. Was that a mistake?

This is my current entry in configuration.yaml:

#alpha innotec
luxtronik:
  host: 192.168.1.2xx
  port: 8889

sensor:
  - platform: luxtronik
    sensors:
      - group: calculations
        id: ID_WEB_Temperatur_TVL

Both HA and pump needed updates, but same situation after updating and rebooting. Is there something I should do in the settings of the pump beforehand? Could the device be locked by the manufacturer somehow?

Alpha Innotec MSW2-6S

Hi there,

I can't connect to My Alpha Innotec heatpump. Is this version supported?

It seems that port 8889 is closed on the controler only (80,22 and 502) are opend.

the webinterface on port 80 is giving me a java webinterface.

Anny thoughts?

Get Sensor values into InfluxDB

It was not possible to install Luxtronik via HACS. So I have to manually transfer each (necessary) sensor value to the configuration.yaml. Which also makes this confusing.
That's how far it goes.

I just don't get the entities passed into the InfluxDB. These are simply not displayed. Is there a workaround.

last but not least:
And is someone kind enough to publish the sensor values ​​for the Luxtronik configuration.yaml here? then I prefer to throw out what I don't need. Thanks alot

Integration failed with HA OS 6.2

Hi,

i just installed the latest HA OS 6.2, after reboot the Integration luxtronic failed:
Unable to prepare setup for platform luxtronik.sensor: Unable to set up component.
I made some restarts (core and os), still doesnt work. All luxttonik Sensors or entities are gone.
Novelan heatpump works fine, i havent changed anything in configuration yaml.

Version info in manifest.json

I recent saw the following comment in the logfile of Home Assistant:

2021-03-12 23:12:31 WARNING (MainThread) [homeassistant.loader] No 'version' key in the manifest file for custom integration 'luxtronik'. This will not be allowed in a future version of Home Assistant. Please report this to the maintainer of 'luxtronik'

I propose that @Bouni fix this.
Otherwise I can make a branche and make a pull request.

Luxtronik Invallid config

Hi there,

Since 0.113 I guess Luxtronik isn't working anymore. It seems that Home Assistant has removed the intergration. Do you now more about this or does it need to work without the intergration?

I have followed the guide you provided and it worked well till the update to 0.113.

Invalid config
The following integrations and platforms could not be set up:

luxtronik
luxtronik.binary_sensor
luxtronik.sensor
Please check your config.

Wrong Value

Hi, thanks for this integration but i can't get it to work for visibilities:

  • platform: luxtronik
    sensors:
    • group: visibilities
      id: ID_Visi_Temp_BW_Ist
      friendly_name: Heizung Warmwasser IST
      icon: mdi:thermometer

only returns a "1"

Do you have an idea?

Device Registry

Maybe it could be beneficial to move sensors away from the luxtronik domain to using the Device Registry with standard binary_sensor and sensor domains.

Probably incomplete list of benefits:

  • Sensors with a unit_of_measurement would get filtered out of logbook automatically.
  • The heatpump would appear as a device with a list of its sensors in the frontend.

HA crash with IP 10.10.10.10/8

Hi bouni,

There is an issue with the IP address check. It crashes on start of HA,
I've posted a comment on the GitHub of the HA integration. Can you take a
look?

Regards Remy

Op ma 4 mei 2020 12:25 schreef bouni [email protected]:

The hard part begins here, as we no longer get names for the values out of
the JAVA source (as does for all the others so far).
Any suggestions on how to name this value?
Maybe just flow_rate? or better 254_flow_rate in case we get another flow
rate in the future?


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
Bouni/python-luxtronik#7 (comment),
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADKUWN7EJUWNW4JE3LXKGU3RP2J2RANCNFSM4JU3BKGQ
.

Originally posted by @remyderuysscher in Bouni/python-luxtronik#7 (comment)

Call manual update on sensor

Hello,

Is there a way to call an update on a sensor?
As example after I write something to the heat pump I need an sensor update instantly. Sadly the option update_immediately_after_write does not work for me. Idk why, I put it in the configuration.yaml part. Or does it belong to every sensor I want to get updated after a write?

Or even better is there maybe a service luxtronik.write? (luxtronik.update or something?)

Integration is using deprecated `DEVICE_CLASS_*` constants

This custom integration uses deprecated DEVICE_CLASS_* constants in its codebase.

The DEVICE_CLASS_* constants have been deprecated and replaced in Home Assistant Core 2021.12 (over a year ago). I would highly suggest updating/migrating this integration to the new enums.

For example, for the device classes supported by the sensor platform, there is now a SensorDeviceClass enum. So if a sensor previously used the DEVICE_CLASS_ENERGY constant, it should now use SensorDeviceClass.ENERGY. Other platforms (like binary_sensor, and number) provide similar enumerations for their supported device classes.

The migration thus only consists of replacing constants with an enumeration member and is, therefore, very low impact and should be fairly straightforward.

If I can help resolve any questions regarding this change or migration, feel free to ask or respond to this issue. I'm happy to help!

Kindest regards,

../Frenck

Question: Thermal Disinfection control

Hello,

does anyone know how to disable automatic TDI and trigger it manually when as example enough power comes down
from the solar panels?
As for now my Heatpump starts the TDI everytime at night (Not sure which weekday) and I can't even find the setting to disable it....
The problem is that it is drawing the battery empty and it would be way more logical to start it at least at the day, but I can't find how to set the time either....

Can anyone help me with that?

Set of the target hot water temperature not working.

the reading of the hot water temperature is pretty fine. But when I want to set it with:

service: luxtronik.write
data:
  parameter: ID_Soll_BWS_akt
  value: "60.0"

The value does not change. Do I have to set anything on the heat pump?

Changed Domain Name for Entities

Hi there,

after the update to 2022.12.02 (from 0.1.30, I think...), all my entity names have changed. Instead of being prefixed with luxtronik as domain name, all are named in the sensor domain, now.

I'm not sure if this is on purpose, at least I didn't find it in the release notes. Without having tried to get a deep understanding of the code base, to me it feels it could have something to do with this change. I have cross-checked by using the sensor.py from my backup, which does not contain this change, and suddenly I had my old entity IDs back.

luxtronik addon prevents homeassistant from starting

luxtronik addon is not found by homeassistant.
im running HA 2021.10.6 in docker container.

if this is a config error on my side, please tell me where i've gone wrong. i just added this to config.yml

luxtronik:
  host: 192.168.2.110
  port: 8889

Logger: homeassistant.components.websocket_api.http.connection
Source: components/homeassistant/init.py:171
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 00:29:55 (2 occurrences)
Last logged: 21:29:21

[3868706008] The system cannot restart because the configuration is not valid: Integration error: luxtronik - Integration 'luxtronik' not found.
[3869455552] The system cannot restart because the configuration is not valid: Integration error: luxtronik - Integration 'luxtronik' not found.
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 185, in handle_call_service
await hass.services.async_call(
File "/usr/src/homeassistant/homeassistant/core.py", line 1491, in async_call
task.result()
File "/usr/src/homeassistant/homeassistant/core.py", line 1526, in _execute_service
await handler.job.target(service_call)
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 728, in admin_handler
await result
File "/usr/src/homeassistant/homeassistant/components/homeassistant/init.py", line 171, in async_handle_core_service
raise HomeAssistantError(
homeassistant.exceptions.HomeAssistantError: The system cannot restart because the configuration is not valid: Integration error: luxtronik - Integration 'luxtronik' not found.

Wrong device_class for temperature sensors

I just noticed that all my luxtronik temperature sensors have the state attribute device_class: pressure.

Before using your integration, I had an integration written by myself, which had the same name and same entity IDs. So there is a chance that it might be a leftover from back then (many months ago).

Can you confirm the device_class in your setup?

I currently don't have any customizations in Home Assistant.

Convert "Heat Amount" to "power consumption"

Hello everyone,
is there are possibility to use the Heat Amount Sensor from the Luxtronik Integration divided by the JAZ (=Jahrearbeitszahl) = Real Power Consumption.
I think that would be the better use for the Energy Dashboard.

So for example:

17.000 kWh Heat Amount : 4,8 (JAZ) = ~3500kWh real power consumption

Possible?
Thanks in advance guys and thank you very much for your awesome work!

sensor template issue

After updating to the newest version, my sensor template doesn´t work:

wmz_gesamt: friendly_name: "WMZ Gesamt" unit_of_measurement: "kWh" value_template: "{{ states('luxtronik.wmz_wasser') | float(0) + states('luxtronik.wmz_heizung') | float(0) | round(2) }}"

This template adds water and heating consumption
What is the best workaround?
Thank you :)

Integration wont work after updating

The integration do not work, an no update of the sensors will be executed.

I had a former version without hacs installed in the customer_integration. in hacs i saw there was a new version, so i decided to download the new version. since the it do not work

in the log-files i cant find any error only two warnings regarding luxtronic:

2023-02-03 20:18:02.662 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration luxtronik which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
...
2023-02-03 20:18:50.530 WARNING (MainThread) [homeassistant.components.sensor] Setup of sensor platform luxtronik is taking over 10 seconds.
...

the luxtronik-sensor. yaml
sensor:
- platform: luxtronik
scan_interval: 30
sensors:
- group: parameters
id: ID_Ba_Hz_akt
friendly_name: Betriebsart Heizung
icon: mdi:heating-coil
- group: parameters
id: ID_Ba_Bw_akt
friendly_name: Betriebsart Warmwasser
icon: mdi:water-outline
- group: parameters
id: ID_Soll_BWS_akt
friendly_name: Solltemperatur Warmwasser
icon: mdi:water-thermometer
- group: calculations
id: ID_WEB_Temperatur_TVL
friendly_name: Temperatur Vorlauf
icon: mdi:thermometer-chevron-up
- group: calculations
id: ID_WEB_Temperatur_TRL
friendly_name: Temperatur Rücklauf
icon: mdi:thermometer-chevron-down
- group: calculations
id: ID_WEB_Sollwert_TRL_HZ
friendly_name: Temperatur Rücklauf Heizung
icon: mdi:thermometer-chevron-down
- group: calculations
id: ID_WEB_Temperatur_TRL_ext
friendly_name: Temperatur Rücklauf extern
icon: mdi:thermometer-chevron-down
- group: calculations
id: ID_WEB_Temperatur_THG
friendly_name: Temperatur HG
icon: mdi:thermometer
- group: calculations
id: ID_WEB_Temperatur_TA
friendly_name: Außentemperatur
icon: mdi:thermometer
- group: calculations
id: ID_WEB_Mitteltemperatur
friendly_name: mittlere Außentemperatur
icon: mdi:thermometer
- group: calculations
id: ID_WEB_Temperatur_TBW
friendly_name: Temperatur Brauchwasser
icon: mdi:temperature-celsius

    - group: calculations
      id: ID_WEB_Einst_BWS_akt
      friendly_name: Ein
      icon: mdi:temperature-celsius
    - group: calculations
      id: ID_WEB_Temperatur_TWE
      friendly_name: Temperatur TWE
      icon: mdi:temperature-celsius
    - group: calculations
      id: ID_WEB_Temperatur_TWA
      friendly_name: Temperatur TWA
      icon: mdi:temperature-celsius
    - group: calculations
      id: ID_WEB_Temperatur_TFB1
      friendly_name: Temperatur TFB1
      icon: mdi:temperature-celsius
    - group: calculations
      id: ID_WEB_Sollwert_TVL_MK1
      friendly_name: Solltemperatur TVL MK1
      icon: mdi:temperature-celsius
    - group: calculations
      id: ID_WEB_Temperatur_RFV
      friendly_name: Temperatur RFV
      icon: mdi:temperature-celsius
    - group: calculations
      id: ID_WEB_Temperatur_TFB2
      friendly_name: Temperatur TFB2
      icon: mdi:temperature-celsius
    - group: calculations
      id: ID_WEB_Sollwert_TVL_MK2
      friendly_name: Temperatur TVL MK2
      icon: mdi:temperature-celsius
    - group: calculations
      id: ID_WEB_Temperatur_TSK
      friendly_name: Temperatur TSK
      icon: mdi:temperature-celsius
    - group: calculations
      id: ID_WEB_Temperatur_TSS
      friendly_name: Temperatur TSS
      icon: mdi:temperature-celsius
    - group: calculations
      id: ID_WEB_Temperatur_TEE
      friendly_name: Temperatur TEE
      icon: mdi:temperature-celsius

    - group: calculations
      id: ID_WEB_Zaehler_BetrZeitVD1
      friendly_name: Betriebszeit Verdichter1
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Zaehler_BetrZeitImpVD1
      friendly_name: Betriebszeit Impulverdichter1
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Zaehler_BetrZeitZWE1
      friendly_name: Betriebszeit Zusatzwärmeeinheit1
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Zaehler_BetrZeitWP
      friendly_name: Betriebszeit Wärmepumpe
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Zaehler_BetrZeitHz
      friendly_name: Betriebszeit Heizen
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Zaehler_BetrZeitBW
      friendly_name: Betriebszeit Brauchwasser
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Time_WPein_akt
      friendly_name: Zeit Wärmepumpe ein akt
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Time_ZWE1_akt
      friendly_name: Zeit Zusatzwärmeeinheit akt
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Time_SSPAUS_akt
      friendly_name: Zeit SSPaus akt
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Time_SSPEIN_akt
      friendly_name: Zeit SSPaus ein
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Time_VDStd_akt
      friendly_name: Zeit VDStd akt
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Time_HRM_akt
      friendly_name: Zeit HRM akt
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Time_HRW_akt
      friendly_name: Zeit HRW akt
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Time_LGS_akt
      friendly_name: Zeit LGS akt
      icon: mdi:clock-digital
    - group: calculations
      id: ID_WEB_Time_SBW_akt
      friendly_name: Zeit SBW akt
      icon: mdi:clock-digital

    - group: calculations
      id: ID_WEB_Code_WP_akt
      friendly_name: Wärmepumpencode
      icon: mdi:xml
    - group: calculations
      id: ID_WEB_BIV_Stufe_akt
      friendly_name: Bivalenz Level
      icon: mdi:car-coolant-level
    - group: calculations
      id: ID_WEB_WP_BZ_akt
      friendly_name: Betriebsmodus
      icon: mdi:monitor-dashboard
    - group: calculations
      id: ID_WEB_SoftStand
      friendly_name: Softwareversion
      icon: mdi:monitor-dashboard

part of the configuration.yaml
luxtronik:
host: "192.168.XXX.XXX"
port: 8889

i have no glue what i can do to check whats is going wrong.
i hope you can helb me.
BR

Error during setup of component luxtronik

Hi @Bouni,

Thanks for making this integration! It's much appreciated that you take the time to connect my device.

I've installed the custom components (upload the files) and I've done the settings in configuration.yaml. However, I keep getting this error when I start HA. I can't find the cause of this issue and I don't see anything that I'm doing wrong (although that might be the case). What the issue here?

2021-12-21 12:21:42 ERROR (MainThread) [homeassistant.setup] Error during setup of component luxtronik
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/setup.py", line 229, in _async_setup_component
result = await task
File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/luxtronik/init.py", line 72, in setup
luxtronik = LuxtronikDevice(host, port, safe, lock_timeout)
File "/config/custom_components/luxtronik/init.py", line 99, in init
self._luxtronik = Lux(host, port, safe)
File "/usr/local/lib/python3.9/site-packages/luxtronik/init.py", line 25, in init
self.read()
File "/usr/local/lib/python3.9/site-packages/luxtronik/init.py", line 39, in read
self._read_parameters()
File "/usr/local/lib/python3.9/site-packages/luxtronik/init.py", line 66, in _read_parameters
cmd = struct.unpack(">i", self._socket.recv(4))[0]
struct.error: unpack requires a buffer of 4 bytes

Integration hangs after writing - write / read at the same time?

Sometimes the integration stops working.
No state updates since 20:07:42
image
--- Log:
2020-11-05 20:07:42 INFO (MainThread) [homeassistant.components.automation.a_heizung_aufheizen] z Heizung 8 Springt an --> Aufheizen WP->HA: Running automation actions
2020-11-05 20:07:42 INFO (MainThread) [homeassistant.components.automation.a_heizung_aufheizen] z Heizung 8 Springt an --> Aufheizen WP->HA: Executing step call service
2020-11-05 20:07:42 INFO (MainThread) [homeassistant.components.automation.a_heizung_aufheizen] z Heizung 8 Springt an --> Aufheizen WP->HA: Executing step call service
2020-11-05 20:07:42 ERROR (MainThread) [homeassistant.helpers.entity] Update for luxtronik.betriebsstunden_gesamt fails
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 278, in async_update_ha_state
await self.async_device_update()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 474, in async_device_update
raise exc
File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/luxtronik/sensor.py", line 118, in update
self._luxtronik.update()
File "/usr/src/homeassistant/homeassistant/util/init.py", line 239, in wrapper
result = method(*args, **kwargs)
File "/config/custom_components/luxtronik/init.py", line 111, in update
self._luxtronik.read()
File "/usr/local/lib/python3.8/site-packages/luxtronik/init.py", line 39, in read
self._read_parameters()
File "/usr/local/lib/python3.8/site-packages/luxtronik/init.py", line 68, in _read_parameters
length = struct.unpack(">i", self._socket.recv(4))[0]
OSError: [Errno 9] Bad file descriptor
--- sensors.yaml:

  • platform: luxtronik
    scan_interval: 60
    sensors:
    • id: ID_WEB_Zaehler_BetrZeitWP
      group: calculations
      friendly_name: Betriebsstunden Gesamt
      --- Automation Source:
  • id: '1600113956392'
    alias: z Heizung 8 Springt an --> Aufheizen WP->HA
    description: Sollkurve höher setzen
    trigger:
    • entity_id: luxtronik.status
      platform: state
      condition:
    • condition: not
      conditions:
      • condition: state
        entity_id: luxtronik.status
        state: no request,evu,defrost,cooling
        action:
    • data_template:
      entity_id: input_number.heating_temperatur
      value: 0.5
      service: input_number.set_value
    • data_template:
      parameter: ID_Einst_WK_akt
      value: 0.5
      service: luxtronik.write
      mode: single

Warmwater circulation pump (Question)

Hi,

is it possible manually turn of/off the warmwater circulation pump? I'd like to turn if off, whenever there's nobody home and turn it back on, once sombody returns.

Thanks

Set desired room temperature via luxtronik.write

Hi @Bouni ,

Thank you for your hard work and this awesome component! I'm using it to read data from my Alpha Innotec WZSV62K3M heat pump and show it in Home Assistant. It's working wonderfully.

Some time ago, I've made automations to be able to set the heating and hot water mode to a different value (Automatic / Second heatsource / Party / Holidays) so I could suspend the heat pump when on vacation. This works wel..

Today, I was trying to set the desired room temperature of the living room but unfortunately, writing a different value to parameter ID_WEB_RBE_RT_Soll didn't work.

Request:

service: luxtronik.write
data:
  parameter: ID_WEB_RBE_RT_Soll
  value: "20"

Response:

2022-09-14 19:59:13.644 WARNING (SyncWorker_4) [Luxtronik.Parameters] Parameter 'ID_WEB_RBE_RT_Soll' not found
2022-09-14 19:59:13.661 WARNING (SyncWorker_4) [Luxtronik.Parameters] Parameter 'ID_WEB_RBE_RT_Soll' not found

I've double checked the parameter name with the parameters on the Loxwiki page but everything seems to be alright.

Can you help me set the desired room temperature via an automation ?

Thanks!

missing sensor and unit of operating hours

Hello Bouni,
i currently have 2 problems with the luxtronik integration.

  1. the sensor "ID_WEB_Temperatur_TRL" is not displayed, the log says the following
    image

  2. the operating hours are shown in seconds, there is a possibility to change them in hours?
    image

i hope you can help me. thx

No Adapter Connect

Hi, everyone. I'm just switching from FHEM and IObroker to Hass.io. I was always used to using port 8888 and a password. I can't get a connection to Luxtronik with the small part in the Yaml file and the installation. Is there another trick ?

Not in list

Heyho I just noticed some errors popping up in my logs:

Logger: Luxtronik.Visibilities
Source: /usr/local/lib/python3.9/site-packages/luxtronik/visibilities.py:377
First occurred: 14. April 2022, 17:53:28 (2069 occurrences)
Last logged: 20:54:38

Visibility '355' not in list of visibilities

Logger: Luxtronik.Calculations
Source: /usr/local/lib/python3.9/site-packages/luxtronik/calculations.py:309
First occurred: 14. April 2022, 17:53:28 (6207 occurrences)
Last logged: 20:54:38

Calculation '260' not in list of calculationss
Calculation '261' not in list of calculationss
Calculation '262' not in list of calculationss

Logger: Luxtronik.Parameters
Source: /usr/local/lib/python3.9/site-packages/luxtronik/parameters.py:1165
First occurred: 14. April 2022, 17:53:28 (2069 occurrences)
Last logged: 20:54:38

Parameter '1126' not in list of parameters

At the moment this is my config:

  • platform: luxtronik
    scan_interval: 30
    sensors:
    - id: ID_WEB_Temperatur_TA
    friendly_name: Aussentemperatur_raw
    group: calculations
    - id: ID_Soll_BWS_akt
    friendly_name: Haus_Warmwasser_Soll
    group: parameters
    - id: ID_WEB_Temperatur_TVL
    friendly_name: Haus_Vorlauf
    group: calculations
    - id: ID_WEB_Temperatur_TRL
    friendly_name: Haus_Ruecklauf
    group: calculations
    - id: ID_WEB_Temperatur_TBW
    friendly_name: Haus_Warmwasser_Ist
    group: calculations
    - id: ID_Ba_Hz_akt
    friendly_name: Haus_Heating_Circuit
    group: parameters
    - id: ID_Ba_Bw_akt
    friendly_name: Haus_Warmwasser_Circuit
    group: parameters
    - id: ID_WEB_WP_BZ_akt
    friendly_name: Haus_Current_State
    group: calculations

Unit of datatype Power/Frequency missing

I am using the calculation "Heat_Output" and it doesn't show correctly in Home Assistant (Wrong graph, no unit of measurement)
I guess the "Power" Datatype should be defined in const.UNITS or DEVICE_CLASSES?
heat

Defrost

Does anyone know if those values are available in any of the calculations or visibilities?
image

There are some variables which contain "Abtau" in the name. I tried all of them but none seems to have those values.
Actually I tried without sucess all the calculations and visibilities which are not known,

Seems to have a problem with Alpha innotec MSW2-6S ?

Hi, Just installed hacs, and your luxtronic addon.
Added this to my configuration.yaml:
luxtronik:
host: 192.168.1.221
port: 8889

When i go to http://192.168.1.221 i will get a web interface, the default password is "999999"
Portscan result open port 22,80,502

Is this luxtronik addon not for my heatpump?

Heatpump: Alpha innotec MSW2-6S
Software version V3.85.6 (r6445)

Luxtronik integration not found anymore

On HA 2021.12.9

After upgrading to 0.1.22 the configuration check of HA gives this error:

Integration error: luxtronik - Integration 'luxtronik' not found. Platform error binary_sensor.luxtronik - Integration 'luxtronik' not found. Platform error sensor.luxtronik - Integration 'luxtronik' not found.

Reinstalling and downgrading doesn't work.

Automation problem

I can also change these values with the Alpha app.
But these changes are not show in the corresponding input_number.
I have therefor this code:

#if value on Luxtronik changes: set value on slider
automation:

  • alias: set slider
    trigger:
    platform: state
    entity_id: sensor.luxtronik.ID_Einst_WK_akt
    action:
    service: input_number.set_value
    data:
    entity_id: input_number.stooklijn_verschuiving
    value: "{{ states(sensor.luxtronik.ID_Einst_WK_akt) }}"

But I get the error:
ERROR (MainThread) [homeassistant.config] Invalid config for [automation]: Entity ID sensor.luxtronik.ID_Einst_WK_akt is an invalid entity id for dictionary value @ data['entity_id']. Got None. (See ....configuration.yaml, line 21).

What am I doing wrong??

Originally posted by @Cees-van-Beek in #5 (comment)

Error: [invert] is an invalid option for [sensor.luxtronik]

ID_WEB_EVUin seems to be an inverted boolean signal, which I tried to invert with the mentioned option "invert: true":

      - group: calculations
        id: ID_WEB_EVUin
        friendly_name: WP EVU Sperre
        invert: true

Unfortunately this doesn't seem to work and I'm always getting this error:
ERROR (MainThread) [homeassistant.config] Invalid config for [sensor.luxtronik]: [invert] is an invalid option for [sensor.luxtronik].

Luxtronic Version: 2022.12.02
Home Assistant Version: 2022.12.7

PS: @Bouni: amazing integration, thank you so much for this! Going now to find out how to buy you a ko-fi 😉

Debug function to write all sensors to log.

Is there a way that i can write all sensor data to a log. i am trying to look for some specifix sensor values. or if anyone by any chance know the id of the one where you increase the temperature setpoint for up to 5 degress temporarily.

my issue is that the outside temperature compensation dosnt take in account wind and this house isnt that good insulated so i need more water temperature. if its windy

Configure unknown parameters

Hi,

i'm stuck with my configuration by HA, because they are uknown parameters and ican tell you what you have to configure by which ID.

So here is the list:

  • ID_Einst_HzHwHKE_akt
  • ID_Einst_HzHKRANH_akt
  • ID_Einst_HzHKRABS_akt
  • ID_Einst_Heizgrenze_Temp

All these parameters are tempherature sensors and should be configured this way.

Thank you in advance.

Luxtronik 2.0 Firmware 1.8, Java Applet Webinterface

Hi there,
My Luxtronik 2.0 has the firmware 1.8. This works with a Java Applet (port 8889) for the web Interface. Is this supported? Because I have problems at the moment to connect to it. With FHEM there is no Problem to connect to.

Does anybody know about this issue?

Logger: homeassistant.setup
Source: custom_components/luxtronik/__init__.py:99 
Integration: luxtronik 
First occurred: 9:00:40 (1 occurrences) 
Last logged: 9:00:40
Error during setup of component luxtronik
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 255, in _async_setup_component
    result = await task
  File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/luxtronik/__init__.py", line 72, in setup
    luxtronik = LuxtronikDevice(host, port, safe, lock_timeout)
  File "/config/custom_components/luxtronik/__init__.py", line 99, in __init__
    self._luxtronik = Lux(host, port, safe)
  File "/usr/local/lib/python3.9/site-packages/luxtronik/__init__.py", line 25, in __init__
    self.read()
  File "/usr/local/lib/python3.9/site-packages/luxtronik/__init__.py", line 38, in read
    self._connect()
  File "/usr/local/lib/python3.9/site-packages/luxtronik/__init__.py", line 29, in _connect
    self._socket.connect((self._host, self._port))
OSError: [Errno 101] Network unreachable

integration is not setting up

I installed this integration through HACS and inputed the ip and port in the config, but the its taking ages to load and in the end i get this Error:
Setup of luxtronik is taking longer than 300 seconds. Startup will proceed without waiting any longer

Old Entity remains after renaming 'friendly_name'

In a 1st step I insert the sensor as documented:

# Example configuration.yaml entry
sensor:
  - platform: luxtronik
    sensors:
      - group: calculations
        id: ID_WEB_Temperatur_TVL
        friendly_name: Temperature forerun
        icon: mdi:thermometer

Everything works fine. I changed the 'friendly_name' to the German equivalent:

[...]
      - group: calculations
        id: ID_WEB_Temperatur_TVL
        friendly_name: Temp Vorlauf
        icon: mdi:thermometer

After rebooting HA, the Entity with the German name showed up and was correct. However, the English entity entry still exists but isn't updated anymore.

This is my configuration:

version: core-2022.4.6
installation_type: Home Assistant OS
dev: false
hassio: true
docker: true
virtualenv: false
python_version: 3.9.9
os_name: Linux
os_version: 5.10.103-v8
arch: aarch64
host_os: Home Assistant OS 7.6
update_channel: stable
supervisor_version: supervisor-2022.04.0
docker_version: 20.10.9
disk_total: 457.7 GB
disk_used: 7.8 GB
healthy: true
supported: true
board: rpi4-64
supervisor_api: ok
version_api: ok
installed_addons: File editor (5.3.3), Samba share (9.5.1), Terminal & SSH (9.3.0), Mosquitto broker (6.0.1), Node-RED (11.1.1)

Add second heatpump

How can I connect to a second heatpump on same network (with other IP-address)?

I duplicated the luxtronik folder under custom_components and named it luxtronik2, but when I want to use it ,this happens:

Integration 'luxtronik2' not found.

Does somebody know whats wrong?

Incorrect sensor readout by home assistant

After updating to the latest version some sensors are broken

These 2 report invalid timestamp, the value should be number of hours

group: parameters
id: ID_Einst_Kuhl_Zeit_Ein_akt
friendly_name: Koeling aan na BT overschrijding

- group: parameters
  id: ID_Einst_Kuhl_Zeit_Aus_akt
  friendly_name: Koeling uit na BT onderschrijding

These ones are being read as days into the past/future but should be seconds

group: calculations
id: ID_WEB_Time_WPein_akt
friendly_name: Warmtepomp loopt

group: calculations
id: ID_WEB_Time_LGS_akt
friendly_name: Thermische desinfectie since

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.