---
title: "Shelly 3EM"
description: "Pomiar mocy, napięcia, prądu, energii i współczynnika mocy na fazę plus sterowanie stycznikiem przez HTTP lub MQTT. Szablon TapHome dla Shelly 3EM Gen1."
url: "https://taphome.com/pl/compatibility/shelly-3em-gen1/"
language: pl
lastmod: 2026-03-29
generator: hugo
ai:
  topics: ["http","mqtt","electric-meter","3-phase","wifi","energy-metering","mdns"]
  questions: ["Jak zintegrować Shelly 3EM z TapHome?","Co mierzy szablon Shelly 3EM w TapHome na każdej fazie?","Jak podłączyć Shelly 3EM przez HTTP do TapHome?","Czy mogę użyć szablonu MQTT dla Shelly 3EM zamiast HTTP?","Czy szablon Shelly 3EM obsługuje pomiar dwukierunkowy dla fotowoltaiki?","Jak zresetować liczniki energii Shelly 3EM z TapHome?"]
---

# Shelly 3EM

Komunikacja: Packet Parser → HTTP

- [Strona produktu Shelly 3EM](https://www.shelly.com/en/products/shop/shelly-3em)

> Adres w sieci
> 
> TapHome łączy się z urządzeniem pod adresem podanym przy imporcie. Nadaj urządzeniu stały adres — rezerwację IP w routerze albo jego nazwę mDNS, jeśli ją obsługuje — inaczej integracja przestanie działać, gdy router zmieni adres.
> 
> [Przygotowanie sieci](https://taphome.com/pl/docs/setup/network-preparation/)

## Poradnik integracji

Shelly 3EM to trójfazowy licznik energii Wi-Fi z trzema zaciskami CT (przekładników prądowych) 120 A i wbudowanym 10 A przekaźnikiem stycznikowym. Mierzy moc czynną, napięcie, prąd, współczynnik mocy i energię skumulowaną dla każdej fazy niezależnie. TapHome komunikuje się z urządzeniem przez sieć lokalną — połączenie z chmurą nie jest wymagane.

Dla tego urządzenia dostępne są dwa szablony TapHome: **szablon HTTP** (domyślny, wykorzystuje polling REST API) i **szablon MQTT** (wykorzystuje subskrypcję wiadomości przez brokera). Oba szablony udostępniają ten sam zestaw urządzeń — 3 liczniki energii (po jednym na fazę) i 1 przełącznik stycznika. Wybierz protokół odpowiedni do wymagań instalacji.

## Podłączenie sprzętowe

Shelly 3EM wymaga zasilania sieciowego (110–230 V AC) podłączonego do zacisków **L** i **N**. Każdy z trzech dołączonych zacisków CT łączy się z zaciskami **CT1**, **CT2** i **CT3**. Wyjście przekaźnika stycznikowego znajduje się na zacisku **O** (maks. 10 A).

### Instalacja zacisków CT

- Każdy zacisk CT zakłada się na **przewód fazowy** monitorowanego obwodu — nie wymaga cięcia przewodów
- Strzałka na zacisku CT musi wskazywać kierunek przepływu prądu (od źródła do obciążenia)
- Zaciski CT mogą monitorować system trójfazowy (L1, L2, L3) lub trzy niezależne obwody jednofazowe

> [!WARNING]
> NIE podłączaj zacisku CT do przewodu fazowego przed podłączeniem go do Shelly 3EM. Na kablach przyłączeniowych transformatora może być obecne wysokie napięcie nawet jeśli podłączony jest tylko transformator.

### Sterowanie stycznikiem

Wyjście przekaźnika (zacisk **O**) jest wymiarowane na 10 A i może bezpośrednio przełączać małe obciążenia lub sterować cewką zewnętrznego stycznika do przełączania większych obciążeń.

## Konfiguracja

### Konfiguracja szablonu HTTP

Podczas importu szablonu podaj adres IP urządzenia. Szablon odpytuje trzy osobne endpointy (`/emeter/0`, `/emeter/1`, `/emeter/2`) w celu pobrania danych energetycznych na fazę oraz `/relay/0` dla stanu stycznika. Odpowiedź każdej fazy jest buforowana we własnej zmiennej (`emeter0`, `emeter1`, `emeter2`), aby zminimalizować liczbę wywołań HTTP na cykl odpytywania.

### Konfiguracja szablonu MQTT

Szablon MQTT wymaga trzech parametrów importu:

| Parametr | Opis | Przykład |
|----------|------|---------|
| **MQTT Broker IP** | Adres brokera MQTT | `192.168.1.10` |
| **MQTT Broker Port** | Port brokera (domyślnie 1883) | `1883` |
| **Device ID** | Sufiks adresu MAC używany w topicach MQTT | `B929CC` |

Device ID (`dID`) to ostatnie 6 znaków adresu MAC w formacie szesnastkowym wielkimi literami. Znajdziesz go w interfejsie webowym Shelly pod **Settings** → **Device Info** lub przez `GET http://{ip}/settings` → pole `mqtt.id`.

Moduł subskrybuje `shellies/shellyem3-{dID}/#`, a skrypty nasłuchujące kierują wiadomości emeter i relay dla poszczególnych faz do odpowiednich urządzeń.

> [!NOTE]
> Szablon MQTT używa prefiksu topica `shellyem3-{dID}`, podczas gdy oficjalna dokumentacja API odnosi się do `shelly3em-{id}`. Oba formaty działają — zmienna `dID` jest konfigurowalna. Zweryfikuj rzeczywisty prefiks topica subskrybując `shellies/#` za pomocą klienta MQTT.

> [!WARNING]
> Na urządzeniach Shelly Gen1 włączenie MQTT **wyłącza Shelly Cloud**. Oba nie mogą działać jednocześnie. Jest to ograniczenie firmware.

## Możliwości urządzenia

### Pomiar energii na fazę

Szablon tworzy trzy liczniki energii — po jednym dla każdej fazy. Każdy licznik mierzy:

- **Moc czynna** — chwilowa moc w W, konwertowana na kW przez szablon (÷ 1000)
- **Całkowita zużyta energia** — skumulowana energia w Wh, konwertowana na kWh przez szablon (÷ 1000)

W szablonie HTTP każda faza jest odczytywana z endpointu `/emeter/{i}`. W szablonie MQTT wartości przychodzą na topicach `shellies/shellyem3-{dID}/emeter/{i}/power` i `.../total`.

### Parametry elektryczne na fazę

Każdy licznik energii udostępnia cztery atrybuty serwisowe:

- **Napięcie** — napięcie skuteczne (V)
- **Prąd** — prąd skuteczny (A)
- **Współczynnik mocy** — stosunek mocy czynnej do pozornej (0,00–1,00)
- **Całkowita energia zwrócona** — energia oddana do sieci w Wh, przydatna dla instalacji fotowoltaicznych z pomiarem dwukierunkowym

### Reset licznika energii

Każda faza posiada akcję serwisową **Reset total**, która zeruje liczniki energii dla danej fazy. W trybie HTTP wywołuje `/emeter/{i}?reset_totals`; w trybie MQTT publikuje `reset_totals` na topicu `shellies/shellyem3-{dID}/emeter/{i}/command`.

### Przełącznik stycznikowy

Szablon udostępnia przekaźnik stycznikowy jako przełącznik. Stan przekaźnika jest odczytywany z `/relay/0` → `ison` (HTTP) lub z topica `shellies/shellyem3-{dID}/relay/0` (MQTT) i sterowany przez `/relay/0?turn=on|off` (HTTP) lub topic `.../relay/0/command` (MQTT).

### Dodatkowe możliwości

Shelly 3EM dostarcza również moc bierną (VAR), flagę ważności pomiaru na fazę (`is_valid`), sumę mocy trójfazowej (`total_power` z `/status`), siłę sygnału Wi-Fi, czas pracy urządzenia, status aktualizacji firmware, progi przeciążenia na fazę oraz eksport historycznych danych energetycznych (CSV). Na przekaźniku stycznikowym dostępny jest timer automatycznego wyłączenia. Te funkcje mogą zostać dodane w przyszłej aktualizacji szablonu.

## Rozwiązywanie problemów

### Urządzenie nie odpowiada (HTTP)

1. Sprawdź, czy Shelly 3EM jest podłączony do Wi-Fi i ma prawidłowy adres IP
2. Otwórz `http://{device-ip}/shelly` w przeglądarce — jeśli odpowiada, urządzenie jest osiągalne
3. Upewnij się, że TapHome Core i Shelly 3EM są w tej samej sieci / VLAN

### Brak wiadomości MQTT

1. Potwierdź, że MQTT jest włączone w interfejsie webowym Shelly (**Internet & Security** → **Advanced — MQTT**)
2. Sprawdź, czy adres i port brokera są poprawne zarówno w urządzeniu Shelly, jak i w szablonie TapHome
3. Zweryfikuj, że zmienna `dID` odpowiada rzeczywistemu identyfikatorowi urządzenia — zasubskrybuj `shellies/#` za pomocą klienta MQTT, aby sprawdzić prefiks topica
4. Upewnij się, że broker MQTT działa i jest dostępny zarówno ze Shelly, jak i z TapHome Core

### Wartości energii pokazują zero lub NaN

1. Potwierdź, że zaciski CT są prawidłowo podłączone do terminali Shelly 3EM (CT1, CT2, CT3) i założone na przewody fazowe
2. Sprawdź, czy strzałka na zacisku CT wskazuje prawidłowy kierunek (od źródła do obciążenia)
3. Ręcznie odpytaj `/emeter/0`, `/emeter/1`, `/emeter/2` i sprawdź, czy pola `power` i `total` zawierają niezerowe wartości

## Jak zainstalować w TapHome

### Wymagania wstępne

- Urządzenie Shelly zainstalowane i włączone
- Lokalna sieć Wi-Fi (2,4 GHz)
- TapHome CCU w tej samej sieci

### Krok 1 — Podłącz Shelly do Wi-Fi

**Opcja A — Aplikacja Shelly (zalecana):**

1. Pobierz [aplikację Shelly](https://www.shelly.com/en/support/shelly-app) (iOS / Android)
2. Dotknij **+** → **Add Device** i postępuj zgodnie z kreatorem parowania Bluetooth
3. Wprowadź dane logowania Wi-Fi, gdy zostaniesz o to poproszony

**Opcja B — Tryb AP (bez aplikacji):**

1. Przy pierwszym uruchomieniu urządzenie tworzy hotspot: `ShellyXXX-AABBCCDDEE`
2. Połącz telefon/PC z tym hotspotem
3. Otwórz `http://192.168.33.1` → **Internet & Security** → **Wi-Fi Mode - Client**
4. Wprowadź SSID i hasło → **Save**

> [!NOTE]
> Shelly obsługuje tylko sieci **2,4 GHz**. Sieci 5 GHz nie pojawią się podczas skanowania.

### Krok 2 — Znajdź adres IP

Po połączeniu z Wi-Fi znajdź przypisany adres IP za pomocą jednej z poniższych metod:

- **Aplikacja Shelly:** Szczegóły urządzenia → **Device info** → Adres IP
- **Interfejs webowy Shelly:** Połącz się z AP urządzenia przed konfiguracją Wi-Fi — IP zostanie wyświetlone po zapisaniu
- **Tabela DHCP routera:** Szukaj nazwy hosta takiej jak `shelly1pm-AABBCCDDEE`
- **mDNS:** Pinguj `shelly<model>-<mac>.local` (np. `shelly1pm-AABBCCDDEE.local`) z tej samej sieci

> [!TIP]
> Przypisz urządzeniu Shelly **statyczny IP** (rezerwację DHCP) w routerze, aby adres nie zmieniał się po ponownym uruchomieniu routera.

### Krok 3 — Konfiguracja w TapHome

1. W TapHome dodaj nowy moduł **Packet Parser (HTTP)**
2. **IP Address:** wprowadź IP z kroku 2 (np. `192.168.1.50`)
3. **Port:** `80` (domyślny, nie wymaga zmiany)
4. Zaimportuj szablon — TapHome będzie okresowo odpytywać `/status` w celu odczytu stanu urządzenia

> [!NOTE]
> Uwierzytelnianie HTTP jest domyślnie wyłączone na urządzeniach Shelly. Jeśli włączyłeś ochronę logowaniem, TapHome obecnie nie obsługuje HTTP Basic Auth — pozostaw uwierzytelnianie wyłączone dla integracji z TapHome.

## Dostępne urządzenia 4

Te urządzenia pojawią się w TapHome po imporcie.

Shelly 3EM Moduł

Zmienne niestandardowe

Licznik energii (Faza 1) Licznik energii Tylko do odczytu

Monitorowanie energii fazy 1 — moc czynna (kW), energia skumulowana (kWh), napięcie, prąd, współczynnik mocy i energia zwrócona

numeric Jednostka: W / kWh

Atrybuty serwisowe

|                                  |                                                                                         |
|----------------------------------|-----------------------------------------------------------------------------------------|
| Współczynnik mocy                |                                                                                         |
| Prąd \[A]                        |                                                                                         |
| Napięcie \[V]                    |                                                                                         |
| Całkowita energia zwrócona \[Wh] | Energia oddana do sieci — istotne dla instalacji solarnych/FV z pomiarem dwukierunkowym |

Akcje serwisowe

|               |
|---------------|
| Zeruj licznik |

Odczyt całkowitego zużycia

```taphome
RETURN(todouble(PARSEjson(emeter0, "total"))/1000);
```

Odczyt zapotrzebowania

```taphome
RETURN(todouble(PARSEjson(emeter0, "power"))/1000);
```

Odczyt (moduł)

```taphome
VAR response := SENDHTTPREQUEST("/emeter/0");
IF response.IsSuccess
 emeter0 := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
 RETURN(NaN);
END
```

Atrybuty serwisowe

power factor

```taphome
RETURN(todouble(PARSEjson(emeter0, "pf")));
```

Current \[A]

```taphome
RETURN(PARSEjson(emeter0, "current"));
```

voltage \[V]

```taphome
RETURN(PARSEjson(emeter0, "voltage"));
```

Total returned energy \[Wh]

```taphome
RETURN(PARSEjson(emeter0, "total_returned"));
```

Akcje serwisowe

Reset total

```taphome
sendhttprequest("/emeter/0?reset_totals");
```

Licznik energii (Faza 2) Licznik energii Tylko do odczytu

Monitorowanie energii fazy 2 — moc czynna (kW), energia skumulowana (kWh), napięcie, prąd, współczynnik mocy i energia zwrócona

numeric Jednostka: W / kWh

Atrybuty serwisowe

|                                  |                                                                                         |
|----------------------------------|-----------------------------------------------------------------------------------------|
| Współczynnik mocy                |                                                                                         |
| Prąd \[A]                        |                                                                                         |
| Napięcie \[V]                    |                                                                                         |
| Całkowita energia zwrócona \[Wh] | Energia oddana do sieci — istotne dla instalacji solarnych/FV z pomiarem dwukierunkowym |

Akcje serwisowe

|               |
|---------------|
| Zeruj licznik |

Odczyt całkowitego zużycia

```taphome
RETURN(todouble(PARSEjson(emeter1, "total"))/1000);
```

Odczyt zapotrzebowania

```taphome
RETURN(todouble(PARSEjson(emeter1, "power"))/1000);
```

Odczyt (moduł)

```taphome
VAR response := SENDHTTPREQUEST("/emeter/1");
IF response.IsSuccess
 emeter1 := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
 RETURN(NaN);
END
```

Atrybuty serwisowe

power factor

```taphome
RETURN(PARSEjson(emeter1, "pf"));
```

current [A[

```taphome
RETURN(PARSEjson(emeter1, "current"));
```

voltage \[V]

```taphome
RETURN(PARSEjson(emeter1, "voltage"));
```

total returned energy \[Wh]

```taphome
RETURN(PARSEjson(emeter1, "total_returned"));
```

Akcje serwisowe

reset total

```taphome
sendhttprequest("/emeter/1?reset_totals");
```

Licznik energii (Faza 3) Licznik energii Tylko do odczytu

Monitorowanie energii fazy 3 — moc czynna (kW), energia skumulowana (kWh), napięcie, prąd, współczynnik mocy i energia zwrócona

numeric Jednostka: W / kWh

Atrybuty serwisowe

|                                  |                                                                                         |
|----------------------------------|-----------------------------------------------------------------------------------------|
| Współczynnik mocy                |                                                                                         |
| Prąd \[A]                        |                                                                                         |
| Napięcie \[V]                    |                                                                                         |
| Całkowita energia zwrócona \[Wh] | Energia oddana do sieci — istotne dla instalacji solarnych/FV z pomiarem dwukierunkowym |

Akcje serwisowe

|               |
|---------------|
| Zeruj licznik |

Odczyt całkowitego zużycia

```taphome
RETURN(todouble(PARSEjson(emeter2, "total"))/1000);
```

Odczyt zapotrzebowania

```taphome
RETURN(todouble(PARSEjson(emeter2, "power"))/1000);
```

Odczyt (moduł)

```taphome
var response := SENDHTTPREQUEST("/emeter/2");
IF response.IsSuccess
 emeter2 := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
 RETURN(NaN);
END
```

Atrybuty serwisowe

power factor

```taphome
RETURN(PARSEjson(emeter2, "pf"));
```

current \[A]

```taphome
RETURN(PARSEjson(emeter2, "current"));
```

voltage \[V]

```taphome
RETURN(PARSEjson(emeter2, "voltage"));
```

Total returned energy \[Wh]

```taphome
RETURN(PARSEjson(emeter2, "total_returned"));
```

Akcje serwisowe

reset total

```taphome
sendhttprequest("/emeter/2?reset_totals");
```

Przełącznik stycznikowy Przełącznik Odczyt i zapis

Wbudowany przekaźnik stycznikowy 10 A do przełączania obciążeń lub sterowania zewnętrznym stycznikiem

boolean

Wartości / Stany: ON · OFF

Odczyt stanu przełącznika

```taphome
VAR response := SENDHTTPREQUEST("/relay/0");
IF response.IsSuccess
 VAR content := response.Content;
 VAR responseHeaders := response.Headers;
 RETURN(PARSEjson(content, "ison"));
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
 RETURN(NaN);
END
```

Zapis stanu przełącznika

```taphome
VAR response := SENDHTTPREQUEST("/relay/0?turn=" + switch(St,1,"on","off"));
IF response.IsSuccess = false
 ADDERROR(response.StatusCode);
END
```

**Połączenie:** Packet Parser → HTTP • Hostname: `shelly3em-{MAC}.local`

Możliwe ulepszenia (10)

- Reactive Power — Per-phase reactive power in VAR; available in /emeter/ response and via MQTT topic .../emeter/{i}/reactive\_power
- Measurement Validity — Boolean flag indicating whether CT clamp measurement is valid; useful for detecting disconnected CT
- Total Power (3-phase sum) — Sum of active power across all 3 phases in W; available in /status but not in per-phase /emeter/ endpoints
- WiFi Signal Strength — WiFi RSSI in dBm
- Uptime — Device uptime in seconds; available in /status but template only polls /emeter/ endpoints, not /status
- FW Update Available — Firmware update flag from /status
- Auto-off Timer — Auto-off timer in seconds on contactor relay
- Per-phase Power Protection — Per-phase overpower threshold; could be exposed as service attribute + action
- Historical Energy Data (CSV) — Per-phase historical data export as CSV; not applicable for real-time integration
- Reset All Energy History — Clears ALL stored energy history across all 3 phases; more destructive than per-phase reset\_totals

## Parametry importu

Te wartości podajesz podczas importu pliku XML.

| Pytanie w aplikacji | Domyślnie     |
|---------------------|---------------|
| Adres IP            | `192.168.0.1` |

## Źródła

- 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 3EM API — emeter endpoints
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen1/#shelly-3em) 2026-03-29
- Shelly 3EM Knowledge Base — specs & wiring
  
  [kb.shelly.cloud](https://kb.shelly.cloud/knowledge-base/shelly-3em) 2026-03-29

## Powiązana dokumentacja

- [Integracja Packet Parser](https://taphome.com/pl/compatibility/packet-parser-guide/)
- [Packet Parser (HTTP, TCP, UDP, FTP, MQTT)](https://taphome.com/pl/docs/integration/packet-parser/)
- [Funkcje Packet parser](https://taphome.com/pl/docs/script/packet-parser/)
- [Funkcje parsowania](https://taphome.com/pl/docs/script/parsing-functions/)

