Skip to content

Kars-de-Jong/luxtronik

 
 

Repository files navigation

Luxtronik

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

⚠️ Use at your own risk! ⚠️
You can write config parameters to your heatpump, altering it's efficiency and functionality.
Please be careful.

Based on Bouni/luxtronik / Bouni/python-luxtronik. ❤️

This component extends the original luxtronik component with automatic discovery of the heatpump und home assistant climate thermostat. The Luxtronik integration lets you monitor and control heat pump units containing a Luxtronik controller. It is used by various manufacturers such as:

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

This integration works locally. It's only necessary to connect the Luxtronik controller to your network using an ethernet cable. No additional hard- or software is needed.

  1. Installation
    1.1 HACS (Recommended)
    1.2 Manual installation
  2. Adding Luxtronik
  3. Tips for using Luxtronik
    3.1 Energy use
    3.2 Additional sensors (advanced)

1. Installation

1.1 HACS (recommended)

Add the custom repo to HACS

  1. Go to 'HACS > Integration'
  2. Select 'Custom repositories' from the top right menu
  3. Under Repository, enter 'https://github.com/BenPru/luxtronik'
  4. Under Category, select 'Integration'
  5. Click 'Add' The new integration will appear as a new integration and under 'Explore & Download Repositories' in the bottom right

Install the integration

  1. Click on the new integration or find it under 'Explore & Download Repositories' in the bottom right
  2. Select 'download' at the bottom right.
  3. Restart Home Assistant

1.2 Manual installation

Add the integration to Home Assistant

  1. Download the latest release of the Luxtronik integration from this repository
  2. In Home Assistant, create a folder 'config/custom_components'
  3. Add the Luxtronik integration to the 'custom_components' folder;
  4. Restart Home Assistant;

Install the integration

  1. Add the Luxtronik integration to Home Assistant (Settings -> Devices & services -> Add integration);
  2. Restart Home Assistant;

2. Adding Luxtronik

Autodiscovery

Your heatpump should be autodiscovered by home assistant.

Press Configure and follow the steps to the end.

Manual

'If auto discovery does not work, please give feedback with the first six chars of your luxtronik heatpump mac address, the original hostname, the manufacturer and model.

To add the heatpump manually go to Settings -> Devices & services -> Add integration and add a new Luxtronik device.'

Select Configure and review the settings.

ℹ️ Ensure the IP address is static. This can be configured in your router.'

3. Tips for using Luxtronik

It's not always clear from the name alone what an entity exactly means and how it effects your heatpump. The main source of information is ofcourse the Luxtronik Operating Manual.

Another great source is FHEM - Luxtronik 2.0. It's in German so use Google Translate.
It contains details about the various parameters and how to use them to optimize your heatpump efficiency. Read carfully though. Make small incremental changes and monitor your progress in Home Assistant. You don't want to miss out on this information.

3.1 Energy use

Not all heatpumps have build in electrical energy metering and instead only show the energy produced in heat, not the energy consumed in electricity. Adding a (strong) energy meter is a nice addition to measure the SCOP of your device. Shelly energy meters are recommended since they offer offer a 16A power plug and a variety of in-line or clamp energy meters with various protection mechanisms.

3.2 Additional aensors (advanced)

The most usefull sensors and parameters are created automaticly. But if you miss a sensor you can add it manually via yaml configuration like the original module from Bouni/luxtronik.

A short description of many of the available sensors can be found here Loxwiki - Luxtronik Java Web Interface

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: luxtronik2
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

ℹ️ 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.

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: luxtronik2
    sensors:
      - group: calculations
        id: ID_WEB_Temperatur_TVL
  • group:
    • description: Value group where the ID is located, possible values are calculations, parameters, visibilities.
    • required: false, if group is provided in id.
    • type: string
  • id:
    • description: The id of the value or the group.id (calculations, parameters, visibilities). e.g. calculations.ID_WEB_Temperatur_TVL
    • 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, sensor.luxtronik2_id_webemperatur_tvl for example, otherwise sensor.luxtronik2_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: luxtronik2
    sensors:
      - group: calculations
        id: ID_WEB_Temperatur_TVL
      - id: calculations.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: luxtronik2
    sensors:
      - group: calculations
        id: ID_WEB_EVUin
  • group:
    • description: Value group where the ID is located, possible values are calculations, parameters, visibilities.
    • required: false, if group is provided in id.
    • type: string
  • id:
    • description: The id of the value or the group.id (calculations, parameters, visibilities). e.g. calculations.ID_WEB_Temperatur_TVL
    • 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, sensor.luxtronik2_id_web_evuin for example, otherwise sensor.luxtronik2_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: luxtronik2
    sensors:
      - group: calculations
        id: ID_WEB_EVUin
      - id: calculations.ID_WEB_EVUin
        friendly_name: Utility company lock
        icon: mdi:lock

Some Screenshots

image image image image image image

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%