TapHome

Shelly EM

Packet Parser → HTTP
Autor
Posljednje ažuriranje: 03. 2026

Ovaj uređaj podržava mDNS

Umjesto IP adrese uređaju možete pristupiti na adresi:

shellyem-{MAC}.local

Zamijenite {MAC} MAC adresom svog uređaja (velika slova, bez dvotočaka).

TapHome podržava mDNS. Naziv računala (hostname) pouzdaniji je od statične IP adrese.

Shelly EM

Shelly EM je jednofazno brojilo energije s dva neovisna mjerna kanala i relejnim izlazom od 2 A za upravljanje sklopnikom. Na svaki se kanal spaja vanjski strujni transformator (CT) s razdvojivom jezgrom, dostupan u izvedbama od 50 A i 120 A, pa se dva zasebna strujna kruga mogu istodobno pratiti bez zahvata u instalaciju. TapHome se s uređajem povezuje lokalno preko Wi-Fi mreže, putem HTTP REST API-ja ili MQTT-a. Veza s oblakom nije potrebna.

Dostupna su dva predloška TapHome: HTTP predložak koji očitava REST krajnje točke uređaja i MQTT predložak koji podatke prima preko MQTT brokera. Oba daju ista tri uređaja: dva brojila energije (po jedno za svaki kanal) i sklopku za sklopnik.

Konfiguracija

HTTP predložak

HTTP predložak zahtijeva samo IP adresu uređaja (ili mDNS naziv hosta). TapHome svakih 15 sekundi očitava tri krajnje točke:

  • /emeter/0/: podaci o energiji kanala 1
  • /emeter/1/: podaci o energiji kanala 2
  • settings/relay/0: stanje releja i provjera rasporeda

Skripta za čitanje na razini modula svaki odgovor sprema u korisničku varijablu (emeterZero, emeterOne, status), pa skripte pojedinih uređaja mogu raščlaniti podatke bez suvišnih HTTP poziva.

Predložak iz settings/relay/0 provjerava i stanje rasporeda releja. Ako je na uređaju Shelly uključen interni raspored, predložak javlja pogrešku. Isključite raspored u web-sučelju Shelly kako ne bi bio u sukobu s automatizacijom TapHome.

MQTT predložak

MQTT predložak zahtijeva IP adresu i port brokera te Device ID uređaja Shelly (oblik: shellyem-XXXXXXXXXXXX, gdje su X heksadecimalne znamenke MAC adrese). Device ID možete pronaći u web-sučelju Shelly pod Settings > Device Info.

Nakon uključivanja MQTT-a na Shelly EM (Internet & Security > Advanced — MQTT) TapHome se pretplaćuje na teme shellies/shellyem-{deviceID}/ i podatke prima skriptama za primanje poruka.

Kod uređaja Shelly Gen1 uključivanje MQTT-a isključuje Shelly Cloud. MQTT i Shelly Cloud ne mogu raditi istodobno.

Mogućnosti uređaja

Mjerenje energije (po kanalu)

Svaki je kanal u sustavu TapHome prikazan kao zaseban uređaj vrste „Brojilo električne energije” koji daje:

  • Trenutačnu snagu: djelatna snaga u kW (pretvara se iz W dijeljenjem s 1000)
  • Ukupnu energiju: ukupna potrošena energija u kWh (HTTP: pretvara se iz Wh; MQTT: koristi trajnu temu total u Wh)

HTTP predložak čita polja power i total iz JSON odgovora /emeter/{i}/. MQTT predložak prati temu emeter/{i}/energy (vat-minute, dijeli se sa 60 000 za kWh) i temu emeter/{i}/total (vat-sati, ostaje sačuvana i nakon ponovnog pokretanja).

MQTT tema energy vraća se na nulu pri ponovnom pokretanju uređaja. Za trajno praćenje energije predložak čita i temu total koja ostaje sačuvana nakon ponovnog pokretanja.

Svaki kanal ima i tri servisna atributa:

