---
title: "solvimus MBUS-GEM – M-Bus-Wärmezähler"
description: "M-Bus-Wärmezähler in TapHome über das Gateway solvimus MBUS-GEM per Modbus TCP lesen — Wärmeenergie, Volumen, Leistung, Durchfluss, beide Temperaturen."
url: "https://taphome.com/de/compatibility/solvimus-mbus-gem-m-bus-heat-meter/"
language: de
lastmod: 2026-11-05
generator: hugo
ai:
  topics: ["modbus-tcp","sensor","m-bus","gateway","heat-meter","energy-metering","din-rail"]
  questions: ["Wie verbinde ich einen M-Bus-Wärmezähler mit TapHome?","Hat TapHome eine M-Bus-Schnittstelle?","Wie integriere ich das Gateway solvimus MBUS-GEM in TapHome?","Was liest die TapHome-Vorlage für einen M-Bus-Wärmezähler?","Welche Registernummern trage ich in der Vorlage für das MBUS-GEM ein?","Warum zeigt ein Gerät der Wärmezähler-Vorlage einen Fehler, der RegPower oder RegEnergy nennt?"]
---

# solvimus MBUS-GEM – M-Bus-Wärmezähler

Kommunikation: Modbus TCP

- [Offizielle Website von solvimus](https://www.solvimus.de/en/homepage/)
- [Produktseite solvimus MBUS-GE20M / MBUS-GE80M](https://www.solvimus.de/en/product/mbus-ge20m-mbus-ge80m-2/)

TapHome hat keine eigene M-Bus-Schnittstelle. Wärmezähler mit drahtgebundenem M-Bus (EN 13757) werden über ein Gateway angeschlossen, das M-Bus in [Modbus](https://taphome.com/de/docs/integration/modbus/) umsetzt, und TapHome liest sie dann als Modbus-TCP-Geräte. Diese Community-Vorlage nutzt das Gateway solvimus MBUS-GEM (MBUS-GE20M, MBUS-GE80M, MBUS-GE125M, MBUS-GE250M, MBUS-GE500M): Das Gateway liest die Zähler an seinem M-Bus und stellt ihre Werte als Modbus-TCP-Server auf Port 502 bereit.

Die Vorlage liest einen Wärmezähler (oder einen kombinierten Wärme- und Kältezähler): Wärmeenergie in kWh, Heizwasservolumen, Wärmeleistung, Volumenstrom sowie Vorlauf- und Rücklauftemperatur. Ein importiertes Modul steht für einen Zähler; für jeden weiteren Zähler wird die Vorlage erneut importiert. Die Wärmeenergie ist eine einfache Variable, kein Stromzähler, daher rechnet TapHome sie nie zum Stromverbrauch.

> [!WARNING]
> **Community-Vorlage — mit TapHome an einem Gateway noch nicht getestet.** Die Vorlage wurde nach dem Benutzerhandbuch des MBUS-GEM erstellt und lief weder gegen ein Gateway noch gegen einen Wärmezähler oder einen Simulator. Ihre Registernummern sind Platzhalter, die durch die Nummern ersetzt werden müssen, die das Gateway für Ihren Zähler anzeigt (siehe Konfiguration). Rückmeldungen aus der Praxis sind willkommen. Laden Sie das XML auf dieser Seite herunter oder holen Sie es aus dem TapHome-Portal: [solvimus MBUS-GEM – M-Bus heat meter — Community-Vorlage](https://portal.taphome.com/portal/community/solvimus-mbus-gem-m-bus-heat-meter), und importieren Sie es als neues Modul.

**[solvimus MBUS-GEM – M-Bus heat meter](https://portal.taphome.com/de/portal/community/solvimus-mbus-gem-m-bus-heat-meter)** — solvimus, Modbus TCP. Wired M-Bus heat meter via solvimus MBUS-GEM Modbus TCP gateway: energy kWh, power, volume, flow, flow and return temperature.

## Was Sie brauchen

- **Gateway solvimus MBUS-GEM** — MBUS-GE20M (20 Lasteinheiten), MBUS-GE80M (80), MBUS-GE125M (125), MBUS-GE250M (250) oder MBUS-GE500M (500). Eine Lasteinheit entspricht meist einem Zähler.
- **Einen Wärmezähler mit drahtgebundenem M-Bus** (EN 13757) am M-Bus des Gateways, oder einen kombinierten Wärme- und Kältezähler.
- **Das Gateway und den TapHome Core im selben lokalen Netzwerk.**

## Hardware-Anschluss

Das MBUS-GEM wird auf eine 35-mm-Hutschiene montiert. Die M-Bus-Leitungen der Zähler gehen an die M-Bus-Schraubklemmen des Gateways, das Netzwerk an seinen RJ45-Ethernet-Port (10/100 Mbit/s). Das Gateway braucht eine externe Gleichspannungsversorgung: 21,6–24,5 V DC für MBUS-GE20M und MBUS-GE80M, 12–36 V DC für MBUS-GE125M, MBUS-GE250M und MBUS-GE500M. Es startet von selbst, sobald die Versorgung angeschlossen ist.

## Konfiguration

### Netzwerkadresse des Gateways

Das MBUS-GEM wird mit der statischen IP-Adresse **192.168.1.101** ausgeliefert (Subnetzmaske 255.255.255.0, Standardgateway 192.168.1.254). Seine Konfigurationswebseite öffnet sich unter `http://192.168.1.101/`; bei der ersten Anmeldung muss der Administrator das Passwort ändern. Das solvimus-Tool **Netdiscover** findet das Gateway im Netzwerk und ändert seine IP-Adresse, Subnetzmaske und sein Standardgateway oder schaltet es auf DHCP um. Mit DHCP findet man die dem Gateway zugewiesene Adresse im DHCP-Server anhand seiner MAC-Adresse, die auch Netdiscover anzeigt. Ohne DHCP-Server wählt das Gateway eine Adresse aus 169.254.x.x.

Die Vorlage spricht das Gateway über seine IP-Adresse an; geben Sie ihm daher eine statische Adresse oder reservieren Sie seine Adresse im DHCP-Server.

### Einstellungen des Gateways

Auf der Konfigurationswebseite, Tab **Server**:

1. **Modbus mode** auf Modbus TCP stellen und **Modbus port** auf 502 lassen.
2. **Modbus float only** ausgeschaltet lassen. Dieser Modus entfernt die Typ- und Einheitenfelder, die die Vorlage prüft.
3. **Modbus swap** ausgeschaltet lassen. Die Vorlage erwartet die Standard-Wortreihenfolge (höchstwertiges Wort zuerst).
4. **Modbus multi slave** einschalten (empfohlen). Jeder Zähler wird dann ein eigener virtueller Modbus-Slave mit eigener Adresse (1–247), und die Registernummerierung beginnt für jeden Zähler neu, sodass Zähler desselben Typs dieselben Registernummern bekommen.

Nach dem Ein- oder Ausschalten von multi slave müssen die Adressen im Tab **Meter** neu vergeben werden (Kontextmenü **Allocate**).

### Zählerliste und Auslesezyklus

Der Wärmezähler muss in der Zählerliste des Gateways stehen (Tab **Meter**), am M-Bus gesucht oder von Hand angelegt. Das Gateway liest die Zähler unabhängig von Modbus-Anfragen, im **Readout cycle** im Tab **Configuration** oder im **Cycle** (in Sekunden) des einzelnen Zählers im Tab Meter. Diese Einstellungen bestimmen, wie aktuell die Werte in TapHome sind. Manche batteriebetriebenen M-Bus-Zähler erlauben nur eine begrenzte Zahl von Auslesungen pro Tag — prüfen Sie das Datenblatt des Zählers, bevor Sie einen kurzen Zyklus wählen.

### Einstellungen der Vorlage nach dem Import

Das Gateway hat keine feste Registertabelle. Es gibt dem Zählereintrag und jedem Zählerwert einen eigenen Block von 10 Holding-Registern und zeigt den Beginn jedes Blocks in der Spalte **Register** im Tab Meter. Die Reihenfolge der Werte folgt der Reihenfolge, in der der Zähler seine M-Bus-Datensätze sendet, und hängt damit vom Zählermodell ab.

| Einstellung | Was eintragen |
|---|---|
| IP-Adresse | Adresse des Gateways |
| `SlaveId` | Mit multi slave: die Zahl in der Spalte Register der Zählerzeile. Ohne multi slave: 255 |
| `RegMeter` | Mit multi slave: 10 (der Zählereintrag beginnt in jedem virtuellen Slave bei 10). Ohne multi slave: die Zahl in der Spalte Register der Zählerzeile |
| `RegEnergy`, `RegVolume`, `RegPower`, `RegFlow`, `RegFlowTemp`, `RegReturnTemp` | Die Zahl in der Spalte Register der passenden Wertzeile. Welche Zeile welche ist, zeigen die Spalten Description und Unit im Tab Meter |

IP-Adresse und `SlaveId` werden beim Import abgefragt; die sieben `Reg…`-Werte sind Modulvariablen. Ihre Standardwerte (10, 20, 30 … 70) sind Platzhalter: 10 und 20 passen zum Testmodus des Gateways, die übrigen gehen einfach in Schritten von 10 weiter. Überschreiben Sie sie immer.

Jedes Gerät prüft vor der Anzeige eines Werts den Eintragstyp und die Einheit seines Blocks. Eine falsche Nummer erzeugt am Gerät einen Fehler, der die Modulvariable nennt, zum Beispiel `RegPower does not point to a power value … – copy the Register number of this value from the gateway Meter tab`.

### Verbindungstest

Ist im Tab Server **Modbus test** eingeschaltet, liefert das Gateway statische Testdaten: den Zählereintrag bei Register 10 und einen Energiewert von 1234,5678 Wh bei Register 20. Mit den Standard-Modulvariablen zeigt Wärmeenergie dann **1,2 kWh** mit einer Warnung, dass das Medium des Testzählers keine Wärme ist (der Testzähler ist ein Stromzähler). Das beweist, dass IP-Adresse, Port, Slave-Adresse, Registernummern und Wortreihenfolge stimmen. Die übrigen Geräte melden Fehler, weil die Testdaten keine weiteren Werte haben. Schalten Sie den Testmodus danach aus.

## Gerätefunktionen

| Gerät | Einheit | Was es zeigt |
|---|---|---|
| Wärmeenergie | kWh | Kumulierte Wärmeenergie, umgerechnet aus Wh oder J und auf 0,1 kWh gerundet |
| Heizwasservolumen | m³ | Kumuliertes Volumen des Heizwassers |
| Wärmeleistung | kW | Aktuelle Wärmeleistung, umgerechnet aus W oder J/h |
| Volumenstrom | m³/h | Aktueller Durchfluss, umgerechnet aus m³/min oder m³/s, wenn der Zähler diese Einheiten sendet |
| Vorlauftemperatur | °C | Vorlauftemperatur des Heizkreises |
| Rücklauftemperatur | °C | Rücklauftemperatur des Heizkreises |

### Zählerstatus

Wärmeenergie überwacht auch den Zähler selbst. Sie zeigt einen Fehler, wenn `RegMeter` nicht auf einen Zählereintrag zeigt oder wenn das Gateway den Zähler bei der letzten Auslesung nicht lesen konnte, und eine Warnung, wenn nicht alle Werte aktualisiert wurden oder wenn das Medium des Zählers weder Wärme noch Kälte ist. Sie hat zwei Serviceattribute:

| Serviceattribut | Beschreibung |
|---|---|
| Seriennummer des Zählers | Seriennummer des Zählers, um zu prüfen, dass das Modul den richtigen Zähler liest |
| Letzte Zählerauslesung | Minuten seit der letzten Auslesung des Zählers durch das Gateway |

Alle Werte ändern sich nur bei jeder Auslesung des Gateways; die Geräte fragen das Gateway alle 15 s ab.

## Fehlerbehebung

### Keine Kommunikation

Prüfen Sie, dass Modbus im Tab Server aktiviert ist, dass der Port auf beiden Seiten 502 ist und dass keine Firewall ihn blockiert. TapHome und das Gateway müssen im selben Subnetz liegen oder eine funktionierende Route haben; ein Ping auf das Gateway hilft. Nutzen Sie dann den oben beschriebenen Verbindungstest.

### Fehler, der eine Modulvariable nennt

Die Zahl in dieser Variable zeigt auf einen Block anderen Typs oder anderer Einheit. Kopieren Sie die Register-Nummer erneut aus dem Tab Meter; prüfen Sie bei multi slave auch `SlaveId`.

### Werte ändern sich nicht

Prüfen Sie den Auslesezyklus des Gateways und die Auslesegrenze des Zählers. Die Systemzeit des Gateways muss stimmen (von Hand oder per SNTP gesetzt), sonst ist das Alter der letzten Auslesung falsch.

### Kleine Abweichung vom Wert auf der Webseite des Gateways

Die Vorlage liest den Gleitkommawert, der etwa 7 signifikante Stellen hat. Laden Sie den Tab Meter des Gateways vor dem Vergleich neu.

### Weitere Modbus-Clients am selben Gateway

Das Gateway bedient bis zu fünf Modbus-TCP-Verbindungen gleichzeitig; wird die Grenze überschritten, schließt es die älteste. Denken Sie daran, wenn ein Gebäudeleitsystem oder ein Display dasselbe Gateway liest.

## Verfügbare Geräte

solvimus MBUS-GEM – heat meter Modul

Benutzerdefinierte Variablen

|                                |                                                                                                                                                                                    |
|--------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `RegMeter` (numeric) = 10      | Beginn des Zählereintrags (Seriennummer, Auslesezeit, Lesestatus) — 10 bei Modbus multi slave, sonst die Zahl aus der Spalte Register in der Zählerzeile im Tab Meter des Gateways |
| `RegEnergy` (numeric) = 20     | Beginn des Energiewerts (Wh oder J) — die Zahl aus der Spalte Register in seiner Zeile im Tab Meter des Gateways                                                                   |
| `RegVolume` (numeric) = 30     | Beginn des Volumenwerts (m³) — die Zahl aus der Spalte Register in seiner Zeile im Tab Meter des Gateways                                                                          |
| `RegPower` (numeric) = 40      | Beginn des Leistungswerts (W oder J/h) — die Zahl aus der Spalte Register in seiner Zeile im Tab Meter des Gateways                                                                |
| `RegFlow` (numeric) = 50       | Beginn des Volumenstromwerts (m³/h, m³/min oder m³/s) — die Zahl aus der Spalte Register in seiner Zeile im Tab Meter des Gateways                                                 |
| `RegFlowTemp` (numeric) = 60   | Beginn des Vorlauftemperaturwerts (°C) — die Zahl aus der Spalte Register in seiner Zeile im Tab Meter des Gateways                                                                |
| `RegReturnTemp` (numeric) = 70 | Beginn des Rücklauftemperaturwerts (°C) — die Zahl aus der Spalte Register in seiner Zeile im Tab Meter des Gateways                                                               |

Wärmeenergie Variable Nur lesen

Kumulierte Wärmeenergie des Zählers in kWh; meldet auch, wenn das Gateway den Zähler nicht lesen konnte oder die Werte nicht aktuell sind

Register: H:RegEnergy+4 Float Einheit: kWh

Serviceattribute

|                          |                                                                                   |
|--------------------------|-----------------------------------------------------------------------------------|
| Seriennummer des Zählers | Seriennummer des Zählers, um zu prüfen, dass das Modul den richtigen Zähler liest |
| Letzte Zählerauslesung   | Minuten seit der letzten Auslesung des Zählers durch das Gateway                  |

Heizwasservolumen Variable Nur lesen

Kumuliertes Volumen des Heizwassers, das durch den Zähler geflossen ist, in m³

Register: H:RegVolume+4 Float Einheit: m³

Wärmeleistung Variable Nur lesen

Register: H:RegPower+4 Float Einheit: kW

Volumenstrom Variable Nur lesen

Register: H:RegFlow+4 Float Einheit: m³/h

Vorlauftemperatur Temperatursensor Nur lesen

Vorlauftemperatur des Heizkreises, gemessen vom Zähler

Register: H:RegFlowTemp+4 Float Einheit: °C

Rücklauftemperatur Temperatursensor Nur lesen

Rücklauftemperatur des Heizkreises, gemessen vom Zähler

Register: H:RegReturnTemp+4 Float Einheit: °C

**Verbindung:** Modbus TCP • Slave ID: $\[SlaveId]

Mögliche Verbesserungen (6)

- H:RegX+0 … H:RegX+3, H:RegX+6 Unscaled 64-bit meter value with scaling factor — The manual prefers the INT64 value with its power-of-ten scaling factor for exact billing; the template reads the FLOAT32 value (about 7 significant digits).
- value block with unit K (code 20) Temperature difference — Many heat meters also send the temperature difference between flow and return; it would be one more value block.
- second energy value block (combined heat/cooling meter, medium 13) Cooling energy — A combined heat/cooling meter sends a separate cooling energy value; the template reads one energy value.
- value blocks with a storage number Historic meter values — Stored values such as the reading on the billing date appear as further value rows in the Meter tab.
- H:RegX+8 Meter value timestamp — UNIX time the meter provides for each value (0 if none); the template uses the readout time of the meter entry instead.
- H:0 … H:9 (slave 255) Gateway device entry — Serial number, software version and system time of the gateway itself.

## Quellen

- solvimus MBUS-GEM User manual v1.31 (Modbus TCP server, network configuration)
  
  [www.solvimus.de](https://www.solvimus.de/wp-content/uploads/2026/02/UG_EN_MBUS-GEM.pdf) 2026-11-05
- solvimus MBUS-GEM datasheets (MBUS-GE20M/80M and MBUS-GE125M/250M/500M)
  
  [www.solvimus.de](https://www.solvimus.de/wp-content/uploads/2026/09/DB_EN_MBUS_GEM_2TE.pdf) 2026-11-05

## Verwandte Dokumentation

- [Modbus Integration](https://taphome.com/de/compatibility/modbus-guide/)
- [Modbus](https://taphome.com/de/docs/integration/modbus/)
- [Einfache Konfiguration mit Vorlagen](https://taphome.com/de/docs/integration/modbus/templates/)
- [Modbus-Skripte und Prefetch](https://taphome.com/de/docs/script/modbus-scripts/)
- [Modbus-Funktionen](https://taphome.com/de/docs/script/modbus/)
- [Modbus-Datentypen](https://taphome.com/de/docs/script/modbus-data-types/)

