eBUS adapter - sterowanie kotłem Vaillant

eBUS adapter v5
W 2017 roku połączyłem Raspberry Pi z moim gazowym kotłem kondensacyjnym Vaillant . Połączenie nadal działa, zupełnie bezawaryjnie, chociaż zostało też nieco zmodernizowane. Sześć lat temu używałem pierwszej wersji adaptera, z tzw. pokrętłem, czyli kapryśnym potencjometrem do “strojenia” sygnału. Co więcej adapter komunikował się przez port szeregowy z Raspberry Pi, co było dodatkowym utrudnieniem, ze względu na ograniczenia tego interfejsu. Myślę, że nadszedł już moment, żeby napisać, jak to można poprawić.
eBus adapter 2.2
W 2021 roku nawiązałem kontakt z Geraldem, prywatnym sprzedawcą na eBay’u, który oferował płytki eBus adaptera w wersji 2.2. Wtedy był to dość duży przeskok technologiczny, a sam sprzedawca, bardzo miły człowiek, zaoferował udostępnienie gotowego adaptera do testu.

eBus 2.2 od Geralda
Przy okazji postanowiłem pozbyć się jednego Raspberry Pi, które obsługiwało wyłącznie eBus z poprzednią wersją adaptera i zastąpić je przez ESP8266, komunikujące się przez WiFi z moim głównym Raspberry Pi, gdzie jest zainstalowany ebusd, zbierane są dane, a także obsługiwana jest logika “inteligentnego domu”.

eBus adapter 2.2 połączony z ESP8266 w wersji D1 mini
Zaletą takiej konfiguracji jest prostota - jeżeli w kotłowni mamy zasięg WiFi, to umieszczamy tam urządzenie, podłączamy do prądu z użyciem “ładowarki do telefonu”, a resztą zajmuje się komputer, np. Raspberry Pi, podłączony do tej samej sieci.
Oczywiście nasz ESP8266 wymaga wstępnego przygotowania, które polega na wgraniu przeznaczonego dla niego oprogramowania ebusd i konfiguracji. Natomiast proces programowania jest dobrze opisany na stronie projektu, a konfiguracja odbywa się przez przeglądarkę www.

Konfiguracja eBUS adapter 3, wersja z 2020 roku
Jak widać na zrzucie ekranu, cały czas używam starej wersji z 2020 roku, ale ponieważ rozwiązanie jest niezawodne i w pełni funkcjonalne, to nie było potrzeby dotykania czegokolwiek.
eBUS adapter v5
Skoro nie było potrzeby zmian, to skąd pomysł na ten tekst? Wymieniam akurat dwa inne kilkuletnie adaptery w wersji 1.0 na nową wersję, żeby bezproblemowo móc nie tylko odczytywać, ale także sterować ogrzewaniem, bez żmudnego ustawiania pokrętła potencjometru.

eBUS adapter v5
Obecna, piąta wersja adaptera eBUS jest bardzo uniwersalna. Sercem układu jest mikrokontroler ESP32, który odpowiada także za komunikację. Co więcej, istnieje już tylko jedna wersja układu, z uniwersalnymi wyprowadzeniami, która może obsłużyć zarówno transmisję WiFi (bez potrzeby łączenia z żadnym dodatkowym układem), ethernet (przez układ Wiz5500, np. USR-ES1) oraz szeregową (przez USB lub bezpośrednio). Co więcej, adapter można wprost nałożyć na piny Raspberry PI, co także zapewni transmisję szeregową. Jak widać, twórca bardzo przyłożył się do pracy i postawił sobie za cel pozbycie się różnych wersji adaptera.
Dzięki temu, że integralną częścią interfejsu jest układ ESP32, nie ma już potrzeby samodzielnego wgrywania oprogramowania. Układ jest więc dostarczany gotowy do użycia.
Na stronie projektu dostępna jest bardzo dobra dokumentacja adaptera , która wyjaśnia zasadę działania, jak i wyprowadzenia połączeń. Jest także możliwość zamówienia gotowego układu w bardzo przystępnej cenie, natomiast zwykle trzeba poczekać na wyprodukowanie kolejnej partii, co czasem może potrwać nawet kilka miesięcy.
eBUS adapter v5 i USR-ES1

USR-ES1
Do sterowania ogrzewaniem będę używał eBUS adaptera zarówno przez WiFi, jak używając komunikacji przewodowej. Aby obsłużyć połączenie Ethernet, najlepiej jest użyć modułu USR-ES1. Jest on oparty o układ W5500, a dodatkowo pasuje sprzętowo do eBUS v5. Wystarczy więc go nałożyć na adapter i włączyć w konfiguracji właściwą opcję.

