---
title: "Shelly Pro 3"
description: "Shelly Pro 3 lokal über die Gen2 JSON-RPC API per HTTP: drei potentialfreie Relais bis 16 A schalten. Authentifizierung am Shelly muss aus sein."
url: "https://taphome.com/de/compatibility/shelly-pro-3/"
language: de
lastmod: 2026-03-29
generator: hugo
ai:
  topics: ["http","i/o-module","wifi","relay","din-rail","3-channel","mdns","ethernet"]
  questions: ["Wie integriert man den Shelly Pro 3 mit TapHome?","Was steuert die Shelly Pro 3 TapHome-Vorlage?","Wie verbindet man den Shelly Pro 3 über HTTP mit TapHome?","Was ist der Unterschied zwischen Shelly Pro 3 und Pro 3EM?","Kann der Shelly Pro 3 dreiphasige Stromkreise schalten?","Warum reagiert der Shelly Pro 3 nicht auf TapHome-Befehle?"]
---

# Shelly Pro 3

Kommunikation: Packet Parser → HTTP

- [Shelly Pro 3 Produktseite](https://www.shelly.com/en/products/shop/shelly-pro-3)

> 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 Pro 3 ist ein 3-Kanal-Relaismodul für die Hutschienenmontage mit potentialfreien Kontakten. Jeder der drei unabhängigen Ausgänge kann bis zu 16 A schalten (insgesamt 48 A über alle Kanäle), was ihn geeignet macht für die Steuerung von Beleuchtungskreisen, Heizelementen oder dreiphasigen Lasten, bei denen jede Phase separat geschaltet wird. TapHome kommuniziert mit dem Gerät über HTTP mittels der Gen2 JSON-RPC 2.0 API im lokalen Netzwerk — keine Cloud-Verbindung erforderlich.

Im Unterschied zum Shelly Pro 3EM, der ein Stromzähler ist (nur Überwachung), ist der Pro 3 ein reines Relais-Schaltgerät ohne Leistungsmessfähigkeit. Das Gerät verbindet sich über WiFi, Ethernet (RJ45) oder Bluetooth und ist für die professionelle Installation in Elektro-Verteilerschränken konzipiert.

## Konfiguration

Der Shelly Pro 3 verbindet sich über WiFi oder Ethernet. Während des TapHome-Vorlagenimports geben Sie die IP-Adresse des Geräts ein (Standard-Platzhalter `192.168.0.1`).

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

> [!WARNING]
> Das LAN-Kabel darf nur ein- oder ausgesteckt werden, wenn das Gerät **ausgeschaltet** ist. Hot-Plugging des Ethernet-Kabels kann Probleme verursachen.

> [!NOTE]
> Wenn der ECO-Modus am Shelly-Gerät aktiviert ist, kann dies zu Kommunikations-Timeouts aufgrund der schnellen Abfrageintervalle der Vorlage (2,5–3 Sekunden) führen. Deaktivieren Sie den ECO-Modus in der Shelly-Weboberfläche, wenn Sie intermittierende Konnektivitätsprobleme feststellen.

## Gerätefähigkeiten

### Relaissteuerung

Die Vorlage stellt drei unabhängige Schaltgeräte bereit, eines pro Relaiskanal. Der Zustand jedes Relais wird aus der Antwort von `/rpc/Switch.GetStatus?id=N` gelesen (Feld `output`, Boolean) und über `/rpc/Switch.Set?id=N&on=true` oder `on=false` gesteuert, wobei N gleich 0, 1 oder 2 ist.

Alle drei Kanäle arbeiten unabhängig — sie können an verschiedenen Stromkreisen, verschiedenen AC-Phasen oder sogar gemischten AC/DC-Lasten betrieben werden. Die Relaiskontakte sind potentialfrei (Trockenkontakte), sodass jeder Ausgang einen völlig separaten Stromkreis von der Stromversorgung des Geräts selbst schalten kann.

### Service-Diagnose

Die Vorlage stellt Service-Attribute auf Modulebene für die Geräteüberwachung bereit:

- **WiFi** — Name des verbundenen WLAN-Netzwerks
- **IP-Adresse** — aktuelle Stations-IP
- **Signalstärke** — WiFi RSSI in dB
- **MAC** — MAC-Adresse des Geräts

Das Modul-Leseskript prüft auch auf verfügbare Firmware-Updates und ausstehende Neustart-Anforderungen und zeigt diese als Warnungen in der TapHome-Oberfläche an.

### Serviceaktionen

Zwei Serviceaktionen stehen auf Modulebene zur Verfügung:

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

### Weitere Fähigkeiten

Der Shelly Pro 3 stellt auch physische Schalter-/Tastereingangszustände (S1, S2, S3) über die Input-Komponente, interne Gerätetemperatur, Betriebszeit, RAM-Nutzung, Gerätezeit und Ethernet-Status über die RPC-API bereit. Ein Auto-Off-Timer ist über den Parameter `toggle_after` des Switch.Set-Befehls verfügbar. Diese Fähigkeiten können in einem zukünftigen Vorlagenupdate hinzugefügt werden.

## Fehlerbehebung

### Gerät antwortet nicht

1. Überprüfen Sie, ob der Shelly mit WiFi oder Ethernet verbunden ist und eine gültige IP-Adresse hat
2. Versuchen Sie den mDNS-Hostnamen (`ShellyPro3-AABBCCDDEE.local`) statt 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 es mit JSON antwortet, ist das Gerät erreichbar
4. Prüfen Sie, ob TapHome Core und Shelly im gleichen Netzwerk / VLAN sind
5. Bestätigen Sie, dass die Authentifizierung am Shelly-Gerät deaktiviert ist

### Nur einige Kanäle reagieren

1. Überprüfen Sie, ob jeder Kanal korrekt adressiert ist (id=0 für Ausgang 1, id=1 für Ausgang 2, id=2 für Ausgang 3)
2. Prüfen Sie die Relais-LED-Anzeigen an der Gerätevorderseite — rote LED bedeutet, dass das entsprechende Relais geschlossen (AN) ist
3. Testen Sie den nicht reagierenden Kanal manuell über den Browser: `http://{device-ip}/rpc/Switch.Set?id=N&on=true`

### Probleme mit induktiver Last

Für induktive Lasten (Ventilatoren, Transformatoren, LED-Treiber) wird ein RC-Glied (0,1 uF / 100 Ohm / 1/2 W / 600 VAC) am Relaisausgang empfohlen, um vor Spannungsspitzen zu schützen und die Relaislebensdauer zu verlängern.

> [!WARNING]
> Shelly Gen2-Geräte unterstützen bis zu **6 gleichzeitige HTTP-Verbindungen**. Vermeiden Sie gleichzeitiges Abfragen von zu vielen Systemen (TapHome, Home Assistant, eigene Skripte), um eine Verbindungserschöpfung zu vermeiden.

## 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 3

Diese Geräte erscheinen nach dem Import in TapHome.

Shelly Pro 3 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 1 Schalter Lesen und Schreiben

boolean

Werte / Zustände: ON · OFF

Schaltzustand lesen

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Switch.GetStatus?id=" + id);
IF response.IsSuccess
    Switch.GetStatus := response.Content;
END
return(parsejson(Switch.GetStatus, "output"));
```

Schaltzustand schreiben

```taphome
VAR path := "/rpc/Switch.Set?id=" + id + "&on=" + SWITCH(St, 1, "true", "false");
SENDHTTPREQUEST(path);
```

Schalter 2 Schalter Lesen und Schreiben

boolean

Werte / Zustände: ON · OFF

Schaltzustand lesen

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Switch.GetStatus?id=" + id);
IF response.IsSuccess
    Switch.GetStatus := response.Content;
END
return(parsejson(Switch.GetStatus, "output"));
```

Schaltzustand schreiben

```taphome
VAR path := "/rpc/Switch.Set?id=" + id + "&on=" + SWITCH(St, 1, "true", "false");
SENDHTTPREQUEST(path);
```

Schalter 3 Schalter Lesen und Schreiben

boolean

Werte / Zustände: ON · OFF

Schaltzustand lesen

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Switch.GetStatus?id=" + id);
IF response.IsSuccess
    Switch.GetStatus := response.Content;
END
return(parsejson(Switch.GetStatus, "output"));
```

Schaltzustand schreiben

```taphome
VAR path := "/rpc/Switch.Set?id=" + id + "&on=" + SWITCH(St, 1, "true", "false");
SENDHTTPREQUEST(path);
```

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

Mögliche Verbesserungen (9)

- Input 1 State — Physical switch/button input S1 state, available via /rpc/Input.GetStatus?id=0
- Input 2 State — Physical switch/button input S2 state, available via /rpc/Input.GetStatus?id=1
- Input 3 State — Physical switch/button input S3 state, available via /rpc/Input.GetStatus?id=2
- Device Temperature — Internal temperature in °C, available in Switch.GetStatus response (non-metered devices may still report temperature)
- 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 for all 3 channels
- Ethernet Status — Pro 3 has RJ45 LAN port; Ethernet status (IP, link) available via /rpc/Ethernet.GetStatus

## 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
- Home Assistant Shelly Integration
  
  [www.home-assistant.io](https://www.home-assistant.io/integrations/shelly/) 2026-03-29
- Shelly Pro 3 Knowledge Base
  
  [kb.shelly.cloud](https://kb.shelly.cloud/knowledge-base/shelly-pro-3) 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/)