AtributJedinicaOpis
NaponVEfektivni (RMS) napon mreže
Predana energijaWhUkupna energija predana u mrežu, za solarne elektrane i dvosmjerno mjerenje
Jalova snagaVARTrenutačna jalova snaga

MQTT predložak po kanalu daje samo napon kao servisni atribut. Jalova snaga i predana energija dostupne su samo u HTTP predlošku.

Sklopka za sklopnik

Relejni izlaz u sustavu TapHome prikazan je kao uređaj vrste „Sklopka”. Relej je predviđen za 2 A / 230 V AC i namijenjen je samo upravljanju sklopnikom, a ne izravnom uključivanju i isključivanju trošila.

  • HTTP: čita ison iz settings/relay/0 i upravlja preko /relay/0?turn=on ili /relay/0?turn=off
  • MQTT: čita iz teme shellies/shellyem-{id}/relay/0 i objavljuje on/off na shellies/shellyem-{id}/relay/0/command

Relej je predviđen za samo 2 A. Za trošila iznad te vrijednosti uvijek koristite vanjski sklopnik. Izravno spajanje trošila velike snage oštetit će relej.

Dodatne mogućnosti

Shelly EM daje i faktor snage (0,00–1,00) i oznaku valjanosti mjerenja po kanalu, konfiguraciju pojedinog kanala (omjer strujnog transformatora, ograničenje najveće snage), poništavanje brojača energije, timer za automatsko isključivanje releja i jačinu Wi-Fi signala. Preko MQTT-a dostupne su i dodatne teme za trenutačnu snagu, jalovu snagu i predanu energiju po kanalu. Te se mogućnosti mogu dodati u budućem ažuriranju predloška.

Rješavanje problema

Uređaj ne odgovara (HTTP)
  1. Provjerite je li Shelly EM spojen na Wi-Fi i ima li valjanu IP adresu
  2. U pregledniku otvorite http://{device-ip}/shelly: ako odgovori JSON-om koji sadrži "type":"SHEM", uređaj je dostupan
  3. Provjerite jesu li centralna jedinica TapHome (CCU) i Shelly EM u istoj mreži / VLAN-u
Nema podataka na jednom kanalu
  1. Provjerite je li strujni transformator spojen na ispravnu utičnicu od 3,5 mm (kanal 0 ili kanal 1)
  2. Provjerite teče li struja kroz praćeni vodič: strujni transformator mora obuhvaćati samo jedan vodič, a ne cijeli kabel
  3. Ručno pošaljite upite /emeter/0/ i /emeter/1/ i provjerite jesu li vrijednosti power različite od nule
MQTT poruke ne stižu
  1. Provjerite je li MQTT uključen u web-sučelju Shelly (Internet & Security > Advanced — MQTT)
  2. Provjerite jesu li adresa i port brokera ispravni i u uređaju Shelly i u postavkama modula TapHome
  3. Provjerite odgovara li korisnička varijabla deviceID točno Device ID-u uređaja Shelly (npr. B929CC)
  4. MQTT klijentom (npr. MQTT Explorer) pretplatite se na shellies/# i provjerite objavljuje li uređaj poruke
Pogreška zbog sukoba s rasporedom

HTTP predložak provjerava polje schedule u settings/relay/0. Ako je na uređaju Shelly uključen interni raspored, predložak javlja pogrešku. Isključite raspored u web-sučelju Shelly (Settings > Relay > Schedule) i umjesto njega koristite automatizacije TapHome.

Uređaji Shelly Gen1 podržavaju samo 2 istodobne HTTP veze. Ako TapHome i drugi sustav (npr. Home Assistant) istodobno očitavaju isti uređaj, komunikacija može postati nepouzdana. U okruženjima s više sustava razmislite o prelasku na MQTT predložak.

Kako ga instalirati u TapHome

Preduvjeti

  • Uređaj Shelly ugrađen i uključen
  • Lokalna Wi-Fi mreža (2,4 GHz)
  • TapHome CCU u istoj mreži

Korak 1 — Spojite Shelly na Wi-Fi

