Documentation (installation, settings, all devices, troubleshooting) | GitHub repository (releases and issues)
The repository was renamed from luxtronik-domoticz-plugin-v2 to luxtronik-domoticz-plugin. Old links and existing git clones keep working through GitHub's redirect, but please use the new address.
This plugin is a rewrite of my original Luxtronik plugin on the DomoticzEx framework. The original had a 256-device limit, device IDs that could change and leave orphaned devices, COP values logged while idle that skewed the statistics, and no support for more than one heat pump. This version fixes all of these.
Features
- Stable device IDs: tied to the Domoticz hardware entry, so they survive restarts, IP changes, folder changes and upgrades
- COP tracking: separate COP for heating, DHW and combined, only reported during steady-state operation
- Pump power compensation: the controller only measures compressor power. Pick your WZSV model (62, 92, 122, 162) or enter your own pump values, and the plugin adds the estimated circulation and brine pump power for a true system COP
- Gated sensors: pressure, superheat, ΔT and the refrigerant diagnostics only update while the compressor runs, keeping your statistics clean
- Refrigerant diagnostics: condensing temperature, refrigerant lift, condensing-supply ΔT, discharge headroom and compression ratio
- Your device names are kept: a device you renamed is never renamed back, also not when you change the plugin language
- Update check: once a day the plugin checks GitHub and announces a new release once, in the log and through your Domoticz notification systems. It sends nothing about you or your heat pump, never installs anything, and can be limited to stable releases or turned off
- Multi-instance: one hardware entry per heat pump
- Write protection: every write is checked against an explicit allowlist of safe addresses
- Languages: English, Polish, Dutch, German and French; by default device names follow the Domoticz interface language
- Domoticz 2026.1 or newer (the settings page uses named plugin settings)
- Python 3.11 or newer
- A Luxtronik-based controller reachable on your network (port 8889 by default)
Installation
Pick one; all of them install into plugins/luxtronikex. Keep only one copy of the plugin, because Domoticz loads every plugins/*/plugin.py it finds.
Release zip (no git needed): download luxtronikex-vX.Y.Z.zip from the Releases page of the repository and extract it into your plugins folder.
Git, with easy updates:
Code: Select all
cd /path/to/domoticz/plugins
git clone -b dist https://github.com/Rouzax/luxtronik-domoticz-plugin.git luxtronikex
# update later with: cd luxtronikex && git pullThen restart Domoticz, go to Setup → Hardware, add Luxtronik Heat Pump Controller v2 and enter the IP address of your heat pump. The other settings work as they are; if you have a WZSV, set Pump power compensation to your model.
Upgrading from 2.2.x or older
Version 3.0.0 moved the settings to new fields. Your previous values stay in use until you next save the hardware page, but that page shows the defaults. Choose your values again before pressing Update; the plugin lists your old values in the log at every start until you do. IP address and port are not affected. Devices and history are kept.
Devices
The plugin creates 68 devices in 14 groups. Some are created as unused; enable them in Domoticz if you want them.
Code: Select all
Group | Units | Description
-------------------|-----------|---------------------------------------------
Status | 1 | Working mode (Heating/DHW/Cooling/Idle)
Controls | 10-16 | Heating mode, DHW mode, cooling, setpoints
Power Input | 30-32 | Electrical consumption (total, heating, DHW)
Heat Output | 40-42 | Thermal energy produced (total, heating, DHW)
Efficiency | 50-52 | COP (total, heating, DHW), gated
Heating Circuit | 60-67 | Supply/return temps, ΔT, pump speed, flow
DHW | 80 | Hot water tank temperature
Environment | 90-93 | Outside temp, room temp and targets
Source Circuit | 100-106 | Brine/ground loop temps, ΔT, pump, flow
Mixing Circuits | 120-131 | MC1 and MC2 temperatures
Compressor | 140-145 | Frequency, targets, capacity, freq headroom
Refrigerant | 160-174 | Temps, pressures, superheat, diagnostics
Statistics | 180-185 | Runtime hours, start count, last cycle
Diagnostics | 200-202 | Error count, cooling permitted, cooling releaseThe two plugins use different keys (luxtronik and luxtronikex), so they can run side by side while you migrate. SQL scripts copy temperature history, energy meters, percentages and switch logs to the new devices. They match devices by unit number, not by name, so your language setting does not matter.
The migration folder is not in the release zip or the lean branch; download it from the repository's main branch. Then, from the folder that holds domoticz.db:
Code: Select all
sudo systemctl stop domoticz
cp domoticz.db domoticz.db.backup
sqlite3 domoticz.db < migration/discover.sql # optional preview
sqlite3 domoticz.db < migration/migrate.sql
sudo systemctl start domoticzTip for accurate COP averages
Enable Setup → Settings → Log History → "Only add newly received values to the Log". Otherwise Domoticz repeats the last value every 5 minutes while the heat pump is idle, which dilutes your daily and monthly COP. This setting affects all devices, not just this plugin.
Troubleshooting
The documentation has a troubleshooting page organised by symptom. For logs, set Debug level on the hardware page: Basic (lifecycle and summaries), Basic + Device (adds device updates), Basic + Comms (adds connection and protocol details), Basic + Device + Comms, or All (also adds conversions and gating decisions, and fills the log quickly). Set it back to None afterwards. When reporting a problem, please include the log lines and your plugin version, either here or as a GitHub issue.
Screenshots
Power, heat output, COP, circuits and pumps Temperature sensors Working mode, controls and setpoints