
Shelly TRV (SHTRV-01) to bateryjna głowica termostatyczna Wi-Fi od Allterco Robotics. Mocuje się ją bezpośrednio na korpusie zaworu standardowego grzejnika wodnego i reguluje temperaturę pokoju poprzez ruch trzpienia zaworu napędzanego wewnętrznym silnikiem. TapHome komunikuje się z urządzeniem przez HTTP w sieci lokalnej — bez bramy, bez chmury, bez brokera MQTT.
Shelly TRV jest produktem wycofanym, zastąpionym przez wersję Bluetooth Shelly BLU TRV. Istniejące egzemplarze nadal działają, a szablon pozostaje w pełni obsługiwany; dla nowych projektów warto rozważyć następcę.
Dla tego samego fizycznego urządzenia dostępne są dwa alternatywne szablony — wybierz w zależności od oczekiwanego sposobu sterowania.
| Szablon | Udostępnia | Zastosowanie |
|---|---|---|
| Shelly TRV (main) | Baterię + termostat w pętli zamkniętej | Sterowanie temperaturą pokoju przez użytkownika końcowego poprzez setpoint (5-30 °C). Firmware steruje zaworem wewnętrznie. |
| Shelly TRV (valve) | Baterię + ściemniacz zaworu + termostat (wariant setpoint) | Inteligentne reguły wymagające bezpośredniego nadpisania zaworu — pozycja zaworu jako ściemniacz 0.0-1.0. |
Nie importuj obu szablonów dla tego samego urządzenia fizycznego. Oba łączą się z tym samym endpointem i pętle pollingu będą kolidować — zapisy będą sprzeczne, a zachowanie zaworu stanie się nieprzewidywalne.
Instalacja sprzętu
Shelly TRV nie wymaga okablowania — to mechaniczna głowica grzejnikowa z wewnętrzną elektroniką, zasilana wbudowanym akumulatorem Li-ion (Panasonic NCR18650BD, 3,7 V / 6500 mAh). Mocuje się bezpośrednio na korpusie zaworu za pomocą metalowej nakrętki zaciskowej.
Zgodne korpusy zaworów
Natywny gwint: M30 × 1,5. W zestawie znajdują się następujące adaptery:
- Danfoss — RA, RAV, RAVL
- Caleffi
- Giacomini
- M28 × 1,5 — Sam, Slovarm, Comap, TA, Herz, MMA, Remagg
- Pont à Mousson
Adaptery firm trzecich (nie wchodzą w skład zestawu) rozszerzają zgodność o Gampper, Ista, Meges, Ondal, Oventrop, Rossweiner, Vaillant i inne.
Procedura montażu
- Upewnij się, że grzejnik jest wyłączony i wystygł.
- Obróć istniejącą ręczną głowicę w lewo aż do oporu (pełne otwarcie), następnie odkręć metalową nakrętkę zaciskową i zdejmij głowicę.
- Jeśli gwint zaworu nie jest natywny M30 × 1,5, załóż odpowiedni adapter.
- Osadź Shelly TRV na korpusie zaworu i dokręć metalową nakrętkę w prawo — mocno, ale bez przesadzania. Zarówno zbyt luźne, jak i zbyt mocne dokręcenie powoduje błąd kalibracji.
- Przed ostatecznym dokręceniem nakrętki obróć wyświetlacz do żądanej orientacji.
- Krótko naciśnij Reset (tył urządzenia). Wyświetlacz pokaże
CL(kalibracja), a wewnętrzny silnik przesunie się w obu kierunkach. Udana kalibracja kończy się komunikatemAP; niepowodzenie pokazujeE1.
Kalibrację należy wykonać po każdym przełożeniu na inny korpus zaworu. Dopóki nie zostanie osiągnięty stan
calibrated=true, zapisy zadanej temperatury i pozycji z TapHome są odrzucane z błędemDevice is not calibrated.
Ładowanie
Urządzenie ładuje się przez USB-C (kabel w zestawie, zasilacz nie). Ładowarka USB-C ≥1 A ładuje akumulator z pustego do pełnego w około 5 godzin. Typowa żywotność baterii to ~2 lata (~5 miesięcy ciągłego sezonu grzewczego przy typowym użyciu).
Podczas ładowania obudowa urządzenia nagrzewa się, a wewnętrzny czujnik temperatury odczytuje niepoprawnie. Dopóki
chargernie jestdisconnected, spodziewaj się zafałszowanych wartości temperatury pokoju.
Konfiguracja
Import w TapHome
Podczas importu szablonu TapHome pyta o jeden parametr:
| Parametr | Opis | Domyślnie |
|---|---|---|
IpAddress | Lokalny adres IP lub nazwa mDNS urządzenia | 192.168.0.1 |
Port 80 jest stały. HTTPS nie jest obsługiwany w Gen1. HTTP Basic Auth musi być wyłączona na urządzeniu — TapHome nie uwierzytelnia się wobec urządzeń Gen1 Shelly.
Tam, gdzie to możliwe, używaj nazwy mDNS (shellytrv-XXXXXX.local) — jest odporna na zmiany dzierżaw DHCP. IP Scanner TapHome (Ustawienia → Sieć → Skanuj) wykrywa zarówno IP, jak i nazwę mDNS.
Wyłączenie harmonogramu tygodniowego
Shelly TRV ma wbudowany harmonogram tygodniowy (5 profili, do 18 zaplanowanych zmian tygodniowo na profil). Gdy harmonogram jest włączony, firmware nadpisuje każdy zapis z zewnątrz przy najbliższym zaplanowanym zdarzeniu — setpointy TapHome są po cichu cofane.
Szablon sygnalizuje to ostrzeżeniem (Schedule is enabled). Zanim oddasz sterowanie TapHome, wykonaj jedno z:
- uruchom akcję serwisową Disable schedule na module (wysyła
/settings/thermostats/0?schedule=false), lub - w aplikacji Shelly Cloud lub w interfejsie WWW urządzenia wybierz profil Disable.
Zewnętrzny czujnik pokojowy (zalecane)
Wbudowany czujnik temperatury znajduje się fizycznie blisko gorącej rury grzejnika i typowo odczytuje 1-3 °C powyżej rzeczywistej temperatury pokoju. Dostępne są dwie ścieżki korekty:
- Czujnik zewnętrzny — sparuj osobny termometr Wi-Fi (np. Shelly H&T) w interfejsie WWW urządzenia → Sensor Settings → Enable external temperature corrections endpoint. Zewnętrzny czujnik przesyła następnie temperaturę otoczenia do TRV poprzez POST.
- Statyczne przesunięcie — użyj akcji serwisowej Set temperature offset na urządzeniu Thermostat (zakres ±20 °C) do kompensacji stałej różnicy.
Dla najlepszego komfortu cieplnego połącz wiarygodny czujnik zewnętrzny z niewielkim statycznym przesunięciem jako rezerwą.
Możliwości urządzenia
Główny szablon udostępnia urządzenie jako wskaźnik baterii oraz termostat w pętli zamkniętej. Szablon valve zachowuje ten sam moduł i baterię, ale udostępnia pozycję zaworu jako ściemniacz i używa wariantu setpoint, który przy zapisie wyłącza automatyczną regulację PID. Diagnostyki i akcje na poziomie modułu są identyczne dla obu szablonów.
Stan baterii
Bateria jest udostępniana jako przełącznik wielowartościowy wyprowadzony z raportowanego poziomu naładowania i stanu ładowarki USB-C. Stan ładowarki ma pierwszeństwo przed poziomem naładowania:
| Stan | Warunek |
|---|---|
| Critical | bat.value < 25 |
| Low | bat.value 25-50 |
| Normal | bat.value 50-75 |
| Full | bat.value > 75 |
| Charging | charger != disconnected |
Dwa dodatkowe atrybuty serwisowe raportują surowy poziom naładowania (%) oraz napięcie ogniwa (V, nominalnie ~3,7 V, typowy zakres 2,6-4,2 V). Szablon generuje Low battery poniżej 50 % i Battery charge is critically low poniżej 25 %.
Termostat (szablon główny)
Termostat pokojowy z pętlą zamkniętą: TapHome zapisuje zadany setpoint, a firmware TRV steruje pozycją zaworu wewnętrznie na podstawie wbudowanego (lub zewnętrznego) czujnika temperatury.
- Odczyt: zmierzona temperatura pokoju (
thermostats[0].tmp.value) i aktywny cel (thermostats[0].target_t.value) - Zapis: setpoint 5-30 °C przez
/settings/thermostats/0?target_t={Se}
Uzupełniające atrybuty termostatu obejmują Temperature offset [°C], Valve position [%] (tylko do odczytu, dla widoczności wyjścia PID), Force close, Extra pressure i Automatic calibration correction. Odpowiadające akcje serwisowe pozwalają TapHome ustawić przesunięcie, przełączyć tryb wymuszonego zamknięcia (zawór pozostaje w pełni zamknięty niezależnie od setpointu) oraz tryb dodatkowego nacisku (zwiększa siłę aktuacji dla sztywnych zaworów).
Zapisy setpointu kończą się Device is not calibrated, dopóki calibrated=false, a szablon dodaje ostrzeżenie, gdy harmonogram tygodniowy jest aktywny (ponieważ firmware nadpisze zapisy zewnętrzne przy najbliższym zdarzeniu harmonogramu).
Ściemniacz zaworu (szablon valve)
Alternatywny szablon udostępnia aktuator zaworu bezpośrednio jako urządzenie ściemniacza (0.0-1.0 → 0-100 %). TapHome zapisuje pozycję przez /thermostats/0?pos={Le*100} — firmware przesuwa silnik do żądanej pozycji i niejawnie wyłącza automatyczną regulację temperatury docelowej.
Szablon valve dodaje na urządzeniu zaworu atrybuty serwisowe Force close, Extra pressure i Automatic calibration correction (plus odpowiednie akcje toggle), tak aby autorzy inteligentnych reguł mogli bezpośrednio sterować silnikiem w scenariuszach takich jak awaryjne zamknięcie, ręczne rozgrzewanie czy sekwencje boost.
Termostat (wariant szablonu valve)
Szablon valve nadal udostępnia urządzenie termostat, tak aby setpoint można było zapisać z tej samej grupy urządzeń TapHome, jednak jego skrypt zapisu wysyła jednocześnie target_t i target_t_enabled=false, aby PID firmware’u nie walczył z ręcznie sterowanym zaworem. Zestaw atrybutów serwisowych jest zredukowany do Temperature offset [°C] (atrybuty korpusu zaworu, takie jak force_close i valve_state, przenoszą się do urządzenia zaworu). Szablon ostrzega, gdy zaobserwowany zostanie target_t.enabled=true — to wskazuje na konflikt między ściemniaczem zaworu a sterowaniem automatycznym.
Diagnostyki i akcje modułu
Moduł (head unit) odpytuje /status i /settings co 3 sekundy i udostępnia diagnostyki i akcje całego urządzenia:
- Diagnostyki: SSID Wi-Fi, adres IP, MAC, siła sygnału (RSSI w dBm), stan kalibracji, harmonogram wł./wył., jasność wyświetlacza (1-7) i stan obróconego wyświetlacza.
- Akcje: Disable schedule, Reboot, Calibrate (wyzwala
/calibrate), Update firmware (pobieraSHTRV-01_build.gblz oficjalnego serwera firmware Shelly EU), Set display brightness i Flip display.
Dodatkowe możliwości
Urządzenie udostępnia także — choć obecne szablony tego jeszcze nie obejmują — kilka funkcji Gen1: pasywne wykrywanie otwartego okna (/window), symetryczną akcję Force open, awaryjną temperaturę otoczenia (auto_temp), blokadę rodzicielską, opóźnienie automatycznego zamknięcia przy otwartym oknie, czujnik zaplanowanego setpointu (schedule_t), indeks aktywnego profilu, pozostałe minuty boost oraz akcję Trigger boost (/thermostats/0?boost_minutes=N), stan termiczny wewnętrznej elektroniki (tmp_state) i dostępność aktualizacji firmware jako czujnik. Push CoIoT i transport MQTT są obsługiwane na poziomie urządzenia, ale nieużywane — TapHome zamiast tego pobiera /status co 3 s. Funkcje te mogą zostać dodane w przyszłej aktualizacji szablonu.
Rozwiązywanie problemów
Device is not calibrated
Każdy zapis setpointu i pozycji zaworu zwraca Device is not calibrated, dopóki TRV nie zakończy udanego cyklu kalibracji.
- Upewnij się, że urządzenie jest mocno osadzone na korpusie zaworu — nakrętka zaciskowa musi być na tyle mocna, aby silnik mógł oddziaływać na trzpień zaworu, ale nie tak, aby go deformowała.
- Uruchom akcję serwisową Calibrate na module (wysyła
/calibrate). Wyświetlacz krótko pokażeCL, gdy silnik porusza się w obu kierunkach. - Przy sukcesie
calibratedzmienia się natruei zapisy zaczynają działać; niepowodzenie pokazuje na wyświetlaczuE1— zwykle oznacza nieprawidłowe osadzenie.
Setpoint co kilka godzin wraca do innej wartości
To harmonogram tygodniowy nadpisujący zapisy zewnętrzne. Sprawdź atrybut serwisowy Schedule — jeśli jest włączony, uruchom akcję Disable schedule na module lub wyłącz aktywny profil w aplikacji Shelly Cloud.
Temperatura pokojowa jest zbyt wysoka
Dwie typowe przyczyny:
- Podłączona ładowarka. Odczyty temperatury pokoju są nieważne, dopóki
charger != disconnected. Odłącz USB-C i pozwól urządzeniu wystygnąć. - Odchylenie wbudowanego czujnika. Czujnik znajduje się blisko gorących rur i typowo odczytuje 1-3 °C za wysoko. Włącz endpoint korekcji temperatury zewnętrznej i sparuj Shelly H&T (lub kompatybilny termometr Wi-Fi) w tym samym pokoju, albo zastosuj statyczne Set temperature offset (np.
-1,5 °C).
Na wyświetlaczu pojawia się E1 / E2
E1 — błąd kalibracji. Przełóż urządzenie, ostrożnie dokręć nakrętkę i uruchom nowy cykl kalibracji.
E2 — błąd czujnika temperatury. tmp.is_valid w /status staje się false, a szablon dodaje błąd Temperature sensor error. Jeśli problem utrzymuje się po restarcie, czujnik prawdopodobnie uległ uszkodzeniu — skontaktuj się ze wsparciem Shelly.
Urządzenie jest nieosiągalne
- Sprawdź, czy TRV jest podłączony do Wi-Fi — przytrzymaj Up + Down przez 5 s i przewiń parametry stanu;
COoznacza podłączonego klienta Wi-Fi. - Upewnij się, że CCU TapHome i TRV znajdują się w tej samej sieci / VLAN — Shelly Gen1 domyślnie nie routuje między podsieciami.
- Spróbuj nazwy mDNS (
shellytrv-XXXXXX.local) zamiast IP — dzierżawa DHCP mogła się zmienić. - Otwórz
http://{device-ip}/statusw przeglądarce. Jeśli przyjdzie odpowiedź JSON, urządzenie jest osiągalne, a problem leży w konfiguracji TapHome.
Urządzenia Gen1 Shelly akceptują tylko 2 równoczesne połączenia HTTP. Jeśli TapHome i inny system (Home Assistant, Node-RED) odpytują to samo urządzenie w tym samym czasie, komunikacja staje się niestabilna. Pozostaw interwał pollingu na domyślnej wartości szablonu (3 s) i unikaj dodatkowych pollerów.
Włączenie MQTT na urządzeniach Gen1 Shelly nieodwracalnie wyłącza Shelly Cloud. TapHome używa wyłącznie HTTP — zostaw MQTT wyłączone, chyba że świadomie chcesz odejść od Shelly Cloud.