---
title: "Shelly Gas"
description: "Shelly Gas Wi-Fi Gasdetektor — Alarmzustand, Gaskonzentration in ppm, Stummschaltung und Selbsttest über HTTP. TapHome-Vorlage für CNG- und LPG-Varianten."
url: "https://taphome.com/de/compatibility/shelly-gas/"
language: de
lastmod: 2026-03-30
generator: hugo
ai:
  topics: ["http","sensor","wifi","gas-detection","safety"]
  questions: ["Wie integriert man Shelly Gas mit TapHome?","Was überwacht die Shelly-Gas-TapHome-Vorlage?","Wie verbindet man Shelly Gas über HTTP mit TapHome?","Welche Gasalarm-Schwellenwerte hat der Shelly Gas?","Wie schaltet man den Alarmbuzzer des Shelly Gas von TapHome aus stumm?","Funktioniert dieselbe Vorlage für CNG- und LPG-Varianten?"]
---

# Shelly Gas

Kommunikation: Packet Parser → HTTP

- [Shelly Gas Produktseite](https://www.shelly.com/en/products/shop/shelly-gas)
- [Shelly Gas API-Dokumentation](https://shelly-api-docs.shelly.cloud/gen1/#shelly-gas)

> 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 Gas (Modell SHGS-1) ist ein netzbetriebener Wi-Fi Gasdetektor, der in zwei Varianten erhältlich ist — CNG (Erdgas / Methan) und LPG (Propan / Butan). Beide Varianten verwenden dieselbe API und dieselbe TapHome-Vorlage. Das Gerät wird direkt in eine Steckdose gesteckt und überwacht die Gaskonzentration kontinuierlich, wobei es bei Überschreitung der Schwellenwerte einen Ton- und Lichtalarm auslöst.

TapHome kommuniziert mit dem Gerät über HTTP im lokalen Netzwerk — keine Cloud-Verbindung erforderlich. Die Vorlage fragt den `/status`-Endpoint nach Alarmzustand und Gaskonzentration ab und bietet Steuerungsmöglichkeiten zum Stummschalten des Alarms und zum Ausführen eines Sensor-Selbsttests.

Eine MQTT-Variante dieser Vorlage ist ebenfalls verfügbar (`Shelly GAS MQTT`). Verwenden Sie die MQTT-Vorlage, wenn das Gerät für die Kommunikation über einen MQTT-Broker statt HTTP konfiguriert ist.

## Konfiguration

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

Beide Varianten CNG und LPG werden identisch konfiguriert — der physische Sensor unterscheidet sich, aber API und Vorlage sind gleich.

## Gerätefähigkeiten

### Gasalarmüberwachung

Die Vorlage stellt einen Mehrfachwert-Schalter bereit, der den aktuellen Alarmzustand aus der `/status`-Antwort liest (`gas_sensor.alarm_state`). Das Gerät meldet einen der folgenden Zustände:

| Zustand | Bedeutung |
|---------|-----------|
| No alarm | Normalbetrieb — kein Gas erkannt |
| Mild gas leak | Gaskonzentration >= 1800 ppm |
| Heavy gas leak | Gaskonzentration >= 3000 ppm |
| Self Test | Sensor-Selbstdiagnose läuft |
| Alarm state is unknown | Unbekannter Zustand (Fallback) |

Die Alarmschwellenwerte sind auf Geräteebene fest und können weder über TapHome noch über die API geändert werden.

### Gaskonzentration

Ein Sensorgerät liest die aktuelle Gaskonzentration in Teilen pro Million (ppm) aus der `/status`-Antwort (`concentration.ppm`). Der Wert wird alle 15 Sekunden aktualisiert. Während der Aufwärmphase des Sensors nach dem Einschalten kann der Messwert ungültig sein.

### Aktiven Alarm stummschalten

Ein Tastergerät sendet eine `GET /mute`-Anfrage, um den Alarmbuzzer stumm zu schalten, ohne den Alarmzustand zu löschen. Der Alarmzustand bleibt aktiv, bis die Gaskonzentration unter den Schwellenwert fällt.

### Servicediagnose

Die Vorlage stellt 9 Serviceattribute zur Geräteüberwachung bereit:

- **Geräteinformationen** — Hostname, MAC-Adresse, Gerätezeit, Betriebszeit, RAM-Nutzung
- **Konnektivität** — Cloud aktiviert/verbunden, MQTT verbunden, Firmware-Update verfügbar

### Serviceaktionen

Zwei Serviceaktionen stehen zur Verfügung:

- **Lautstärke einstellen** — passt die Lautstärke des Alarmbuzzers an (1 = leiseste, 11 = lauteste) über `/settings?set_volume={value}`
- **Selbsttest** — startet eine Sensor-Selbstdiagnose (~30 Sekunden) über `/self_test`

### Weitere Fähigkeiten

Der Shelly Gas stellt auch den Betriebszustand des Sensors (`normal` / `warmup` / `fault`), den Selbsttest-Fortschritt, das Konzentrations-Gültigkeitsflag, die WiFi-Signalstärke und die Steuerung eines externen Ventilmanipulators (11–13V, 500mA Klinkenbuchsenausgang) in seiner `/status`-Antwort bereit. Ein Endpunkt zum Aufheben der Stummschaltung (`/unmute`) ist verfügbar, um den Alarmbuzzer nach der Stummschaltung wieder zu aktivieren. Diese Fähigkeiten können in einer zukünftigen Vorlagenaktualisierung hinzugefügt werden.

## Fehlerbehebung

### Gerät antwortet nicht

1. Überprüfen Sie, dass der Shelly mit Wi-Fi verbunden ist und eine gültige IP-Adresse hat
2. Versuchen Sie den mDNS-Hostnamen (`shellygas-AABBCCDDEE.local`) statt der IP-Adresse — die IP kann sich nach einer DHCP-Erneuerung geändert haben
3. Öffnen Sie `http://{device-ip}/shelly` im Browser — wenn er mit dem Gerätetyp `SHGS-1` antwortet, ist das Gerät erreichbar
4. Prüfen Sie, ob TapHome CCU und Shelly im selben Netzwerk / VLAN sind

### Gaskonzentration zeigt immer Null

1. Bestätigen Sie, dass der Sensor nicht im Aufwärmmodus ist — nach dem Einschalten benötigt der Sensor Zeit zur Stabilisierung, bevor er gültige Messwerte liefert
2. Prüfen Sie `concentration.is_valid` in der `/status`-Antwort — wenn `false`, wärmt sich der Sensor noch auf
3. Stellen Sie sicher, dass das Gerät korrekt positioniert ist (CNG-Variante nahe der Decke, LPG-Variante nahe dem Boden — Gas steigt oder sinkt je nach Dichte)

### Alarm löst nicht aus

1. Die Alarmschwellenwerte sind fest: mild >= 1800 ppm, schwer >= 3000 ppm — niedrige Konzentrationen unter diesen Werten lösen keinen Alarm aus
2. Führen Sie einen Selbsttest von TapHome aus (Serviceaktion), um die Sensor- und Buzzer-Funktionalität zu überprüfen
3. Prüfen Sie das Feld `gas_sensor.sensor_state` in `/status` — wenn es `fault` meldet, muss der Sensor möglicherweise ausgetauscht werden

> [!WARNING]
> 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. Verwenden Sie 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](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 Gas Modul

Serviceaktionen

|                       |
|-----------------------|
| Lautstärke einstellen |
| Selbsttest            |

Benutzerdefinierte Variablen

|                                    |                                                                   |
|------------------------------------|-------------------------------------------------------------------|
| `deviceID` (string) = 10521CF2BA9B | Device ID des Shelly Gas (MAC-Adresse in Hex, z. B. 10521CF2BA9B) |

Lesen (Modul)

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

Serviceaktionen

Set Volume \[1 to 11]

Parameter: Volume \[1 to 11] (1–11 Volume)

```taphome
sendhttprequest("/settings?set_volume="+Volume);
```

Self test

```taphome
sendhttprequest("/self_test");
```

Gasalarm Mehrwertschalter Nur lesen

Gasalarmzustand — Kein Alarm, Leichtes Gasleck (&gt;= 1800 ppm), Schweres Gasleck (&gt;= 3000 ppm), Selbsttest, Unbekannt

enum multi-value switch

Werte / Zustände: No alarm · Mild gas leak · Heavy gas leak · Alarm state is unknown · Self Test

Schaltzustand lesen

```taphome
var state := parsejson(parsejson(status,"gas_sensor"),"alarm_state");
switch(state, "none", return(0),
"mild", return(1),
"heavy", return(2),
"test", return(4),
return(3));
```

Schaltzustand schreiben

```taphome
#return(2);

# Simple HTTP Request:
# VAR response := SENDHTTPREQUEST("/example/set/value=" + Mu);
# IF response.IsSuccess = false
#  ADDERROR(response.StatusCode);
# END
#
# Set Http request method, body and headers
# VAR response := SENDHTTPREQUEST("/example/setValue", "GET", "value=" + Mu, "header1:value1", "header2:value2", ...);\r
# Or VAR request := HTTPREQUEST("/example/setValue");
# request.Method := "PUT";
# VAR response := SENDHTTPREQUEST(request);
#r
#
# Send TCP, UDP data:
# VAR data1 := "{\"name\":\"John\", \"age\":" + Mu + "}";
# SENDDATA(data1);
# VAR data2 := TOBYTES("{\"name\":\"John\", \"age\":" + Mu + "}", "iso-8859-1");
# SENDDATA(data2);
# You can process received TCP or UDP data in the Listener script
#
#
# Upload data to FTP:
# FTPUPLOAD("filePath", "somedata=" + Mu, "write"); # use "append" mode to append data to existing file
```

Gaskonzentration Variable Nur lesen

Aktuelle Gaskonzentration in parts per million (ppm)

numeric Einheit: ppm

Lesen

```taphome
var v := sendhttprequest("/status");
var content := v.Content;
return(todouble(parsejson(content,"concentration.ppm")));
```

Schreiben

```taphome
# Simple HTTP Request:
# VAR response := SENDHTTPREQUEST("/example/set/value=" + Va);
# IF response.IsSuccess = false
#  ADDERROR(response.StatusCode);
# END
#
# Set Http request method, body and headers
# VAR response := SENDHTTPREQUEST("/example/setValue", "GET", "value=" + Va, "header1:value1", "header2:value2", ...);\r
# Or VAR request := HTTPREQUEST("/example/setValue");
# request.Method := "PUT";
# VAR response := SENDHTTPREQUEST(request);
#r
#
# Send TCP, UDP data:
# VAR data1 := "{\"name\":\"John\", \"age\":" + Va + "}";
# SENDDATA(data1);
# VAR data2 := TOBYTES("{\"name\":\"John\", \"age\":" + Va + "}", "iso-8859-1");
# SENDDATA(data2);
# You can process received TCP or UDP data in the Listener script
#
#
# Upload data to FTP:
# FTPUPLOAD("filePath", "somedata=" + Va, "write"); # use "append" mode to append data to existing file
```

Lesen (Modul)

```taphome
parsejson(status, "concentration")
```

Aktiven Alarm stummschalten Taster Lesen und Schreiben

Schaltet den Alarm-Signalgeber stumm, ohne den Alarmzustand zu löschen

action push button

Tastenstatus schreiben

```taphome
sendhttprequest("/mute");
```

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

Mögliche Verbesserungen (7)

- Self-test state — Self-test progress: not\_completed | completed | running | pending — available in /status
- Sensor state — Sensor operational state: normal | warmup | fault — available in /status
- Concentration validity — Whether gas reading is valid (false during warmup) — available in /status
- Valve state — External valve state: opened | closed | not\_connected | failure | closing | opening | checking
- Valve control — Open/close external valve manipulator (11–13V, 500mA jack output)
- Unmute alarm — Re-enables alarm buzzer after muting
- WiFi Signal Strength — WiFi RSSI in dBm, available in /status response

## Importparameter

Diese Werte geben Sie beim Import des XML ein.

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

## Quellen

- Shelly Gen1 API Reference
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen1/) 2026-03-12
- Home Assistant Shelly Integration
  
  [www.home-assistant.io](https://www.home-assistant.io/integrations/shelly/) 2026-03-12
- Shelly Gas — Device-Specific API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen1/#shelly-gas) 2026-03-30
- Shelly Gas — Knowledge Base
  
  [kb.shelly.cloud](https://kb.shelly.cloud/knowledge-base/shelly-gas) 2026-03-30

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

