---
title: "Shelly 1PM Gen3"
description: "Shelly 1PM Gen3 lokal über die HTTP RPC API ohne Cloud: einen Stromkreis bis 16 A schalten, aktuellen Verbrauch und Gesamtenergie messen."
url: "https://taphome.com/de/compatibility/shelly-1pm-gen3/"
language: de
lastmod: 2026-03-27
generator: hugo
ai:
  topics: ["http","electric-meter","wifi","relay","power-metering","mdns"]
  questions: ["Wie integriere ich Shelly 1PM Gen3 mit TapHome?","Was misst die Shelly 1PM Gen3 Vorlage in TapHome?","Wie verbinde ich Shelly 1PM Gen3 über HTTP mit TapHome?","Was ist der Unterschied zwischen Shelly 1PM Gen1 und Gen3 in TapHome?","Warum zeigt Shelly 1PM Gen3 Null-Leistungswerte an?","Wie verwende ich den mDNS-Hostnamen anstelle der IP-Adresse für Shelly Gen3?"]
---

# Shelly 1PM Gen3

Kommunikation: Packet Parser → HTTP

- [Shelly 1PM Gen3 Produktseite](https://www.shelly.com/en/products/shop/shelly-1-pm-gen3)

> 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

Das Shelly 1PM Gen3 ist ein kompaktes Wi-Fi-Relais mit integrierter Leistungsmessung. Es passt hinter einen Standard-Wandschalter und kann einen Stromkreis mit bis zu 16 A (3500 W bei 230 V AC) oder 10 A (bei 24–30 V DC) schalten. TapHome kommuniziert mit dem Gerät über HTTP mittels der Gen2+/Gen3 JSON-RPC 2.0 API im lokalen Netzwerk — eine Cloud-Verbindung ist nicht erforderlich.

Im Gegensatz zum ursprünglichen Shelly 1PM (Gen1), das eine REST-API mit dem Endpunkt `/status` verwendet, nutzt die Gen3-Version die RPC-API mit Methodenaufrufen wie `/rpc/Switch.GetStatus`. Die Gen3-Hardware verfügt über einen schnelleren ESP-Prozessor mit 8 MB Flash-Speicher, unterstützt bis zu 6 gleichzeitige HTTP-Verbindungen (gegenüber 2 bei Gen1) und ist Matter-fähig.

Die Vorlage bietet Relaissteuerung und einen Stromzähler, der den aktuellen Energieverbrauch und den kumulierten Gesamtverbrauch erfasst.

## Konfiguration

Das Shelly 1PM Gen3 verbindet sich über Wi-Fi. Beim Import der Vorlage in TapHome geben Sie die IP-Adresse des Geräts ein (Standard-Platzhalter `192.168.0.1`).

> [!WARNING]
> Die Authentifizierung muss auf dem Shelly-Gerät **deaktiviert** sein, damit die TapHome-Integration funktioniert. TapHome unterstützt nicht die HTTP-Digest-Auth, die von Gen2+/Gen3-Geräten verwendet wird. Öffnen Sie die Shelly-Weboberfläche (`http://{device-ip}`) → Einstellungen → Authentifizierung und stellen Sie sicher, dass sie deaktiviert ist.

> [!NOTE]
> Wenn der ECO-Modus auf dem Shelly-Gerät aktiviert ist, kann er aufgrund der schnellen Abfrageintervalle der Vorlage (2,5–3 Sekunden) zu Kommunikationsausfällen führen. Deaktivieren Sie den ECO-Modus in der Shelly-Weboberfläche, wenn Sie zeitweise Verbindungsprobleme bemerken.

## Gerätefunktionen

### Relaissteuerung

Die Vorlage stellt das Relais als Schalter bereit. Der Relaiszustand wird aus der Antwort von `/rpc/Switch.GetStatus?id=0` gelesen (Feld `output`, Boolean) und über `/rpc/Switch.Set?id=0&on=true` oder `on=false` gesteuert.

### Leistungsmessung

Der integrierte Stromzähler liest zwei Werte aus der Antwort von `/rpc/Switch.GetStatus?id=0`:

- **Momentanleistung** — `apower` in Watt, wird von der Vorlage in kW umgerechnet
- **Gesamtverbrauch** — `aenergy.total` in Wattstunden, wird von der Vorlage in kWh umgerechnet

Der Stromzähler stellt außerdem drei Service-Attribute bereit:

- **Elektrischer Strom** — Laststrom in Ampere (Feld `current`)
- **Elektrische Spannung** — Versorgungsspannung in Volt (Feld `voltage`)
- **Temperatur** — interne Gerätetemperatur in °C (Feld `temperature.tC`)

Der Stromzähler ist schreibgeschützt — er aktualisiert sich automatisch bei jedem Abfragezyklus (15-Sekunden-Intervall).

### Service-Diagnose

Die Vorlage stellt Service-Attribute auf Modulebene zur Geräteüberwachung bereit:

- **WiFi** — Name der verbundenen SSID
- **IP-Adresse** — aktuelle Station-IP
- **Signalstärke** — WiFi-RSSI in dB
- **MAC** — MAC-Adresse des Geräts

Das Modul-Leseskript prüft außerdem auf verfügbare Firmware-Updates und ausstehende Neustartanforderungen und zeigt diese als Warnungen in der TapHome-Oberfläche an.

### Service-Aktionen

Auf Modulebene stehen zwei Service-Aktionen zur Verfügung:

- **Firmware aktualisieren** — startet ein Firmware-Update auf die neueste stabile Version über `/rpc/Shelly.Update`
- **Neustart** — startet einen Geräteneustart über `/rpc/Shelly.Reboot`

### Weitere Funktionen

Das Shelly 1PM Gen3 stellt in seinen RPC-Antworten außerdem den Leistungsfaktor, die Netzfrequenz (Hz), Zähler für zurückgespeiste/exportierte Energie, den physischen Eingangsstatus (`input:0`), die Betriebszeit, die RAM-Nutzung und die Gerätezeit bereit. Ein Auto-Off-Timer ist über den Parameter `toggle_after` verfügbar, und der Überlastschutz kann über `Switch.SetConfig → power_limit` konfiguriert werden. Energiezähler können über `/rpc/Switch.ResetCounters` zurückgesetzt werden. Diese Funktionen können in einem zukünftigen Vorlagen-Update hinzugefügt werden.

## Fehlerbehebung

### Gerät antwortet nicht

1. Überprüfen Sie, ob das Shelly mit Wi-Fi verbunden ist und eine gültige IP-Adresse hat
2. Versuchen Sie den mDNS-Hostnamen (`shelly1pmg3-AABBCCDDEE.local`) anstelle der IP-Adresse — die IP kann sich nach einer DHCP-Erneuerung geändert haben
3. Öffnen Sie `http://{device-ip}/rpc/Shelly.GetDeviceInfo` im Browser — wenn JSON zurückgegeben wird, ist das Gerät erreichbar
4. Prüfen Sie, ob TapHome Core und Shelly im selben Netzwerk / VLAN sind
5. Bestätigen Sie, dass die Authentifizierung auf dem Shelly-Gerät deaktiviert ist

### 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. Fragen Sie `/rpc/Switch.GetStatus?id=0` manuell ab und überprüfen Sie, ob `apower` einen Wert ungleich Null zurückgibt

### Übertemperaturwarnung

Das Shelly 1PM Gen3 verfügt über einen internen Überhitzungsschutz. Wenn die Gerätetemperatur sichere Grenzwerte überschreitet, steigt der Wert `temperature` in den Service-Attributen des Stromzählers. Sorgen Sie für ausreichende Belüftung um das Gerät, insbesondere beim dauerhaften Schalten hoher Lasten.

> [!WARNING]
> Shelly Gen2+/Gen3-Geräte unterstützen bis zu **6 gleichzeitige HTTP-Verbindungen**. Obwohl dies eine deutliche Verbesserung gegenüber Gen1 (2 Verbindungen) darstellt, vermeiden Sie gleichzeitige Abfragen von zu vielen Systemen (TapHome, Home Assistant, eigene Skripte), um eine Erschöpfung der Verbindungen zu verhindern.

## 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 1PM Gen3 Modul

Serviceattribute

|              |
|--------------|
| WiFi         |
| IP-Adresse   |
| Signalstärke |
| MAC          |

Serviceaktionen

|                        |
|------------------------|
| Firmware aktualisieren |
| Neustart               |

Benutzerdefinierte Variablen

Lesen (Modul)

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Sys.GetStatus");
IF response.IsSuccess
    Sys.GetStatus := response.Content;
END

response := SENDHTTPREQUEST("/rpc/Sys.GetConfig");
IF response.IsSuccess
    Sys.GetConfig := response.Content;
END

response := SENDHTTPREQUEST("/rpc/WiFi.GetStatus");
IF response.IsSuccess
    WiFi.GetStatus := response.Content;
END

if ! ISNULL(parsejson(Sys.GetStatus, "available_updates.stable", true))
    addwarning("New firmware update is available");
end

if parsejson(Sys.GetStatus, "restart_required", true)
    addwarning("Restart required");
end
```

Serviceattribute

Wifi

```taphome
PARSEJSON(WiFi.GetStatus, "ssid")
```

${ipAddress}

```taphome
PARSEJSON(WiFi.GetStatus, "sta_ip")
```

${xml\_signal\_strength} \[dB]

```taphome
PARSEJSON(WiFi.GetStatus, "rssi")
```

MAC

```taphome
PARSEJSON(Sys.GetStatus, "mac")
```

Serviceaktionen

${xml\_update\_fw}

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Shelly.Update?stage=\"stable\"");
IF response.IsSuccess
    return("OK");
else
    return("Error");
END

```

Reboot

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Shelly.Reboot");
IF response.IsSuccess
    return("OK");
else
    return("Error");
END
```

Schalter Schalter Lesen und Schreiben

boolean

Werte / Zustände: ON · OFF

Schaltzustand lesen

```taphome
var x := (sendhttprequest("/rpc/Switch.GetStatus?id=0"));
var 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
```

Stromzähler Stromzähler Nur lesen

Leistungs- und Energiemessung — momentane Leistung (kW) und kumulierter Energieverbrauch (kWh) mit Strom-, Spannungs- und Temperaturmessung

numeric Einheit: kW / kWh

Serviceattribute

|                      |
|----------------------|
| Elektrischer Strom   |
| Elektrische Spannung |
| Temperatur           |

Gesamtverbrauch lesen

```taphome
return(parsejson(parsejson(Switch.GetStatus,"aenergy"), "total")/1000);
```

Bedarf lesen

```taphome
return(parsejson(Switch.GetStatus,"apower")/1000);
```

Lesen (Modul)

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Switch.GetStatus?id=0");
IF response.IsSuccess
    Switch.GetStatus := response.Content;
END
```

Serviceattribute

${electric\_current} \[A]

```taphome
return(parsejson(Switch.GetStatus,"current"));
```

${electric\_voltage} \[V]

```taphome
return(parsejson(Switch.GetStatus,"voltage"));
```

${temperature} \[°C]

```taphome
return(parsejson(parsejson(Switch.GetStatus,"temperature"), "tC"));
```

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

Mögliche Verbesserungen (10)

- 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
- 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
- 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-27
- Shelly Gen2+ Switch Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Switch/) 2026-03-27
- Shelly Gen2+ System (Sys) Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Sys/) 2026-03-27
- Shelly Gen2+ WiFi Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/WiFi/) 2026-03-27
- Home Assistant Shelly Integration
  
  [www.home-assistant.io](https://www.home-assistant.io/integrations/shelly/) 2026-03-27
- Shelly 1PM Gen3 Knowledge Base
  
  [kb.shelly.cloud](https://kb.shelly.cloud/knowledge-base/shelly-1pm-gen3) 2026-03-27

## 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/)