eBUS adapter v5 z USR-ES1
Obudowa do eBUS v5
Oczywiście sam adapter to nie wszystko. Trzeba go jeszcze jakoś opakować przed podłączeniem. Jak zawsze do tego celu użyłem własnoręcznie zaprojektowanej obudowy.

Obudowa do eBUS v5
Samo urządzenie ma niewielkie rozmiary, więc obudowa jest mniej więcej wielkości pudełka od zapałek. Jedna z opcji posiada miejsce na wkręt do zamocowania na ścianie, bo z mojego doświadczenia wynika, że często jest to bardzo praktyczne. Projekt obudowy gotowy do druku, jak zawsze udostępniam do pobrania.
Uruchomienie i konfiguracja - Ethernet
Uruchomienie interfejsu eBUS v5 je bardzo proste. Podłączamy urządzenie do prądu, łączymy się z siecią WiFi utworzoną przez ESP32 będący sercem adaptera i wchodzimy na stronę konfiguracyjną (http://192.168.4.1).

Status po pierwszym połączeniu
Jak widać po “eBUS signal: no signal”, urządzenie nie jest jeszcze podłączone do magistrali eBUS, ale w pierwszej kolejności chcemy wykonać inicjalną konfigurację. Jeżeli chcemy przełączyć się na łączność przewodową przez moduł USR-ES01, to musimy przejść do zakładki Pins i wybrać konfigurację odpowiadającą interfejsowi Ethernet i nacisnąć Save.

Następnie możemy już włączyć interfejs Ethernet w zakładce Configuration. Wybieramy adres IP, podjemy maskę i bramę a także nazwę naszego hosta i to wszystko.

Po zapisaniu zmian i podłączeniu przewodu lub restarcie, powinna być już możliwość uruchomienia interfejsu konfiguracyjnego www przez nowy adres IP.
Warto w tym miejscu zaznaczyć, że gdybyśmy zostawili pole z adresem IP puste, to zostałby on przydzielony przez DHCP. Warto jednak pamiętać, że zazwyczaj zależy nam na stałym adresie IP, czy to nadanym ręcznie czy przez stałą dzierżawę DHCP. Dlaczego? Ponieważ z adresem urządzenia będzie łączył się program, który będzie wykonywał odczyty parametrów kotła lub też zmieniał parametry. W moim przypadku jest to ebusd oraz skrypty działające na Raspberry Pi.
Konfiguracja - WiFi
Oczywiście mam świadomość, że nie każdy ma w kotłowni lub dogodnym do podłączenia miejscu sieć Ethernet. Pewnie więcej osób będzie wykorzystywać połączenie WiFi, nawet jeżeli kabel wprowadza mniejsze opóźnienia i daje lepszą stabilność.
Domyślnie adapter EBUS uruchamia się w trybie Access Pointa i ten tryb możemy też konfigurować.

Konfiguracja EBUS v5 jako Access Point
Natomiast poza bardzo specyficznymi zastosowaniami i początkową konfiguracją, ten tryb nie będzie raczej wykorzystywany. Większość osób wybierze raczej tryb WiFi station i połączy eBus adapter z istniejącą siecią domową. Tutaj także możemy zdać się na przydział adresu IP przez sieć router dzięki protokołowi DHCP lub też wpisać adres IP ręcznie. Ja oczywiście preferuję tę drugą opcję.

Konfiguracja eBUS adapter jako klienta WiFi
Co dalej?
Mamy już sprzęt uruchomiony i wstępnie skonfigurowany, należy więc go podłączyć fizycznie do magistrali eBUS, czyli do naszego kotła grzewczego albo innego kompatybilnego urządzenia. Jak to zrobić na przykładzie kotła kondensacyjnego Vaillant ecoTec VC 146 już opisywałem , więc pewnie nie warto się powtarzać.
Kolejnym krokiem będzie instalacja ebusd, o czym także można przeczytać w tym samym tekście. Do tego tematu może jednak wrócę, żeby pokazać dokładne opcje dla połączenia sieciowego, ale to już raczej temat na osobny tekst.
Do czego takie połączenie potem można będzie wykorzystać? Np. do dostosowywania poziomu grzania domu do obecności domowników, sterowania dostarczaniem ciepła podczas wyjazdów na ferie, czy chociaż opisywanego wcześniej pomiaru zużycia gazu .
Myślę, że wkrótce wrócę do sterowania parametrami pracy ogrzewania przy pomocy adaptera eBUS i skryptów shell lub Nodejs. O ile czas pozwoli i będzie zainteresowanie.

Komentarze (16)
Archiwum komentarzy z poprzedniej wersji bloga.
A czemu po prostu nie ustawiasz statycznego dzierżawy IP w routerze? W sumie nigdy nie testowałem czy ustawienie statycznego IP, powoduje iż urządzenie jest widoczne w routerze jako klient np. w liście klientów DHCP
Bo to jeden dodatkowy krok - DHCP musi działać gdy urządzenie startuje. Oczywiście tracę centralne zarządzanie. Kwestia podejścia i preferencji.
Czesc link do obudowy nie dziala.
Faktycznie, utknął w oczekiwaniu na publikację. Ponowiłem i mam nadzieję, że wkrótce się pojawi.
Cześć,
Niedawno rozpocząłem zabawę z adapterem. Udało mi się wszystko ładnie połączyć.
Mam zagwozdkę związaną ze zrozumieniem, jak działa ustawianie parametrów. Posiadam piec z regulatorem VRC 700. Regulator ustawia parametry pracy pieca (nie ma większego znaczenia które). W momencie podłączenia adaptera ebusd również ustawia te parametry (a przynajmniej daje taką możliwość).
Jak zatem od strony pieca to wygląda, gdy dwa urządzenia zapisują wartość danego rejestru? Jest jakaś priorytetyzacja danych z ebus?
Innymi słowy, jeżeli poprzez ebus zmienię wartość jakiegoś rejestru, a następnie zrobię to samo korzystając z regulatora, która wartość będzie obowiązująca?
Witam serdecznie, czy udało się może Panu ustalić czy na jednej magistrali może być kilka stareow iłów ebus?
Witam, ja mam pompę ciepła, a przygodę z ebusd zacząłem jak 8 lub 9 lat temu śledząc postępy https://github.com/john30/ebusd , łapiąc pakiety i szukając adresów elementów , zauważyłem też że mogę zmieniać wartości nie w sterowniku pompy tylko w sterowniku zewnętrznym (odp. regulatora). Ustawiam gałką np. 22 st, później ebusd odczytuje wartość 22, zapisuje 23 i na sterowniku pojawia się 23 :) , ja się zatrzymałem na płytce z tranzystorem i potencjometrem :)
Czesc, czy podlaczenie eBUS adaptera daje mozliwosc resetowania zdalnie bledow ktore pojawia sie na kotle / pompie ciepla?
Gdzie można kupić ten adapter?
dotarł do mnie właśnie adapter w wersji C6. Czy potrzebuje jeszcze Raspberry skoro mam już w domu Home Assistant? Czy da się przy takim połączenie sterować temperaturą? Chciałbym mieć kontrolę z poziomu HA ponieważ zepsuł się potencjometr w sterowniku i czasem żyje własnym życiem.
dotarł do mnie właśnie adapter w wersji C6. Czy potrzebuje jeszcze Raspberry skoro mam już w domu Home Assistant? Czy da się przy takim połączenie sterować temperaturą? Chciałbym mieć kontrolę z poziomu HA ponieważ zepsuł się potencjometr w sterowniku i czasem żyje własnym życiem.
Cześć, nie jestem chyba mocno biegły technicznie i utknąłem na samym początku z konfiguracją eBUS adapter v5 z USR-ES1.
Sam zestaw jest skonfigurowany, tzn mogę wejść przez www i widzę całą konfiguracje, był już chyba zainstalowany ebusd bo pokazuje status connected: yes (inactive).
Ale nie wiem gdzie szukać cmd aby wykonać polecenie discovery i dokończyć konfiguracje.
Czy ktoś jest jest wstanie mi odpłatnie pomóc?
Witam, Udało mi się wszystko podłączyć i wygląda na ta, że działa. Niestety ale poległem na próbie odczytu danych z kotła po eBus.
Czy mógłbym prosić o pomoc w tym temacie. Do odczytu chciałbym użyć Home Assistant lub Node Red.
Cześć
Czy istnieje coś takiego jak most ebus przez wifi,. albo LAN? Potrzebuje zmienić położenie sterownika rekuperacji a nie nie mogę już położyć nowego kabla.
Dziękuję
Dzień dobry, szukam rozwiązania do kotła Junkers CerapurSmart ZSB. Czy opisany adapter będzie działał ? Czy będzie działała integracja z HA przez ebusd ?
Cześć, mam pewien problem z lokalizację modułu ebus, który opisujesz. Chodzi o eBus adapter 2.2. Mam pewien pomysł aby wykorzystać go do połączenia do mojej pompy ciepła Ariston. Wifi mnie nie interesuje bo komunikacja odbywa się z użyciem nrf24. Czy dysponujesz jakimś bezpośrednim linkiem pod którym mógłbym kupić ten moduł?
Pozdrawiam
Arek