TapHome

Shelly 1PM

Packet Parser → HTTP
Eingereicht von
Zuletzt aktualisiert: 06. 2026
Shelly 1PM

Der Shelly 1PM ist ein kompaktes WLAN-Relais mit integrierter Leistungsmessung. Es passt hinter einen Standard-Wandschalter und kann einen Stromkreis mit bis zu 16 A (3500 W bei 230 V) schalten. TapHome kommuniziert mit dem Gerät über HTTP im lokalen Netzwerk — eine Cloud-Verbindung ist nicht erforderlich.

Das Template bietet Relaissteuerung und einen Energiezähler, der den Echtzeit-Stromverbrauch und den kumulierten Energieverbrauch ausliest.

Konfiguration

Der Shelly 1PM verbindet sich über WLAN. Beim Import des TapHome-Templates gib die IP-Adresse des Geräts ein (Standard-Platzhalter 192.168.0.1).

Gerätefunktionen

Relaissteuerung

Das Template stellt das Relais als Schaltergerät bereit. Der Relaiszustand wird aus der /status-Antwort ausgelesen (relays[0].ison) und über den Endpunkt /relay/0 mit turn=on oder turn=off gesteuert.

Leistungsmessung

Der integrierte Energiezähler liest zwei Werte aus der /status-Antwort:

  • Echtzeit-Leistungmeters[0].power in Watt, vom Template in kW umgerechnet
  • Gesamtverbrauchmeters[0].total in Wattminuten, vom Template in kWh umgerechnet

Der Zähler ist schreibgeschützt — er aktualisiert sich automatisch mit jedem Abfragezyklus.

Service-Diagnose

Das Template stellt 13 Service-Attribute zur Geräteüberwachung bereit:

  • Geräteinformationen — Hostname, MAC-Adresse, Gerätezeit, Betriebszeit, RAM-Auslastung
  • Thermoschutz — Innentemperatur (°C), Temperaturstatus (Normal / Hoch / Sehr hoch), Übertemperatur-Flag
  • Konnektivität — Cloud aktiviert/verbunden, MQTT verbunden, Firmware-Update verfügbar
  • Leistungsschutz — aktuelles maximales Leistungslimit (wird von /settings gelesen)
Service-Aktionen

Drei Service-Aktionen stehen zur Verfügung:

  • Leistungsschutz setzen — legt das maximale Leistungslimit fest (1–3500 W). Das Relais schaltet automatisch ab, wenn der Verbrauch diesen Wert überschreitet.
  • Cloud aktivieren — aktiviert oder deaktiviert die Shelly-Cloud-Verbindung
  • Neustart — löst einen Geräteneustart aus
Weitere Funktionen

Der Shelly 1PM stellt in seiner /status-Antwort auch die Leitungsspannung, Blindleistung, den physischen Eingangszustand und die WLAN-Signalstärke bereit. Ein Auto-Aus-Timer ist am Relais-Endpunkt verfügbar. Diese Funktionen können in einem zukünftigen Template-Update ergänzt werden.

Fehlerbehebung

Gerät antwortet nicht
  1. Überprüfe, ob der Shelly mit dem WLAN verbunden ist und eine gültige IP-Adresse hat
  2. Versuche, den mDNS-Hostnamen (shelly1pm-AABBCCDDEE.local) statt der IP-Adresse zu verwenden — die IP könnte sich nach einer DHCP-Erneuerung geändert haben
  3. Öffne http://{device-ip}/shelly im Browser — wenn eine Antwort kommt, ist das Gerät erreichbar
  4. Stelle sicher, dass TapHome CCU und Shelly im selben Netzwerk / VLAN sind
Leistungswerte zeigen null
  1. Bestätige, dass die Last durch das Shelly-Relais geschaltet ist (nicht umgangen)
  2. Prüfe, ob das Relais eingeschaltet ist — der Zähler misst nur, wenn Strom durch das Relais fließt
  3. Frage /status manuell ab und prüfe, ob meters[0].power einen Wert ungleich null zurückgibt
Übertemperaturwarnung

Der Shelly 1PM verfügt über einen internen Thermoschutz. Wenn die Gerätetemperatur sichere Grenzwerte überschreitet, wechselt temperature_status auf „Hoch" oder „Sehr hoch" und overtemperature wird true. Sorge für ausreichende Belüftung um das Gerät, besonders beim Schalten hoher Lasten.

Gen1-Shelly-Geräte unterstützen nur 2 gleichzeitige HTTP-Verbindungen. Wenn TapHome und ein anderes System (z. B. Home Assistant) dasselbe Gerät gleichzeitig abfragen, kann die Kommunikation unzuverlässig werden. Verwende ein Abfrageintervall von 10–30 Sekunden.

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 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.1Internet & SecurityWi-Fi Mode - Client
  4. Geben Sie SSID und Passwort ein → Save

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

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

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

