
Szablon EMS-ESP Heat Pump łączy TapHome z pompą ciepła Bosch, Buderus lub IVT przez bramkę EMS-ESP — BBQKees Electronics Gateway E32 V2, która działa na otwartym oprogramowaniu EMS-ESP i podłącza się do magistrali EMS pompy ciepła. TapHome komunikuje się z bramką przez jej lokalne HTTP REST API (port 80, JSON); połączenie z chmurą nie jest potrzebne. W EMS-ESP pompa ciepła występuje jako typ urządzenia boiler, a jej regulator jako typ urządzenia thermostat.
Szablon odczytuje temperaturę zewnętrzną, zasilania, powrotu, pomieszczenia i ciepłej wody, stan sprężarki, moc sprężarki i liczniki energii. Z tokenem dostępu ustawia także tryb pracy obiegu grzewczego 1 (w tym chłodzenie), nastawy temperatury pomieszczenia i chłodzenia oraz nastawę ciepłej wody.
Szablon społeczności — jeszcze nie przetestowany z TapHome. Szablon powstał w portalu TapHome i został napisany dla EMS-ESP 3.8.6; nie został jeszcze sprawdzony w rzeczywistej instalacji. Pobierz go z portalu TapHome: EMS-ESP Heat Pump — szablon społeczności (pobierz XML — bez logowania — i zaimportuj go jako nowy moduł).
Kompatybilne pompy ciepła i regulatory
O tym, czy pompa ciepła działa z tym szablonem, decydują dwie rzeczy: EMS-ESP musi obsługiwać pompę ciepła, a pompa ciepła i jej regulator muszą wysyłać wartości, które szablon odczytuje.
Pompy ciepła objęte szablonem:
- Bosch Compress 6000AW, Hybrid 3000-7000iAW
- Buderus WLW166i, WLW176i, WLW196i, WSW196i
- CS5800i, CS6800i
- Enviline, SupraEco, Geo 5xx
- IVT AirX i Geo z regulatorem Rego 2000 lub Rego 3000 — zgłoszone przez użytkowników EMS-ESP, nie ma ich na oficjalnej liście pomp ciepła obsługiwanych przez EMS-ESP
Bramka działa z wariantami magistrali EMS, EMS Plus (EMS+), EMS2 i Heatronic 3.
Które wartości wysyła dana jednostka, nie jest udokumentowane dla poszczególnych modeli. Strona Devices w interfejsie WWW EMS-ESP pokazuje tylko encje z wartością; encja, która istnieje w EMS-ESP, ale nie ma wartości, jest obsługiwana przez oprogramowanie, a nie przez podłączoną jednostkę. Ta sama lista jest dostępna pod http://<gateway-ip>/api/boiler/entities i http://<gateway-ip>/api/thermostat/entities.
Chłodzenie wymaga regulatora, który wysyła hc1.hpoperatingmode. EMS-ESP rejestruje tę encję dla rodziny RC300 (RC310, HMC310, Rego 2000 / 3000) i rodziny BC400; czy dany regulator rzeczywiście ją wysyła, nie jest udokumentowane. UI800 zgłasza ją na najwyższym poziomie termostatu (/api/thermostat/hpoperatingmode), a nie w obiegu grzewczym 1, dlatego urządzenie trybu pracy — a z nim chłodzenie — nie działa z UI800.
Połączenie sprzętowe
Zestaw BBQKees Gateway E32 V2 KIT zawiera bramkę, kabel serwisowy EMS 150 cm, kabel 100 cm do zacisków śrubowych EMS, adapter portu serwisowego EMS, zasilacz (12 V DC z wtykiem lub 5 V USB-C, zależnie od partii produkcyjnej) oraz kabel JST ZH do własnych czujników temperatury DS18B20. Bramkę podłącza się do pompy ciepła na jeden z trzech sposobów:
| Złącze w pompie ciepła | Kabel | Zasilanie |
|---|---|---|
| Gniazdo serwisowe EMS (3,5 mm) | kabel serwisowy EMS 150 cm | z gniazda serwisowego |
| Gniazdo serwisowe EMS (3,5 mm) | kabel serwisowy EMS 150 cm | zasilacz zewnętrzny |
| Zaciski śrubowe magistrali EMS | kabel 100 cm do zacisków śrubowych EMS | zasilacz zewnętrzny (12 V DC lub 5 V USB-C) |
Gniazdo serwisowe wchodzi w grę tylko wtedy, gdy pompa ciepła je ma. Bramki sprzedawane od lata 2025 przyjmują oba typy zasilaczy. BBQKees EMS Gateway Wiki pokazuje, jak podłączyć bramkę do konkretnego kotła lub pompy ciepła.
- Sieć: Ethernet (RJ45) lub Wi-Fi. EMS-ESP łączy się tylko z sieciami Wi-Fi 2,4 GHz z WPA2, nie z 5 GHz.
- Oprogramowanie: EMS-ESP. Gateway E32 V2 (sprzedawany od stycznia 2024) ma PSRAM i używa wariantu oprogramowania
ESP32-16MB+. Oprogramowanie aktualizuje się w interfejsie WWW EMS-ESP w Settings → Version.
Konfiguracja
Pierwsza konfiguracja EMS-ESP
- Przy pierwszym uruchomieniu EMS-ESP otwiera punkt dostępu Wi-Fi
ems-esp(hasło WPAems-esp-neo). Bramka podłączona przez Ethernet jest dostępna pod adresem IP przydzielonym jej przez router. - Zaloguj się domyślnym użytkownikiem
admin/admini zmień hasło. - W Settings → Network podłącz bramkę do sieci domowej (Wi-Fi lub Ethernet).
- W routerze zarezerwuj dla bramki stały adres IP (rezerwacja DHCP) — szablon adresuje bramkę jej adresem IP.
Ważne ustawienia EMS-ESP
- Temperatury w °C — pozostaw wyłączone „Convert temperature values to Fahrenheit” w Settings → Application. Moduł sprawdza to co 60 s i pokazuje błąd, gdy EMS-ESP zgłasza °F.
- Boolean Format, Enum Format i Language nie mają znaczenia. Szablon odczytuje klucze
indexiboolze szczegółów encji EMS-ESP, które nie zależą od tych ustawień, i zapisuje angielskie teksty opcji, które EMS-ESP akceptuje w każdym języku. - Oprogramowanie 3.8 — moduł pokazuje ostrzeżenie, gdy bramka zgłasza wersję spoza serii 3.8. Nazwy encji używane przez szablon zmieniły się w wersji 3.7.0 (
ww→ zagnieżdżonedhw) i 3.7.2 (remoteseltemp→cooltemp); między 3.8.0 a 3.8.6 się nie zmieniły.
Token dostępu do zapisu
Odczyt nie wymaga uwierzytelniania. Zapis — tryb pracy, nastawy pomieszczenia, chłodzenia i ciepłej wody — wymaga tokenu dostępu EMS-ESP użytkownika z uprawnieniami administratora:
- Otwórz interfejs WWW EMS-ESP → Settings → Security → Manage Users.
- Kliknij ikonę klucza przy użytkowniku z uprawnieniami administratora i skopiuj token. Token nie ma daty wygaśnięcia.
- Podczas importu szablonu wklej token do parametru importu
AccessToken.
Bez tokenu integracja działa tylko w trybie odczytu, a każdy zapis kończy się błędem 401. Zamiast tego nie włączaj w EMS-ESP opcji „Bypass Access Token authorization on API calls” — otwiera ona API, a dokumentacja EMS-ESP jej nie zaleca.
Parametry importu
| Parametr | Opis |
|---|---|
IpAddress | Adres IP bramki EMS-ESP |
AccessToken | Token dostępu EMS-ESP użytkownika z uprawnieniami administratora — potrzebny tylko do zapisu; dla integracji tylko do odczytu pozostaw pusty |
Możliwości urządzeń
Obieg grzewczy 1
- Tryb pracy pompy ciepła — Wyłączony, Auto, Grzanie lub Chłodzenie dla obiegu grzewczego 1. W tym szablonie to jedyny sposób na przełączenie pompy ciepła na chłodzenie (zobacz ograniczenia regulatorów powyżej).
- Termostat pokojowy — aktualna i zadana temperatura pomieszczenia obiegu grzewczego 1 zgłaszana przez regulator. Zakres nastawy to 0–30 °C w krokach co 0,5 °C.
- Temperatura chłodzenia — nastawa temperatury chłodzenia obiegu grzewczego 1, odczyt i zapis od −1 do 30 °C w krokach co 0,5 °C.
Urządzenie termostatu pokojowego jest ograniczone do 0–30 °C. Temperatura chłodzenia jest wysyłana do EMS-ESP bez zmian, dlatego utrzymuj ją w zakresie od −1 do 30 °C.
Stan pompy ciepła
- Praca sprężarki — co właśnie robi sprężarka: Wyłączona, Grzanie, Chłodzenie, Ciepła woda, Basen, Grzanie basenu, Odszranianie lub Alarm sprężarki. To stan tylko do odczytu; wybranie wartości w TapHome nie ma żadnego efektu.
- Sprężarka pracuje — wskaźnik wł./wył., włączony, gdy sprężarka pracuje.
Temperatury
- Temperatura zewnętrzna, Temperatura zasilania i Temperatura powrotu zgłaszane przez pompę ciepła, z rozdzielczością 0,1 °C.
Energia
- Licznik energii elektrycznej — moc to aktualna moc elektryczna sprężarki (EMS-ESP zgłasza W, TapHome pokazuje kW); zużycie całkowite to całkowite zużycie energii elektrycznej pompy ciepła w kWh. Źródła nie podają, czy ta suma obejmuje elektryczną grzałkę wspomagającą, więc moc scałkowana w czasie nie musi się z nią zgadzać.
- Dostarczone ciepło [kWh] (atrybut serwisowy licznika) — całkowita energia cieplna dostarczona przez pompę ciepła. To energia cieplna, a nie zużycie energii elektrycznej.
Ciepła woda użytkowa
- Ciepła woda użytkowa — aktualna i zadana temperatura ciepłej wody pompy ciepła. Zakres nastawy urządzenia to 35–70 °C, nastawa jest wysyłana w pełnych stopniach, a pompa ciepła stosuje własne ograniczenia. Szablon używa wartości ciepłej wody pompy ciepła, a nie ustawień ciepłej wody regulatora (
dhw.settemp,dhw.mode).
Jak szablon komunikuje się z EMS-ESP
Każde urządzenie odczytuje swoje wartości jednym żądaniem HTTP GET na encję pod /api/<device>/[hc1/|dhw/]<entity> i bierze klucz value, index lub bool z odpowiedzi. Urządzenia odpytują co 30 s (temperatura zewnętrzna i licznik energii co 60 s); moduł odczytuje /api/system/info co 60 s. Zapisy to żądania HTTP POST z treścią JSON i tokenem dostępu w nagłówku Authorization: Bearer.
EMS-ESP 3.8.3 i nowsze odpowiada 429 Too Many Requests na żądanie GET, które nadejdzie wcześniej niż 50 ms po poprzednim wywołaniu API. Szablon dlatego czeka 60 ms przed każdym GET i przy 429 jeden raz powtarza żądanie po 200 ms. Inny klient, który odpytuje API EMS-ESP w tym samym czasie (na przykład drugi system automatyki domowej), nadal może sporadycznie wywołać powtórzenie.
Dlaczego REST, a nie Modbus. EMS-ESP oferuje także Modbus TCP (od wersji 3.7.0, tylko na płytkach z PSRAM) i MQTT. Przesunięcia rejestrów Modbus w EMS-ESP zmieniły się między stabilnymi wersjami 3.8.0 i 3.8.6, więc szablon Modbus po aktualizacji oprogramowania bramki po cichu odczytywałby inne wartości. REST API adresuje wartości po nazwie — encja o zmienionej nazwie kończy się widocznym błędem urządzenia.
Rozwiązywanie problemów
Błąd urządzenia „no value from the gateway”
Komunikat „no value from the gateway — this controller or unit does not report it; delete this device” oznacza, że podłączona pompa ciepła lub regulator nie wysyła tej encji. Sprawdź stronę Devices w EMS-ESP albo http://<gateway-ip>/api/boiler/entities i http://<gateway-ip>/api/thermostat/entities, a następnie usuń urządzenie po imporcie — pozostałe urządzenia działają dalej.
Błąd urządzenia 404
404 z komunikatem typu no 'xyz' in thermostat oznacza, że EMS-ESP nie zna encji pod tą ścieżką — regulator jej nie ma (na przykład hc1.hpoperatingmode w UI800) albo oprogramowanie używa innej nazwy. unknown device oznacza, że EMS-ESP nie wykrył na magistrali EMS pompy ciepła ani regulatora tego typu.
Zapis kończy się błędem 401
Brak tokenu dostępu lub jest on nieprawidłowy. Skopiuj go ponownie z Settings → Security → Manage Users → ikona klucza przy użytkowniku z uprawnieniami administratora i wpisz go do zmiennej AccessToken modułu. Token jest wyprowadzany z nazwy użytkownika i hasła superużytkownika w Settings → Security → Security Settings.
Błąd 429
Inny klient odpytuje API EMS-ESP w tej samej chwili. Szablon już rozkłada swoje żądania w czasie i powtarza je jeden raz; jeśli błąd się powtarza, zmniejsz częstotliwość odpytywania drugiego klienta.
Błąd lub ostrzeżenie modułu
- „EMS-ESP reports °F” — wyłącz Fahrenheit w Settings → Application.
- „Template written for EMS-ESP 3.8.6, gateway reports …” — bramka działa na oprogramowaniu spoza serii 3.8. Zaktualizuj EMS-ESP w Settings → Version.
Błąd licznika dotyczący nrgtotal
Jednostka bez pomiaru ciepła nie wysyła nrgtotal. Licznik pokazuje wtedy błąd, a atrybut Dostarczone ciepło pozostaje pusty; moc i zużycie całkowite działają dalej.
Bramka niedostępna
- Sprawdź diodę LED bramki: 1 niebieskie mignięcie podczas uruchamiania = magistrala EMS jeszcze nie jest podłączona (sprawdź kabel i ustawienie EMS Tx Mode), 2 czerwone mignięcia = sieć wciąż się łączy (sprawdź Settings → Network; Wi-Fi musi być 2,4 GHz WPA2), światło ciągłe = dane EMS napływają.
- Otwórz
http://<gateway-ip>/api/system/infow przeglądarce — jeśli odpowiada, bramka jest dostępna. - Jeśli adres IP się zmienił, znajdź bramkę przez nazwę mDNS
http://ems-esp.local, a następnie ustaw w routerze rezerwację DHCP. - Używaj
http://— API EMS-ESP nie obsługuje HTTPS z certyfikatami samopodpisanymi.
