A Python library for accessing Remeha heating systems via Modbus TCP (GTW-08 gateway)
Project description
remeha_modbus
Python library for accessing Remeha heating systems via Modbus TCP (GTW-08 gateway).
Designed to be used standalone or as the backend for a Home Assistant custom integration.
Features
- Async Modbus TCP client based on
pymodbus - Full register definitions from the GTW-08 parameter list
- Automatic value scaling (gain) and signed integer handling
- Invalid value detection (returns
Nonefor disconnected sensors) - Support for all 12 heating zones
- Read/Write access for configurable parameters
Supported Registers
| Chapter | Description | Addresses |
|---|---|---|
| System Discovery | Device info, zone count | 128 - 200 |
| Main Controller | Setpoints, temperatures, status | 256 - 352 |
| Appliance | Temperatures, pressures, counters | 384 - 503 |
| Maintenance | Service info, error codes | 512 - 551 |
| Zones (1-12) | Per-zone temps, setpoints, programs | 640 - 6783 |
Installation
pip install remeha-modbus
Or for development:
git clone https://github.com/klacol/remeha-modbus.git
cd remeha-modbus
pip install -e ".[dev]"
Usage
import asyncio
from remeha_modbus import RemehaModbusClient
async def main():
client = RemehaModbusClient(host="192.168.1.100", port=502, slave_id=1)
await client.connect()
# Read all appliance sensors
data = await client.read_appliance()
print(f"Vorlauftemperatur: {data['flow_temperature']} °C")
print(f"Wasserdruck: {data['water_pressure']} bar")
# Read a specific zone
zone1 = await client.read_zone(1)
print(f"Zone 1 Modus: {zone1['zone1_zone_mode']}")
await client.disconnect()
asyncio.run(main())
Testing
pytest tests/ -v
Tests use mocked Modbus responses so no hardware is needed.
Hardware Setup
Requires a Remeha GTW-08 Modbus gateway connected to the heating system's L-Bus. The gateway provides Modbus TCP access over Ethernet.
- Set the Modbus address via the GTW-08 rotary switch
- Default port: 502
- Supported baud rates: 9600, 19200, 38400, 57600
Reference
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file remeha_modbus-0.2.0.tar.gz.
File metadata
- Download URL: remeha_modbus-0.2.0.tar.gz
- Upload date:
- Size: 13.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
01bc3c446603c03bcd541831f39857c5862637a7eda36078e01dbc7becd98cf2
|
|
| MD5 |
1312a29264682d01da3fba5b35745c6e
|
|
| BLAKE2b-256 |
a5c77f354d4baa2b80a79b0ea82f53d87bb1a2dc11bb53fde4cc81b2705acb94
|
File details
Details for the file remeha_modbus-0.2.0-py3-none-any.whl.
File metadata
- Download URL: remeha_modbus-0.2.0-py3-none-any.whl
- Upload date:
- Size: 11.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
41a36bbcffb78f323264fa88942d8faa49869fbd8c16e1e0290888ea8fe48492
|
|
| MD5 |
f9cc4879ba70d64b5e87c8f8da82c76b
|
|
| BLAKE2b-256 |
f8cd01acad2cb13c6a429225fe1d887b6d76a029d687c536f8c6a36deb1ae4e3
|