Opcija A — aplikacija Shelly (preporučeno):

  1. Preuzmite aplikaciju Shelly (iOS / Android)
  2. Dodirnite + → Add Device i slijedite čarobnjak za uparivanje preko Bluetootha
  3. Kada se to zatraži, unesite podatke za prijavu na Wi-Fi

Opcija B — način rada AP (bez aplikacije):

  1. Pri prvom uključivanju uređaj stvara pristupnu točku: ShellyXXX-AABBCCDDEE
  2. Spojite telefon ili računalo na tu pristupnu točku
  3. Otvorite http://192.168.33.1 → Internet & Security → Wi-Fi Mode - Client
  4. Unesite SSID i lozinku → Save

Shelly podržava samo mreže od 2,4 GHz. Mreže od 5 GHz neće se prikazati pri skeniranju.

Korak 2 — Pronađite adresu uređaja

Uređaji Shelly Gen1 podržavaju mDNS (Zeroconf). Uređaju možete pristupiti preko naziva hosta umjesto IP adrese:

1
shelly<model>-<MAC>.local

Na primjer: shelly1pm-AABBCCDDEE.local (MAC adresa velikim slovima u heksadecimalnom zapisu, bez dvotočaka).

Preporučeno: koristite IP skener TapHome. Otvorite aplikaciju TapHome i pokrenite IP skener (Postavke → Mreža → Skeniranje). Skener pronalazi uređaje u vašoj mreži i prikazuje IP adresu i mDNS naziv hosta. Za pouzdaniju vezu koristite naziv hosta umjesto IP adrese, jer ostaje isti i kada se IP adresa uređaja promijeni nakon ponovnog pokretanja usmjerivača.

Drugi načini za pronalaženje IP adrese:

  • Aplikacija Shelly: detalji uređaja → Device info → IP adresa
  • Web-sučelje Shelly: spojite se na AP uređaja prije postavljanja Wi-Fi mreže — IP adresa prikazuje se nakon spremanja
  • DHCP tablica usmjerivača: potražite naziv hosta poput shelly1pm-AABBCCDDEE

Korak 3 — Konfiguracija u sustavu TapHome

  1. U sustavu TapHome dodajte novi modul Packet Parser (HTTP)
  2. Adresa: unesite mDNS naziv hosta (npr. shelly1pm-AABBCCDDEE.local) ili IP adresu iz koraka 2
  3. Port: 80 (zadano, nije potrebno mijenjati)
  4. Uvezite predložak — TapHome će čitati /status kako bi očitao stanje uređaja

HTTP autentifikacija na uređajima Shelly zadano je isključena. Ako ste uključili zaštitu prijavom, TapHome trenutačno ne podržava HTTP Basic Auth — za integraciju sa sustavom TapHome ostavite autentifikaciju isključenom.

Dostupni uređaji

Shelly EM Modul
Prilagođene varijable

Shelly EM

Čitanje (modul)
VAR response := SENDHTTPREQUEST("settings/relay/0");
IF response.IsSuccess
 status := response.Content;
 IF PARSEJSON(status, "schedule")
  ADDERROR("Internal scheduling on");
 END
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
 RETURN(NaN);
END
response := SENDHTTPREQUEST("/emeter/0/");
IF response.IsSuccess
 emeterZero := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
 RETURN(NaN);
END
response := SENDHTTPREQUEST("/emeter/1/");
IF response.IsSuccess
 emeterOne := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
 RETURN(NaN);
END
Brojilo energije — kanal 1 Brojilo električne energije Samo za čitanje

Trenutačna snaga (kW) i ukupna energija (kWh) sa strujnog transformatora na kanalu 1

numeric Jedinica: kW / kWh json_path
Servisni atributi
Napon
Predana energijaUkupna energija predana u mrežu na kanalu 1 — za solarne elektrane i dvosmjerno mjerenje
Jalova snaga

Brojilo energije — kanal 1

