
Der Shelly Motion 2 (SHMOS-02) ist ein batteriebetriebener (Li-ion 6500 mAh, über USB-C aufladbar) Wi-Fi PIR-Bewegungssensor. TapHome kommuniziert mit dem Gerät über MQTT — das empfohlene Protokoll für batteriebetriebene Shelly-Geräte, da der Sensor die meiste Zeit schläft und Daten nur bei Aufwachereignissen veröffentlicht (Bewegungserkennung oder periodischer Timer).
Im Gegensatz zu Relais-basierten Gen1 Shelly-Geräten, die individuelle Zustandstopics veröffentlichen, veröffentlicht der Motion 2 seinen vollständigen Status über einen einzelnen /info JSON-Payload beim Aufwachen. Das TapHome-Listener-Skript parst dieses JSON, um Bewegungsstatus, Helligkeit, Temperatur, Batteriestand und Diagnoseattribute zu extrahieren.
Die Vorlage unterstützt bis zu 5 Shelly Motion 2 Sensoren pro Modul. Jede Sensorinstanz wird durch eine Custom-Variable sensorN_topic unterschieden, die auf die MQTT Client ID des Geräts verweist.
Konfiguration
Device ID
Jeder Shelly Motion 2 hat eine eindeutige MQTT Device ID im Format shellymotion2-<MAC>, wobei <MAC> die vollständige 12-stellige MAC-Adresse in hexadezimaler Großschreibung ist (z.B. shellymotion2-AABBCCDDEEFF).
Die Device ID finden Sie:
- Auf dem Gerätelabel (MAC-Adresse)
- In der Shelly Web-UI: Settings → Device Info
- Über API:
GET http://<device-ip>/settings→ Felddevice.hostname
Vorlageneinrichtung
Nach dem Import der Vorlage in TapHome:
- Öffnen Sie das Modul Shelly Motion 2 MQTT
- Setzen Sie die MQTT Broker IP und den Port (Standard
1883) - Setzen Sie für jede Sensorinstanz die Custom-Variable
sensorN_topicauf die Device ID des entsprechenden Shelly Motion 2 (z.B.shellymotion2-AABBCCDDEEFF)
Das Modul abonniert shellies/# und die Listener-Skripte filtern Nachrichten nach dem konfigurierten Topic-Präfix.
Konfigurieren Sie nur die Sensorslots, die Sie tatsächlich verwenden. Nicht konfigurierte Slots (mit dem Standardwert
shellymotion2-deviceid) zeigen eine Fehlermeldung an, die zur Einstellung des korrekten Topics auffordert.
Bewegungssensor-Einstellungen
Der Shelly Motion 2 hat mehrere konfigurierbare Parameter, die das Erkennungsverhalten beeinflussen. Diese werden direkt am Gerät über seine Web-Oberfläche (http://<device-ip>/) konfiguriert, nicht über TapHome:
| Parameter | Bereich | Beschreibung |
|---|---|---|
| Empfindlichkeit | 1–256 | Empfindlichkeit der Bewegungserkennung (niedriger = empfindlicher) |
| Blindzeit | 1–1440 min | Minuten, in denen Bewegung nach einer Erkennung ignoriert wird |
| Impulszahl | 1–4 | Aufeinanderfolgende Bewegungen zur Bestätigung |
| Betriebsmodus | ANY / DARK / TWILIGHT / BRIGHT | Wann die Erkennung basierend auf Umgebungslicht aktiv ist |
| Schlafzeit | 0–86400 s | Periodisches Aufwachintervall in Sekunden |
Kürzere Schlafzeiten erhöhen die Datenaktualität, reduzieren aber die Batterielebensdauer. Das Standard-Aufwachintervall ist für die meisten Anwendungsfälle ausreichend. Bewegungsereignisse lösen immer ein sofortiges Aufwachen aus, unabhängig vom Schlaftimer.
Gerätefähigkeiten
Bewegungserkennung
Jede Sensorinstanz wird als Reed-Contact-Gerät mit „Security"-Fähigkeit in TapHome abgebildet. Der Bewegungsstatus wird aus dem Topic shellies/<id>/info geparst — konkret das Feld $.sensor.motion im JSON-Payload:
true→ Alarm (Bewegung erkannt)false→ OK (keine Bewegung)
Der Sensor wacht auf und veröffentlicht seinen Status bei Bewegungserkennung (abhängig von Empfindlichkeit, Blindzeit und Impulszahl) sowie während periodischer Aufwachintervalle.
Serviceattribute
Jede Sensorinstanz stellt 14 Serviceattribute auf Geräteebene bereit, alle geparst aus dem /info JSON-Payload:
| Attribut | Quellfeld | Beschreibung |
|---|---|---|
| IP-Adresse | $.wifi_sta.ip | Wi-Fi IP-Adresse des Sensors |
| MAC-Adresse | $.mac | Hardware-MAC-Adresse |
| Batterie | $.bat.voltage, $.bat.value | Batteriespannung und Prozentsatz (z.B. 3,83V (97%)) |
| Signal | $.wifi_sta.rssi | Wi-Fi Signalstärke in dB |
| Cloud aktiviert | $.cloud.enabled | Ob Shelly Cloud aktiviert ist |
| Cloud verbunden | $.cloud.connected | Ob das Gerät mit Shelly Cloud verbunden ist |
| Gerätezeit | $.time | Aktuelle Zeit auf dem Gerät |
| Helligkeit | $.lux.value | Umgebungslichtniveau in Lux |
| Temperatur | $.tmp.value, $.tmp.units | Internes Temperaturmesswert |
| Betriebszeit | $.uptime | Zeit seit dem letzten Neustart |
| FW-Version | $.fw_info.fw | Aktuelle Firmwareversion |
| FW-Update | $.update.has_update | Ob ein Firmware-Update verfügbar ist |
| Freier RAM | $.ram_total, $.ram_free | Verfügbarer Arbeitsspeicher |
| Freier FS-Speicher | $.fs_size, $.fs_free | Verfügbarer Dateisystemspeicher |
Eine Warnung bei niedrigem Batteriestand wird automatisch ausgelöst, wenn der Batteriestand unter 20 % fällt.
Weitere Fähigkeiten (nicht implementiert)
Der Shelly Motion 2 veröffentlicht auch Vibrations-/Manipulationserkennung ($.sensor.vibration, konfigurierbare Empfindlichkeit 0–80), Beleuchtungskategorie ($.lux.illumination — dark/twilight/bright) und USB-Ladestatus ($.charger) über den /info JSON-Payload. Ein Online/Offline-Status ist über das LWT-Topic (shellies/<id>/online) verfügbar. Diese Fähigkeiten sind im MQTT-Ausgang des Geräts verfügbar, werden aber in der aktuellen TapHome-Vorlage nicht abgebildet. Sie können in einer zukünftigen Vorlagenaktualisierung hinzugefügt werden.
Fehlerbehebung
Sensor meldet keine Daten
- Überprüfen Sie, dass der Shelly Motion 2 mit Wi-Fi verbunden ist und MQTT in den Geräteeinstellungen aktiviert ist
- Prüfen Sie, dass die Custom-Variable
sensorN_topicexakt mit der Device ID übereinstimmt (z.B.shellymotion2-AABBCCDDEEFF) - Verwenden Sie einen MQTT-Client (z.B. MQTT Explorer) zum Abonnieren von
shellies/#und überprüfen Sie, ob der Sensor Nachrichten beim Aufwachen veröffentlicht - Der Motion 2 ist batteriebetrieben und veröffentlicht Daten nur beim Aufwachen — lösen Sie ein Bewegungsereignis aus, um ein Aufwachen zu erzwingen
Bewegungsstatus aktualisiert sich nicht
- Überprüfen Sie, dass die PIR-Sensorlinse nicht verdeckt ist und der Sensor in der empfohlenen Höhe (1,8–2,5 m) montiert ist
- Wenn der Sensor kürzlich installiert wurde, überprüfen Sie die Einstellungen für Empfindlichkeit und Blindzeit in der Web-Oberfläche des Geräts — eine hohe Blindzeit bedeutet, dass der Sensor Bewegung nach jeder Erkennung länger ignoriert
- Passen Sie die Impulszahl an, wenn der Sensor zu selten auslöst (niedriger = weniger aufeinanderfolgende Bewegungen erforderlich)
- Überprüfen Sie in TapHome den Status des Reed-Contact-Geräts — 1 = Bewegung erkannt (Alarm), 0 = keine Bewegung (OK)
Batterie entlädt sich schnell
- Der Shelly Motion 2 verwendet einen eingebauten aufladbaren Li-ion-Akku (6500 mAh), der über USB-C geladen wird, mit typischer aktiver Lebensdauer von 12–18 Monaten
- Häufiges Aufwachen durch hohe Bewegungsaktivität oder kurze Schlafintervalle entladen die Batterie schneller
- Die Aktivierung von SSL bei MQTT reduziert die Batterielebensdauer erheblich — verwenden Sie plain MQTT (Port 1883) in einem vertrauenswürdigen lokalen Netzwerk
- Sorgen Sie für ein starkes Wi-Fi-Signal am Standort des Sensors — ein schwaches Signal bedeutet längere Verbindungszeiten bei jedem Aufwachen
Gen1 Shelly-Geräte unterstützen MQTT über TLS nicht ohne erhebliche Auswirkungen auf die Batterie. Die Kommunikation zwischen Sensor und MQTT-Broker ist typischerweise unverschlüsselt (plain MQTT, Port 1883). Stellen Sie sicher, dass sich der MQTT-Broker in einem vertrauenswürdigen lokalen Netzwerk befindet.
Die Aktivierung von MQTT auf Gen1 Shelly-Geräten deaktiviert die Cloud-Konnektivität. MQTT und Cloud können nicht auf demselben Gerät koexistieren.