---
title: "Shelly Plus 1PM"
description: "Shelly Plus 1PM lokal per WLAN, wahlweise mit HTTP- oder MQTT-Vorlage: Relais schalten, Leistung (kW), Energie (kWh), Spannung und Strom messen."
url: "https://taphome.com/de/compatibility/shelly-plus-1pm/"
language: de
lastmod: 2026-03-29
generator: hugo
ai:
  topics: ["http","mqtt","electric-meter","wifi","relay","power-metering","gen2plus"]
  questions: ["Wie integriert man Shelly Plus 1PM mit TapHome?","Was misst die Shelly Plus 1PM Vorlage in TapHome?","Wie verbindet man Shelly Plus 1PM über HTTP mit TapHome?","Wie verbindet man Shelly Plus 1PM über MQTT mit TapHome?","Was ist der Unterschied zwischen Shelly Plus 1PM und Shelly 1PM in TapHome?","Warum zeigt Shelly Plus 1PM Nullwerte bei der Leistung?","Welche Diagnosen sind für Shelly Plus 1PM in TapHome verfügbar?","Kann ich MQTT statt HTTP für Shelly Plus 1PM verwenden?"]
---

# Shelly Plus 1PM

Kommunikation: Packet Parser → HTTP

- [Shelly Plus 1PM Produktseite](https://www.shelly.com/en/products/shop/shelly-plus-1pm)
- [Shelly Plus 1PM API-Dokumentation](https://shelly-api-docs.shelly.cloud/gen2/)

> Netzwerkadresse
> 
> TapHome erreicht dieses Gerät unter der beim Import eingegebenen Adresse. Geben Sie dem Gerät eine feste Adresse — eine IP-Reservierung im Router oder seinen mDNS-Namen, falls es einen unterstützt —, sonst funktioniert die Integration nicht mehr, sobald der Router die Adresse ändert.
> 
> [Netzwerkvorbereitung](https://taphome.com/de/docs/setup/network-preparation/)

## Integrationsanleitung

Der Shelly Plus 1PM ist ein kompakter Gen2+ WLAN-Relaisschalter mit integrierter Leistungsmessung. Er passt hinter einen Standard-Wandschalter und kann einen Stromkreis bis 16 A (3500 W bei 230 V AC) oder 10 A (30 V DC) steuern. Das Gerät unterstützt 110-240 VAC oder 24-30 VDC Spannungsversorgung und eignet sich damit sowohl für Netz- als auch Niederspannungsinstallationen. TapHome kommuniziert mit dem Gerät lokal über WLAN — keine Cloud-Verbindung erforderlich.

Es stehen zwei TapHome-Vorlagen zur Verfügung: eine **HTTP-Vorlage**, die die Gen2+ RPC-API des Geräts abfragt, und eine **MQTT-Vorlage**, die Daten über einen MQTT-Broker empfängt. Beide stellen die gleichen zwei Geräte bereit — einen Energiezähler und einen Relaisschalter.

## Konfiguration

### HTTP-Vorlage

Die HTTP-Vorlage benötigt nur die IP-Adresse des Geräts (Standardwert `192.168.0.1`). TapHome fragt den Endpunkt `/rpc/Switch.GetStatus?id=0` sowohl für den Relaisstatus als auch für Leistungsmessdaten ab. Das Modul speichert die JSON-Antwort in einer `status`-Variable, damit einzelne Geräteskripte die Daten ohne redundante HTTP-Aufrufe auswerten können.

### MQTT-Vorlage

Die MQTT-Vorlage erfordert beim Import drei Parameter:

- **MQTT-Broker-IP** — die IP-Adresse des MQTT-Brokers (nicht des Shelly-Geräts selbst)
- **MQTT-Broker-Port** — Standard `1883`
- **Shelly MQTT Client ID** — Format `shellyplus1pm-{deviceid}`, zu finden in der Shelly-Weboberfläche unter **Settings** > **MQTT Settings** > **Client ID**

Nach Aktivierung von MQTT auf dem Shelly Plus 1PM (Settings > MQTT) abonniert TapHome `shellyplus1pm-{deviceid}/status/switch:0` und sendet Steuerbefehle an `shellyplus1pm-{deviceid}/command/switch:0`.

## Gerätefunktionen

### Relaissteuerung

Die Vorlage stellt das Relais als Schaltgerät bereit. Der Relaisstatus wird aus dem Feld `output` (Boolean) gelesen und über `/rpc/Switch.Set?id=0` mit `on=true` oder `on=false` (HTTP) oder durch Veröffentlichung von `on`/`off` zum Befehlstopic (MQTT) gesteuert.

Die HTTP-Vorlage fragt das Relais im 2,5-Sekunden-Intervall ab und bietet damit nahezu Echtzeit-Statusrückmeldung. Die MQTT-Vorlage empfängt Aktualisierungen laufend über das Listener-Skript.

### Leistungsmessung

Der integrierte Energiezähler liest zwei Werte aus der Switch.GetStatus-Antwort:

- **Momentanleistung** — `apower` in Watt, von der Vorlage in kW umgerechnet (geteilt durch 1000)
- **Kumulierter Energieverbrauch** — `aenergy.total` in Wattstunden, von der Vorlage in kWh umgerechnet (geteilt durch 1000)

Der Zähler ist schreibgeschützt — er aktualisiert sich automatisch mit jedem Abfragezyklus (HTTP) oder mit jeder MQTT-Statusnachricht.

Die HTTP-Vorlage stellt am Energiezähler auch drei Service-Attribute bereit:

| Attribut | Einheit | Beschreibung |
|----------|---------|--------------|
| Strom | A | Momentaner Strombezug |
| Spannung | V | Effektive Netzspannung |
| Temperatur | °C | Interne Gerätetemperatur |

Die MQTT-Vorlage stellt interne Temperatur, Spannung und Strom als Service-Attribute auf Modulebene mit denselben Daten bereit, die aus der MQTT-Statusnachricht geparst werden.

### Weitere Funktionen

Der Shelly Plus 1PM stellt über die RPC-API auch Leistungsfaktor, Netzfrequenz, rückgespeiste Energie (für bidirektionale Messung), physischen Eingangsstatus, WLAN-Signalstärke, MAC-Adresse, Betriebszeit, RAM-Auslastung und Gerätezeit bereit. Firmware-Update, Geräteneustart, Auto-Off-Timer, Energiezähler-Reset und Überlastschutz-Konfiguration sind ebenfalls verfügbar. Diese Funktionen können in einem zukünftigen Vorlagenupdate hinzugefügt werden.

## Fehlerbehebung

### Gerät reagiert nicht (HTTP)

1. Überprüfen Sie, ob der Shelly mit dem WLAN verbunden ist und eine gültige IP-Adresse hat
2. Versuchen Sie den mDNS-Hostnamen (`shellyplus1pm-AABBCCDDEE.local`) statt der IP-Adresse — die IP kann sich nach einer DHCP-Erneuerung geändert haben
3. Öffnen Sie `http://{geraete-ip}/rpc/Shelly.GetDeviceInfo` im Browser — wenn JSON zurückkommt, ist das Gerät erreichbar
4. Prüfen Sie, ob TapHome CCU und Shelly im gleichen Netzwerk / VLAN sind
5. Stellen Sie sicher, dass die HTTP-Digest-Authentifizierung in der Shelly-Weboberfläche deaktiviert ist — TapHome unterstützt keine authentifizierten Anfragen

### MQTT-Nachrichten kommen nicht an

1. Überprüfen Sie, ob MQTT in der Shelly-Weboberfläche aktiviert ist (Settings > MQTT)
2. Bestätigen Sie, dass Broker-Adresse und Port sowohl im Shelly-Gerät als auch in den TapHome-Moduleinstellungen korrekt sind
3. Prüfen Sie, ob die benutzerdefinierte Variable `plug1topic` exakt der MQTT Client ID des Shelly-Geräts entspricht (z.B. `shellyplus1pm-AABBCCDDEE`)
4. Verwenden Sie einen MQTT-Client (z.B. MQTT Explorer), um `shellyplus1pm-#` zu abonnieren und zu prüfen, ob das Gerät Nachrichten sendet

### Leistungswerte zeigen Null

1. Bestätigen Sie, dass die Last über das Shelly-Relais angeschlossen ist (nicht umgangen)
2. Prüfen Sie, ob das Relais eingeschaltet ist — der Zähler misst nur, wenn Strom durch das Relais fließt
3. Rufen Sie `/rpc/Switch.GetStatus?id=0` manuell auf und prüfen Sie, ob `apower` einen Wert ungleich Null zurückgibt

### Langsame Reaktion oder Zeitüberschreitungen

1. Gen2+-Geräte unterstützen bis zu 6 gleichzeitige HTTP-Verbindungen (gegenüber 2 bei Gen1) — vermeiden Sie jedoch übermäßiges Polling von mehreren Systemen
2. Deaktivieren Sie den ECO-Modus in der Shelly-Weboberfläche, falls aktiviert — er versetzt das Gerät zwischen Abfragen in den Schlafmodus und kann bei kurzen Abfrageintervallen Zeitüberschreitungen verursachen
3. Verwenden Sie eine statische IP oder DHCP-Reservierung, um Adressänderungen zu vermeiden
4. Erwägen Sie den Wechsel zur MQTT-Vorlage in Multi-System-Umgebungen — MQTT umgeht das Verbindungslimit vollständig

## Installation in TapHome

### Voraussetzungen

- Shelly-Gerät installiert und eingeschaltet
- Lokales Wi-Fi-Netzwerk (2,4 GHz)
- TapHome CCU im selben Netzwerk

### Schritt 1 — Shelly mit Wi-Fi verbinden

**Option A — Shelly-App (empfohlen):**

1. Laden Sie die [Shelly-App](https://www.shelly.com/en/support/shelly-app) herunter (iOS / Android)
2. Tippen Sie auf **+** → **Add Device** und folgen Sie dem Bluetooth-Kopplungsassistenten
3. Geben Sie Ihre Wi-Fi-Zugangsdaten ein, wenn Sie dazu aufgefordert werden

**Option B — AP-Modus (ohne App):**

1. Beim ersten Einschalten erstellt das Gerät einen Hotspot: `ShellyXXX-AABBCCDDEE`
2. Verbinden Sie Ihr Telefon/PC mit diesem Hotspot
3. Öffnen Sie `http://192.168.33.1` → **Internet & Security** → **Wi-Fi Mode - Client**
4. Geben Sie SSID und Passwort ein → **Save**

> [!NOTE]
> Shelly unterstützt nur **2,4 GHz**-Netzwerke. 5 GHz-Netzwerke werden beim Scannen nicht angezeigt.

### Schritt 2 — IP-Adresse ermitteln

Nach der Verbindung mit Wi-Fi ermitteln Sie die zugewiesene IP-Adresse auf eine der folgenden Arten:

- **Shelly-App:** Gerätedetail → **Device info** → IP-Adresse
- **Shelly-Weboberfläche:** Verbinden Sie sich mit dem Geräte-AP vor der Wi-Fi-Einrichtung — die IP wird nach dem Speichern angezeigt
- **Router-DHCP-Tabelle:** Suchen Sie nach einem Hostnamen wie `shelly1pm-AABBCCDDEE`
- **mDNS:** Pingen Sie `shelly<model>-<mac>.local` (z. B. `shelly1pm-AABBCCDDEE.local`) aus dem selben Netzwerk

> [!TIP]
> Weisen Sie dem Shelly-Gerät eine **statische IP** (DHCP-Reservierung) in Ihrem Router zu, damit sich die Adresse nach einem Router-Neustart nicht ändert.

### Schritt 3 — Konfiguration in TapHome

1. Fügen Sie in TapHome ein neues Modul **Packet Parser (HTTP)** hinzu
2. **IP Address:** Geben Sie die IP aus Schritt 2 ein (z. B. `192.168.1.50`)
3. **Port:** `80` (Standard, keine Änderung erforderlich)
4. Importieren Sie die Vorlage — TapHome fragt regelmäßig `/status` ab, um den Gerätestatus zu lesen

> [!NOTE]
> Die HTTP-Authentifizierung ist auf Shelly-Geräten standardmäßig deaktiviert. Wenn Sie den Anmeldeschutz aktiviert haben, unterstützt TapHome derzeit kein HTTP Basic Auth — lassen Sie die Authentifizierung für die TapHome-Integration deaktiviert.

## Verfügbare Geräte 2

Diese Geräte erscheinen nach dem Import in TapHome.

Shelly Plus 1PM Modul

Benutzerdefinierte Variablen

Stromzähler Stromzähler Nur lesen

Momentanleistung (kW) und kumulierter Energieverbrauch (kWh) mit Strom-, Spannungs- und Temperaturdiagnose

numeric Einheit: kW / kWh

Serviceattribute

|            |
|------------|
| Strom      |
| Spannung   |
| Temperatur |

Gesamtverbrauch lesen

```taphome
return(parsejson(parsejson(status,"aenergy"), "total")/1000);
```

Bedarf lesen

```taphome
return(parsejson(status,"apower")/1000);
```

Lesen (Modul)

```taphome
var x := (sendhttprequest("/rpc/Switch.GetStatus?id=0"));
status := x.Content;
```

Serviceattribute

${current} \[a]

```taphome
return(parsejson(status,"current"));
```

${electric\_voltage} \[v]

```taphome
return(parsejson(status,"voltage"));
```

${temp} \[C]

```taphome
return(parsejson(parsejson(status,"temperature"), "tC"));
```

Schalter Schalter Lesen und Schreiben

boolean

Werte / Zustände: ON · OFF

Schaltzustand lesen

```taphome
var x := (sendhttprequest("/rpc/Switch.GetStatus?id=0"));
status := x.Content;
return(PARSEJSON(status, "$.output", true));
```

Schaltzustand schreiben

```taphome
VAR response := SENDHTTPREQUEST("rpc/Switch.Set?id=0&on=" + if(St,"true","false"));
IF response.IsSuccess = false
  ADDERROR(response.StatusCode);
END
```

**Verbindung:** Packet Parser → HTTP • Hostname: `shellyplus1pm-{MAC}.local`

Mögliche Verbesserungen (16)

- Power Factor — Power factor value, available in Switch.GetStatus response for metered devices
- Network Frequency — AC network frequency in Hz, available in Switch.GetStatus response
- Returned Energy — Returned/exported energy in Wh, for bi-directional metering scenarios
- Input State — Physical switch/button input state, available via /rpc/Input.GetStatus?id=0
- WiFi SSID — Connected WiFi network name, available via /rpc/WiFi.GetStatus
- WiFi Signal Strength — WiFi RSSI in dBm, available via /rpc/WiFi.GetStatus
- IP Address — Device IP address, available via /rpc/WiFi.GetStatus
- MAC Address — Device MAC address, available via /rpc/Sys.GetStatus
- Uptime — Seconds since last reboot, available in Sys.GetStatus response
- RAM Usage — Total and free RAM in bytes, available in Sys.GetStatus response
- Device Time — Current device time in HH:MM format, available in Sys.GetStatus response
- Firmware Update — Trigger firmware update to stable channel, available via Shelly.Update RPC method
- Reboot — Reboot the device, available via Shelly.Reboot RPC method
- Auto-off Timer — Auto-reset timer in seconds via toggle\_after parameter, could be added as switch parameter
- Reset Energy Counters — Resets energy measurement counters (aenergy, ret\_aenergy)
- Overpower Protection — Configurable power limit threshold in Watts, relay turns off when exceeded

## Importparameter

Diese Werte geben Sie beim Import des XML ein.

| In der App abgefragt | Standard      |
|----------------------|---------------|
| IP-Adresse           | `192.168.0.1` |

## Quellen

- Shelly Gen2+/Gen3 RPC API Reference
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/) 2026-03-29
- Shelly Gen2+ Switch Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Switch/) 2026-03-29
- Shelly Gen2+ System (Sys) Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Sys/) 2026-03-29
- Shelly Gen2+ WiFi Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/WiFi/) 2026-03-29
- Shelly Gen2+ MQTT Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Mqtt/) 2026-03-29
- Home Assistant Shelly Integration
  
  [www.home-assistant.io](https://www.home-assistant.io/integrations/shelly/) 2026-03-29
- Shelly Plus 1PM Knowledge Base — specs & wiring
  
  [kb.shelly.cloud](https://kb.shelly.cloud/knowledge-base/shelly-plus-1pm) 2026-03-29

## Verwandte Dokumentation

- [Packet-Parser-Integration](https://taphome.com/de/compatibility/packet-parser-guide/)
- [Packet Parser (HTTP, TCP, UDP, FTP, MQTT)](https://taphome.com/de/docs/integration/packet-parser/)
- [Packet-Parser-Funktionen](https://taphome.com/de/docs/script/packet-parser/)
- [Parsing-Funktionen](https://taphome.com/de/docs/script/parsing-functions/)