Čitanje ukupne potrošnje
RETURN(PARSEJSON(emeterZero, "total")/1000);
Čitanje zahtjeva
RETURN(PARSEJSON(emeterZero, "power")/1000);
Servisni atributi
Voltage [V]
RETURN(PARSEJSON(emeterZero, "voltage"));
backward [Wh]
RETURN(PARSEJSON(emeterZero, "total_returned"));
reactive [W]
RETURN(PARSEJSON(emeterZero, "reactive"));
Brojilo energije — kanal 2 Brojilo električne energije Samo za čitanje

Trenutačna snaga (kW) i ukupna energija (kWh) sa strujnog transformatora na kanalu 2

numeric Jedinica: kW / kWh json_path
Servisni atributi
Napon
Predana energijaUkupna energija predana u mrežu na kanalu 2 — za solarne elektrane i dvosmjerno mjerenje
Jalova snaga

Brojilo energije — kanal 2

Čitanje ukupne potrošnje
RETURN(PARSEJSON(emeterOne, "total")/1000);
Čitanje zahtjeva
RETURN(PARSEJSON(emeterOne, "power")/1000);
Servisni atributi
Voltage [V]
RETURN(PARSEJSON(emeterOne, "voltage"));
backward [Wh]
RETURN(PARSEJSON(emeterOne, "total_returned"));
reactive [W]
RETURN(PARSEJSON(emeterOne, "reactive"));
Sklopka za sklopnik Sklopka

Relejni izlaz 2 A za upravljanje sklopnikom — nije predviđen za izravno uključivanje i isključivanje trošila

boolean
Vrijednosti / stanja: ON · OFF

Sklopka za sklopnik

Čitanje stanja sklopke
RETURN(PARSEJSON(status, "ison"));
Zapis stanja sklopke
# Simple HTTP Request:
# VAR response := SENDHTTPREQUEST("/example/set/value=" + St);
VAR response := SENDHTTPREQUEST("/relay/0?turn="+ if(St = 1, "on","off"));
IF response.IsSuccess = false
 ADDERROR(response.StatusCode);
END
# Set Http request method, body and headers
# VAR response := SENDHTTPREQUEST("/example/setValue", "GET", "value=" + St, "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\":" + St + "}";
# SENDDATA(data1);
# VAR data2 := TOBYTES("{\"name\":\"John\", \"age\":" + St + "}", "iso-8859-1");
# SENDDATA(data2);
# You can process received TCP or UDP data in the Listener script
#
#
# Upload data to FTP:
# FTPUPLOAD("filePath", "somedata=" + St, "write"); # use "append" mode to append data to existing file
Povezivanje: Packet Parser → HTTP • Naziv računala (hostname): shellyem-{MAC}.local
Moguća poboljšanja (9)
  • Power Factor — Power factor (0.00–1.00) per channel, available in /emeter/{i} and /status response. Not available via MQTT.
  • Measurement Validity — Boolean flag indicating if the measurement is valid. Available per channel in /emeter/{i}.
  • Per-Channel Configuration — CT ratio (ctrafos: 50/120), max_power limit, appliance_type. Could be exposed as service actions.
  • Reset Energy Counters — Resets accumulated energy data for both channels. Available via HTTP GET and MQTT command topic.
  • Auto-off Timer — Auto-off timer in seconds on relay endpoint. Could be added as service action parameter.
  • WiFi Signal Strength — WiFi RSSI in dBm, available in /status response
  • MQTT Real-time Power — Instantaneous power via MQTT (W). MQTT template uses energy+total topics instead.
  • MQTT Reactive Power — Reactive power via MQTT (VAR). HTTP template has it as service attribute, MQTT template does not.
  • MQTT Energy Returned — Energy returned to grid via MQTT (Wh). HTTP template has it as service attribute (backward), MQTT template does not.

Izvori

Pronašli ste problem s ovim predloškom uređaja?

Recite nam što ne radi, što nedostaje ili kako bi se predložak trebao ponašati. Vaše povratne informacije pomažu nam da katalog bude točan.

Provjerio TapHome

Želite ovo koristiti u svojoj centralnoj jedinici TapHome Core?

Otvorite ovaj predložak na portalu Customer Portal kako biste ga primijenili na jedan od svojih domova ili predložili poboljšanje i poslali ga natrag u katalog.

Otvorite na portalu