Shelly 1PM Modul
Serviceattribute
Leistungsschutz
Hostname
MAC-Adresse
Gerätezeit
Betriebszeit
RAM
Interne Gerätetemperatur
Temperaturstatus
FW-Aktualisierung
Cloud aktiviert
Cloud verbunden
MQTT verbunden
Überhitzt
Serviceaktionen
Leistungsschutz einstellen
Cloud aktivieren
Neustart
Benutzerdefinierte Variablen

Shelly 1PM Module

Lesen (Modul)
VAR response := SENDHTTPREQUEST("/status", "GET");
StatusJson := response.Content;
Serviceattribute
Power protection
VAR response := SENDHTTPREQUEST("/settings", "GET");
SettingsJson := response.Content;

response := SENDHTTPREQUEST("/status", "GET");
StatusJson := response.Content;

PARSEJSON(SettingsJson, "max_power") + "W";
Host name
PARSEJSON(SettingsJson, "device.hostname");
Mac address
PARSEJSON(StatusJson, "mac");
Device time
PARSEJSON(StatusJson, "time")
Uptime
VAR upTimeSeconds := PARSEJSON(StatusJson, "uptime");
VAR days := FLOOR(upTimeSeconds/86400, 1);
uptimeSeconds := MOD(upTimeSeconds, 86400);
var hours := FLOOR(upTimeSeconds/3600, 1);
uptimeSeconds := MOD(upTimeSeconds, 3600);
var minutes := FLOOR(upTimeSeconds/60, 1);
days + "day(s) " + hours + "h " + minutes + "m"
RAM
var ramTotal := PARSEJSON(StatusJson, "ram_total");
var ramFree := PARSEJSON(StatusJson, "ram_free");
ramFree + " bytes free of " + ramTotal
Internal device temperature
PARSEJSON(StatusJson, "temperature") + "°C"
Temperature status
PARSEJSON(StatusJson, "temperature_status");
FW update
PARSEJSON(StatusJson, "has_update");
Cloud enabled
PARSEJSON(StatusJson, "cloud.enabled");
Cloud connected
PARSEJSON(StatusJson, "cloud.connected");
MQTT connected
PARSEJSON(StatusJson, "mqtt.connected");
Overheated
PARSEJSON(StatusJson, "overtemperature");
Serviceaktionen
Set power protection
Parameter: Maximum power (1–3500 Watts)
VAR response := SENDHTTPREQUEST("settings?max_power=" + Watts);
VAR contentJson := response.Content;
VAR limitSet := PARSEJSON(contentJson, "max_power");

"Power limit set to " + limitSet + "W"
Enable cloud
Parameter: Enable (Enable / Disable)
VAR response := SENDHTTPREQUEST("/settings/cloud?enabled=" + enable);
VAR contentJson := response.Content;
VAR wasEnabled := PARSEJSON(contentJson, "enabled");

IF(wasEnabled, "Cloud enabled", "Cloud disabled");
Reboot
VAR response := SENDHTTPREQUEST("/reboot");
VAR contentJson := response.Content;
VAR wasRebooted := PARSEJSON(contentJson, "ok");

IF(wasRebooted, "Reboot successful", "Error");
Schalter Schalter
boolean
Werte / Zustände: ON · OFF

Schalter

Schaltzustand lesen
VAR value := PARSEJSON(StatusJson, "relays[0].ison", 1);
IF(ISNULL(value), NaN, value);
Schaltzustand schreiben
VAR path := "relay/0?turn=" + SWITCH(St, 0, "off", 1, "on","off");
SENDHTTPREQUEST(path);
Stromzähler Stromzähler Nur lesen

Leistungs- und Energiemessung — momentane Leistung (kW) und kumulierter Energieverbrauch (kWh)

numeric Einheit: W / kWh

Stromzähler

Gesamtverbrauch lesen
VAR total := PARSEJSON(StatusJson, "meters[0].total", 1);
IF(ISNULL(total), NaN, total / 60000.0);
Bedarf lesen
VAR power := PARSEJSON(StatusJson, "meters[0].power", 1);
IF(ISNULL(power), NaN, power / 1000.0);
Verbindung: Packet Parser → HTTP
Mögliche Verbesserungen (5)
  • Voltage — Line voltage in V, available in /status response
  • Reactive Power — Reactive power in VAR, available in /status response
  • Input State — Physical input state (0/1), available in /status response
  • WiFi Signal Strength — WiFi RSSI in dBm, available in /status response
  • Auto-off Timer — Auto-off timer in seconds, could be added as service action or switch parameter

Quellen

Haben Sie ein Problem mit dieser Gerätevorlage gefunden?

Sagen Sie uns, was nicht funktioniert, was fehlt oder wie sich die Vorlage verhalten sollte. Ihr Feedback hilft uns, den Katalog genau zu halten.

Von TapHome verifiziert

Möchtest du das in deinem TapHome Core verwenden?

Öffne diese Vorlage im Kundenportal, um sie auf eine deiner Wohnungen anzuwenden, oder entwirf eine Anpassung und reiche sie an den Katalog ein.

Im Portal öffnen