
Shelly Motion 2 (SHMOS-02) je Wi-Fi PIR senzor pokreta na bateriju (Li-ion 6500 mAh, punjiva preko USB-C). TapHome s uređajem komunicira preko MQTT-a, što je preporučeni protokol za uređaje Shelly na baterije: senzor većinu vremena spava i podatke objavljuje samo kada se probudi (otkrivanje pokreta ili periodički timer).
Za razliku od relejnih uređaja Shelly Gen1 koji objavljuju pojedinačne teme stanja, Motion 2 kada se probudi objavljuje cijelo svoje stanje u jednom JSON payloadu /info. Skripta TapHome za primanje poruka raščlanjuje taj JSON i iz njega izdvaja stanje pokreta, osvijetljenost, temperaturu, razinu baterije i dijagnostičke atribute.
Predložak podržava do 5 senzora Shelly Motion 2 po modulu. Svaki se senzor razlikuje po korisničkoj varijabli sensorN_topic koja upućuje na MQTT Client ID uređaja.
Konfiguracija
Device ID
Svaki Shelly Motion 2 ima jedinstveni MQTT Device ID u obliku shellymotion2-<MAC>, gdje je <MAC> cijela MAC adresa od 12 znakova velikim slovima u heksadecimalnom zapisu (npr. shellymotion2-AABBCCDDEEFF).
Device ID možete pronaći:
- Na naljepnici uređaja (MAC adresa)
- U web-sučelju Shelly: Settings → Device Info
- Preko API-ja:
GET http://<device-ip>/settings→ poljedevice.hostname
Postavljanje predloška
Nakon uvoza predloška u TapHome:
- Otvorite modul Shelly Motion 2 MQTT
- Postavite MQTT Broker IP i Port (zadano
1883) - Za svaki senzor postavite korisničku varijablu
sensorN_topicna Device ID odgovarajućeg senzora Shelly Motion 2 (npr.shellymotion2-AABBCCDDEEFF)
Modul se pretplaćuje na shellies/#, a skripte za primanje poruka filtriraju poruke prema postavljenom prefiksu teme.
Konfigurirajte samo mjesta za senzore koja stvarno koristite. Nekonfigurirana mjesta (sa zadanom vrijednošću
shellymotion2-deviceid) prikazat će poruku o pogrešci s upozorenjem da treba postaviti ispravnu temu.
Postavke senzora pokreta
Shelly Motion 2 ima nekoliko podesivih parametara koji utječu na prepoznavanje. Postavljaju se izravno na uređaju u njegovu web-sučelju (http://<device-ip>/), a ne preko sustava TapHome:
| Parametar | Raspon | Opis |
|---|---|---|
| Osjetljivost | 1–256 | Osjetljivost otkrivanja pokreta (niža vrijednost = veća osjetljivost) |
| Vrijeme neosjetljivosti (blind time) | 1–1440 min | Broj minuta tijekom kojih se nakon otkrivanja pokret zanemaruje |
| Broj impulsa | 1–4 | Broj uzastopnih pokreta potrebnih za potvrdu pokreta |
| Način rada | ANY / DARK / TWILIGHT / BRIGHT | Kada je prepoznavanje aktivno, ovisno o osvijetljenosti okoline |
| Vrijeme spavanja | 0–86400 s | Interval periodičkog buđenja u sekundama |
Kraće vrijeme spavanja daje svježije podatke, ali skraćuje trajanje baterije. Zadani interval buđenja dovoljan je za većinu primjena. Pokret uvijek odmah budi senzor, bez obzira na timer spavanja.
Mogućnosti uređaja
Otkrivanje pokreta
Svaki je senzor u sustavu TapHome prikazan kao uređaj vrste „Magnetski kontakt” (Reed Contact) sa sigurnosnom namjenom („security”). Stanje pokreta čita se iz teme shellies/<id>/info, točnije iz polja $.sensor.motion u JSON payloadu:
true→ Alarm (otkriven pokret)false→ OK (nema pokreta)
Senzor se budi i objavljuje stanje kada otkrije pokret (ovisno o postavkama osjetljivosti, vremena neosjetljivosti i broja impulsa), a i u periodičkim intervalima buđenja.
Servisni atributi
Svaki senzor ima 14 servisnih atributa na razini uređaja, a svi se čitaju iz JSON payloada /info:
| Atribut | Izvorno polje | Opis |
|---|---|---|
| IP adresa | $.wifi_sta.ip | Wi-Fi IP adresa senzora |
| MAC adresa | $.mac | Hardverska MAC adresa |
| Baterija | $.bat.voltage, $.bat.value | Napon baterije i razina napunjenosti u postocima (npr. 3,83 V (97 %)) |
| Signal | $.wifi_sta.rssi | Jačina Wi-Fi signala u dB |
| Oblak omogućen | $.cloud.enabled | Je li Shelly Cloud omogućen |
| Spojeno na oblak | $.cloud.connected | Je li uređaj spojen na Shelly Cloud |
| Vrijeme uređaja | $.time | Trenutačno vrijeme na uređaju |
| Osvijetljenost | $.lux.value | Razina svjetla u okolini u luksima |
| Temperatura | $.tmp.value, $.tmp.units | Očitanje unutarnje temperature |
| Vrijeme rada | $.uptime | Vrijeme od zadnjeg ponovnog pokretanja |
| Verzija firmvera | $.fw_info.fw | Trenutačna verzija firmvera |
| Ažuriranje firmvera | $.update.has_update | Je li dostupno ažuriranje firmvera |
| Slobodni RAM | $.ram_total, $.ram_free | Dostupna memorija |
| Slobodan prostor datotečnog sustava | $.fs_size, $.fs_free | Dostupan prostor za pohranu u datotečnom sustavu |
Upozorenje o slaboj bateriji javlja se automatski kada razina baterije padne ispod 20 %.
Dodatne mogućnosti (nisu implementirane)
Shelly Motion 2 u JSON payloadu /info objavljuje i prepoznavanje vibracija / sabotaže ($.sensor.vibration, podesiva osjetljivost 0–80), kategoriju osvijetljenosti ($.lux.illumination: dark/twilight/bright) i stanje USB punjača ($.charger). Stanje online/offline dostupno je preko teme LWT (shellies/<id>/online). Te su mogućnosti dostupne u MQTT porukama uređaja, ali nisu mapirane u trenutačnom predlošku TapHome. Mogu se dodati u budućem ažuriranju predloška.
Rješavanje problema
Senzor ne šalje podatke
- Provjerite je li Shelly Motion 2 spojen na Wi-Fi i je li MQTT uključen u postavkama uređaja
- Provjerite odgovara li korisnička varijabla
sensorN_topictočno Device ID-u (npr.shellymotion2-AABBCCDDEEFF) - MQTT klijentom (npr. MQTT Explorer) pretplatite se na
shellies/#i provjerite objavljuje li senzor poruke kada se probudi - Motion 2 radi na bateriju i podatke objavljuje samo kada se probudi: pokretom ispred senzora prisilite buđenje
Stanje pokreta se ne ažurira
- Provjerite da leća PIR senzora nije zaklonjena i da je senzor postavljen na preporučenu visinu (1,8–2,5 m)
- Ako je senzor nedavno ugrađen, u web-sučelju uređaja provjerite postavke osjetljivosti i vremena neosjetljivosti: dugo vrijeme neosjetljivosti znači da senzor nakon svakog prepoznavanja dulje zanemaruje pokret
- Ako se senzor aktivira prerijetko, podesite broj impulsa (niža vrijednost = potrebno je manje uzastopnih pokreta)
- U sustavu TapHome provjerite stanje uređaja magnetski kontakt: 1 = otkriven pokret (alarm), 0 = nema pokreta (OK)
Baterija se brzo prazni
- Shelly Motion 2 ima ugrađenu punjivu Li-ion bateriju (6500 mAh) koja se puni preko USB-C, s uobičajenim trajanjem rada od 12 do 18 mjeseci
- Česta buđenja zbog puno pokreta ili kratkih intervala spavanja brže prazne bateriju
- Uključivanje SSL-a na MQTT-u znatno skraćuje trajanje baterije: koristite obični MQTT (port 1883) u pouzdanoj lokalnoj mreži
- Osigurajte jak Wi-Fi signal na mjestu senzora: slab signal znači dulje spajanje pri svakom buđenju
Uređaji Shelly Gen1 ne podržavaju MQTT preko TLS-a bez znatnog utjecaja na bateriju. Komunikacija između senzora i MQTT brokera obično nije šifrirana (obični MQTT, port 1883). Pobrinite se da je MQTT broker u pouzdanoj lokalnoj mreži.
Uključivanje MQTT-a na uređajima Shelly Gen1 isključuje vezu s oblakom. MQTT i oblak ne mogu istodobno raditi na istom uređaju.