skillfed

pystiebeleltron

Python API for interacting with the Stiebel Eltron ISG web gateway via Modbus for controlling integral ventilation units and heat pumps.

pystiebeleltron v0.7.0 75.7K downloads/30d#14,683 on PyPI7
Permissive license MIT Active released

What it is and what it does

pystiebeleltron is a Python client library for the STIEBEL ELTRON ISG WEB gateway, an internet-connected controller for heat pumps and ventilation systems. It wraps the Modbus protocol to expose the gateway's registers as typed Python attributes, allowing you to read sensor values (outside temperature, comfort settings) and write control parameters (target temperatures) asynchronously. The library is based on the official Modbus user manual but is not endorsed by Stiebel Eltron.

You own the Modbus connection: you create it using modbus-connection and pymodbus, hand a unit to the API, and close it when done. The first read establishes the link; if it drops, the next request re-establishes it automatically. Each register block maps to a component on the API (system_values, system_parameters, etc.), and values are typed attributes that return None when unavailable.

Use it for:

  • Read real-time sensor data (outside temperature, system status) from a heat pump for monitoring dashboards.
  • Adjust comfort temperature setpoints or other control parameters remotely via Python scripts.
  • Integrate STIEBEL ELTRON heat pumps into home automation or IoT platforms that use Python.
  • Build custom automation logic that responds to heat pump state changes.
  • Monitor and log heat pump performance metrics over time for analysis.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides a Python API to communicate with STIEBEL ELTRON ISG web gateways over Modbus, enabling control of heat pumps and ventilation units.

Yes, if you own a compatible STIEBEL ELTRON ISG WEB gateway with Modbus enabled and need Python-based control. The package is actively maintained, has no known vulnerabilities, uses a permissive MIT license, and requires Python 3.12 or later. The main constraint is hardware dependency—you must have the specific gateway and a compatible heat pump model.

Install

pystiebeleltron on PyPI

pip

pip install pystiebeleltron

uv

uv add pystiebeleltron

poetry

poetry add pystiebeleltron

Installing pystiebeleltron

Before you install

Low friction installation with a pure-Python wheel. Actively maintained with release on 2026-08-12. Requires Python 3.12 or later and two runtime dependencies (modbus-connection and pymodbus).

License in practice

MIT license permits unrestricted use, modification, and distribution with minimal restrictions—suitable for both personal and commercial projects.

Quickstart

pip install pystiebeleltron

import asyncio
from modbus_connection import ModbusTcpParams
from modbus_connection.pymodbus import ModbusConnection
from pystiebeleltron.wpm import WpmStiebelEltronAPI

async def main():
  connection = ModbusConnection(ModbusTcpParams(host='ISG_ADDRESS', port=502))
  api = WpmStiebelEltronAPI(connection.for_unit(1))
  await api.async_update()
  print(api.system_values.outside_temperature)
  await connection.close()

asyncio.run(main())

Requires a STIEBEL ELTRON ISG WEB gateway with Modbus module enabled and network connectivity to it; Python 3.12 or later required.

Verify before relying

  • Compatibility with specific heat pump models beyond LWZ504e and LWZ304 mentioned in the description.
  • Whether the package handles automatic reconnection if the Modbus link drops during operation.
  • Full list of supported STIEBEL ELTRON device models and controller variants.

Package facts

License MIT (permissive)
Python support supports the current Python release (<4,>=3.12)
Install friction low — pure-Python wheel
Runtime dependencies 2 — modbus-connection, pymodbus
Maintenance actively maintained — 2 days since the last release
Last repo commit
First released
Downloads 75,731/month — #14,683 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pystiebeleltron-0.7.0-py3-none-any.whl

Keywords: modbus, stiebel-eltron, tecalor

Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Typing :: Typed

Tags

stiebel eltron modbus controlheat pump api pythonisg web gateway modbusventilation unit controlstiebel eltron integrationmodbus heat pumphome automation hvac
modbushome-automationhvac

More Monitoring packages