eBUS Adapter 3.0 Inbetriebnahme

Begonnen von Reinhart, 25 Januar 2021, 09:00:45

Vorheriges Thema - Nächstes Thema

Reinhart

Dieser Thread dient als Hilfe für die Inbetriebnahme und sammelt alle Informationen über den Adapter V3!
Schon bei den vorherigen Versionen hat es sich bewährt die Infos in einem Thread zu sammeln.

Configs der verschiedenen Varianten

USB
EBUSD_OPTS="--scanconfig --accesslevel=* --latency=20 -d enh:/dev/ttyUSB0 --address=ff"

RPI
EBUSD_OPTS="--scanconfig --accesslevel=* --latency=40 -d enh:/dev/ttyAMA0 --address=ff"

WEMOS
EBUSD_OPTS="--scanconfig --accesslevel=* --latency=100 -d enh:ip_vom_wemos:9999 --address=ff"

ETHERNET (W5500)
EBUSD_OPTS="--scanconfig --accesslevel=* --latency=20 -d enh:ip_vom_W5500:9999 --address=ff

Universaladapter
Der Universaladapter bietet alle Versionen wie USB, RPI, Wlan und Lan und werden von uns mit allen Komponenten ausgeliefert.
Alle benötigten Buchsen- und Stiftleisten sind vorhanden und es kann mittels Jumper jeder der 4 Betriebsarten konfiguriert werden. Wer keinen Universaladapter hat, kann aber dennoch durch einlöten der Buchsenleisten auf eine andere Betriebsart wechseln und die benötigten Komponenten wie Wemos oder W5500 nachkaufen. Die Platinen unterscheiden sich zwischen den Varianten nicht!
Der am letzten Bild abgebildete Bauteil ist der Abstandhalter für die Version RPI. Er dient zur Auflage am Raspberry damit der Adapter nicht durchgedrückt werden kann. Diesen einfach durch das Loch am Adapter von unten einklicken, dass er nach unten wegsteht!

Wichtige Links:

Reservierungsliste/Bestellthread Adapter V3
Adapter V3 Wiki
Jumper setzen Wiki
ebuspicloader Github
Pic Firmware Wiki
WLAN Wiki
RPI am Raspi2, 3, 4, und Zero einrichten Wiki
ebusd Released Images Github
1-wire Sensor DS18b20
Temperaturerfassung am ADC des Wemos
Fehlermeldungen und deren Bedeutung
Hinweise Vaillant VR350
Hinweise für IOBroker

Infos aus dem Betatest
Visualisierung via ECMD
Einrichten ECMD
Visualisierung via MQTT2
Visualisierung via GAEBUS
Visualisierung Heizenergie anzeigen mit svg
Visualisierung bunte Icons mit Ringfunktion
Visualisierung eBus komplett mit icon_ring
Einrichten GAEBUS
3D-Modell 3.0 Basis
3D-Modell USB
3D-Modell RPI
3D-Modell Ethernet
3D-Modell WIFI

LG
Das eBus Team
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Reinhart

#1
Montage des Abstandhalter für die Variante RPI

Der mitgelieferte Abstandhalter dient zur Abstützung des Adapters damit die Platine nicht auf den Raspberry durchgedrückt werden kann. Sie wird von unten durch das Loch am Adapter eingeklickt und stützt somit den Adapter gegen Druck von oben ab.

FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Mitch

Obwohl ich den Adapter noch nicht habe, mal eine Frage dazu:

Ich bekomme die WEMOS Variante, also mit WiFi.
Läuft der ebusd auf dem WEMOS?

Vielen Dank!
FHEM im Proxmox Container

Wolle02

Laut Sendungsverfolgung kommt mein Adapter am 29.01. bei mir an; schönes Geburtstagsgeschenk. Vielen Dank!!!  8)

Aber mal kurz eine Frage im Vorfeld:

Ist der Anschluss des eBus an den Adapter verpolungssicher oder muss ich auf etwas bestimmtes achten bzw. im Vorfeld in Erfahrung bringen?

kalled

#4
@Mitch: Nein, da brauchst du schon noch einen Linux Rechner.

@Wolle02: Ja, ist verpolungssicher.

Mein Adapter ist heute gekommen. Ging erst nachdem ich wie in der Konfig von Reinhart unten beschrieben die Latency hinzugefügt habe. Der 2.2 Adapter ging auch so.
Im Log habe ich ein paar Fehler die vorher so auch nicht da waren - hat jemand eine Idee was das Problem ist, bzw ob es ein Problem ist?

Die Meldungen im Log:
2021-01-28 15:48:02.349 [bus error] device status: eBUS comm error: framing
2021-01-28 15:48:02.349 [bus error] arbitration start error


edit: Hab im Betatest Thread gefunden, dass das "normale" Meldungen sind und evtl. auch noch runtergestuft wird.

Danke auch noch an das eBus(-Adapter) Team, tolle Arbeit!

Viele Grüße
Kalle


Mitch

Danke, dachte ich mir schon. VM ist schon fertig und wartet  ;D
FHEM im Proxmox Container

john30

Zitat von: kalled am 28 Januar 2021, 17:30:38
Im Log habe ich ein paar Fehler die vorher so auch nicht da waren - hat jemand eine Idee was das Problem ist, bzw ob es ein Problem ist?

2021-01-28 15:48:02.349 [bus error] device status: eBUS comm error: framing
2021-01-28 15:48:02.349 [bus error] arbitration start error


edit: Hab im Betatest Thread gefunden, dass das "normale" Meldungen sind und evtl. auch noch runtergestuft wird.
genau, das neue Deivce ist durch das enhanced Protkoll auch etwas gesprächiger und arbitration errors sind auch Normalzustand in einem Multi-Master Bus
author of ebusd

Mrk42

I recently received the eBus adapter 3 and would like to share with you my experience so far.

Heating system is composed of a Vaillant EcoTEC plus VC 306/5-5, Unistor VIH R 150 HA, VRC 470f, hot water circulation circuit, 13 radiators with Netatmo smart valves. As Netatmo doesn't provide eBus connectivity but only on/off it's always been a struggle to optimise the overall system operation which I had done so far by adjusting timings but it was not effective enough.  Now that I can play with the eBus data I'm able to control the central heating demand by identifying if smart valves detect a need for heat and pilot the VRC 470f to change Hc1OPMode to day or night and adjust either Hc1DayTemp or Hc1NightTemp depending on temperature differentials reported by the smart valves.  Just took me a few hours to setup thanks to MQTT and json integration of Ebusd which allowed me to quickly implement the logic above in NodeRed. Tested over 2 days now and it's working great.

Also by injecting the MQTT data though a telegraf plugin into an InfluxDB instance I also gathered some very interesting datapoints, for example I noticed that the static heat loss in the Unistor VIH R 150 HA was 3 times what I had initially anticipated (with circulation pump off), I will have to check how to better insulate this part of the system.

Now for the hardware installation that was quite tricky and will definitely have to work on it a bit more.  Initially I connected the eBus adapter close to the VRC 470f base, which is about 15 meters away from the EcoTEC, but the adapter was getting lots of connection errors, missing datapoints, and sometimes was disconnecting from the eBus and recovery of the connection was impossible (it didn't see any devices but itself anymore). I changed the connection to plug it into the bus port of the EcoTEC directly and data quality was much better.  But then I experienced some transient issues with the ESP8266 plugged to the board, maybe due to a power issue or weak WiFi signal (didn't troubleshoot it further).  Also the Ebusd docker instance was sometimes losing its connection to the mqtt server and didn't reconnect.  So I completely changed the setup, built ebusd from sources on a fresh Raspberry OS instance and connected directly the adapter on RPI through USB, so far this setup is stable.  In the next few days I will migrate again and troubleshoot at each step from USB to ESP/WiFi, then from raspberry PI to the docker server to streamline the setup of all my home automation software.

Thanks a lot to all the contributors to this project, on hardware and software sides, who make this all possible.

aheini

Hi zusammen,

traue ich mich auch mal an meinen ersten Post. Ich lese schon länger mit, aber mir fehlt noch ein grundsätzlicher Punkt (und auch bei der Recherche habe ich nichts finden können):

Steht irgendwo beschrieben, wie das 2 Draht Kabel z.B. an eine Vaillant Recovair angeschlossen werden muss?
Und wo habt ihr euren Adapter platziert? Direkt am Gerät oder wäre es auch möglich das 2 Draht Kabel über 5m zum Serverschrank zu verlegen?

Ich hoffe, das passt hier rein..

Beste Grüße,
Arne

ClausL

Hallo, Arne

bin zwar kein Spezialist, aber ich kann ja mal berichten, was bei mir funktioniert. Ich haben einfach eine verdrillte Litze an einen (bereits belegten) Anschluss angeschlossen. Funktioniert problemlos. 5 m sind auch kein Problem. Der Ebus ist was den Draht und die Länge angeht eher unproblematisch.

Viele Grüße, Claus

Reinhart

#10
Tabletui3 zur Visualisierung des Adapters V3

Ich habe heute einmal eine Mobile UI mit Hilfe des neu entwickelten Tablet-UI3 getestet. Die Entwickler sind zwar noch mitten drinnen, aber es lassen sich schon tolle Ergebnisse darstellen. Zum Unterschied der alten Tablet-UI2 gibt es hier wesentlich mehr Möglichkeiten und alles wird aufgepeppt!

Ich habe hier zunächst nur eine Seite gemacht und noch ohne Menüführung um die neuen Möglichkeiten auszuloten, aber es lassen sich tolle Effekte darstellen. Wer hier testen will, einfach die Tablet-UI3 installieren (sind nur 3 Zeilen) und die unten angehängte index.html in /opt/fhem/www/ftui austauschen. Der Aufruf erfolgt dann mit
http://IP_von_Fhem:8083/fhem/ftui/index.html


oder einfach ins FHEM-Menü hinzufügen
define tablet_ui3 FTUISRV ftui/ ./www/ftui/ Tablet-UI3

LG
Reinhart

FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Reinhart

#11
eBus Anzeige mit "icon_ring" und "icon_temp_ring" aufpeppen!

Damian hat ja sein DOIF mit svg-Funktionen nun so weit weiter entwickelt, dass sich auch in Fhem schöne dynamische Icons mit Farbring darstellen lassen. Wie man sieht gibt es immer wieder colle Ideen zur Verschönerung eurer GUI.

dazu einfach definieren.
defmod eBus_Vaillant DOIF ##

und dann das Attribut "uiTable" mit folgendem Inhalt setzen:
{package ui_Table}

"Temperaturen"|icon_temp_ring((([Fanspeed:Fanspeed]) >=0?"sani_boiler_temp\@red":""),[VorlaufSoll:VorlaufSoll:d1],20,60,120)|
icon_temp_ring("sani_supply_temp",[Vorlauf:Vorlauf],20,60,120)|
icon_temp_ring("sani_return_temp",[Ruecklauf:Ruecklauf],20,60,120)|
icon_temp_ring ("sani_water_hot",[WarmW.Temp.:WarmW.Temp.],20,60,120)

"Status Therme"|icon_ring((([Fanspeed:Fanspeed]) >=10?"vent_ventilation_level_3\@red":"vent_ventilation_level_0\@gray"),[Fanspeed:Fanspeed],0,3000,140,0,"upm",0,120)|
icon_ring((([PumpeWatt:PumpeWatt]) >=10?"sani_pump\@red":"sani_pump\@gray"),[PumpeWatt:PumpeWatt],0,100,120,0,"Watt",0,120)|
icon_ring ("weather_barometric_pressure",[Druck:Druck],0,2,120,0,"Bar",1,120)|
icon_ring ("temp_control",[HKurve:HKurve],0,2,120,0,"Curve",1,120)


Ich hab's hier beim Ventilator und der Umwälzpumpe so definiert, dass wenn diese nicht laufen das Icon grau wird. Die Readings müssen durch eure Werte ausgetauscht werden, zB: Fanspeed oder Druck.

Es geht auch wie im 2. Bild auch ein zweiter Ring, somit erhöht sich die Packungsdichte der Anzeige. Im rechten Icon wir Vorlauf und Rücklauf im Ring dargestellt, leider hat das Icon dann keinen Platz mehr und muss der Beschriftung weichen. Mir persönlich gefällt daher die Variante mit einem Ring besser, da sich hier ein Icon und der Messwert noch schön unterbringen lassen!
Im vorletzten Bild dann noch passend zum Thema Heizung ein paar HM-Regler auch mit "icon_ring" dargestellt.

{package ui_Table;;
  $TC{0..4}="align='center'";;}

icon_temp_ring((([Fanspeed:Fanspeed]) >=0?"sani_boiler_temp\@red":""),[VorlaufSoll:VorlaufSoll:d1],20,60,120),"SollTemp"|
icon_temp_ring("sani_supply_temp",[Vorlauf:Vorlauf],20,60,120),"Vorlauf"|
icon_temp_ring("sani_return_temp",[Ruecklauf:Ruecklauf],20,60,120),"Rücklauf"|
icon_temp_ring ("sani_water_hot",[WarmW.Temp.:WarmW.Temp.],20,60,120),"Warmw."|
WID([WarmWasserEinstellen:state],"selectnumbers,55,0.5,60,1,lin","set"),"Warmw."

" ",icon_ring((([Fanspeed:Fanspeed]) >=10?"vent_ventilation_level_3\@red":"vent_ventilation_level_0\@gray"),[Fanspeed:Fanspeed],0,3000,140,0,"upm",0,120),"Ventilator"," "|
" ",icon_ring((([PumpeWatt:PumpeWatt]) >=10?"sani_pump\@red":"sani_pump\@gray"),[PumpeWatt:PumpeWatt],0,100,120,0,"Watt",0,120),"Pumpe"|
" ",icon_ring ("weather_barometric_pressure",[Druck:Druck],0,2,120,0,"Bar",1,120),"Druck"|
" ",icon_ring ("temp_control",[HKurve:HKurve],0,2,120,0,"Curve",1,120),"Hkurve"|
" ",WID([HeizkurveEinstellen:state],"0.20,0.40,0.50,0.60,0.70,0.80,0.90,1.00,1.10,1.20,1.30,1.40,1.50,1.60,1.70","set"),"Heizkurve"

" ",switch([Kasa1:state],"sani_pump\@green","sani_pump\@grey","on","off"),"PumpeUG"|
" ",switch([PumpeEG:state],"sani_pump\@green","sani_pump\@grey","on","off"),"PumpeEG"|

" ",switch([Kueche:state],"sani_pump\@green","sani_pump\@grey","on","off"),"FBKueche"|
" ",switch([Wohnzimmer:state],"sani_pump\@green","sani_pump\@grey","on","off"),"FBWohnz"|
" ",switch([HM_6C9670:state],"sani_pump\@green","sani_pump\@grey","on","off"),"FBBad"

" ",icon_ring ("time_graph",[WichtungAll:state],0,2,120,0,"%",1,120),"Wichtung"|
" ",switch([Therme:state],"ios_off_fill\@green","ios_on_fill\@grey","on","off"),"Therme"|
" ",switch([Winter:state],"ios_off_fortimer_fill\@green","ios_on_fortimer_fill\@grey","on","off"),"Winter"|
" ",switch([AutoHeizkurve:state],"ios_off_till_fill\@green","ios_on_till_fill\@grey","on","off"),"AutoHc"|
" ",WID([Tagschaltung:state],"4,4.5,5","set"),"TagSchaltung"

Beispielcode für eine komplette eBus Anzeige aller relevanten Daten im letzten Bild. Die untersten 2 Reihen sind schaltbar durch anklicken auf das Icon (Pumpe, Switch).

Ebenso gibt es auch schöne Säulendiagramme in allen Varianten, zB. zur Energieanzeige!


Viel Spaß beim experimentieren!
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Reinhart

Achtung

Es erreichen mich immer wieder per Mail oder PN Anfragen das der Adapter zwar soweit funktioniert aber nur spärlich Daten liefert!

Das ist auch richtig so, das Heizgerät liefert nur ein paar Broadcast Daten automatisch, warum sollte es am Bus auch mehr übertragen wenn es die zur internen Steuerung nicht braucht! Je mehr Geräte wie Calormartic etc. miteinander kommunizieren, desto mehr wird am Bus sichtbar werden, aber mit dem Adapter wird keiner von selbst kommunizieren, dieser lauscht lediglich am Bus alles mit!

Wer sich nun die Broadcast Daten genauer anschaut wird aber feststellen das hier schon gut brauchbare Messdaten enthalten sind:

,,Status01,Vorlauftemperatur/Rücklauftemperatur/Aussentemperatur/WW Temperatur/Speichertemperatur/Pumpenstatus,,,,01,,,temp1;temp1;temp2;temp1;temp1;pumpstate,,,

diese Daten kommen regelmäßig als Broadcast und müssen nicht extra angefragt werden, alles weitere muss vom Benutzer am Bus abgefragt werden!

Beispiel im der Console:
pi@eBus:~ $ ebusctl r -f FlowTemp
54.44;ok


Es gibt dazu verschiedene Ansätze:
- polling über Dämon
- Abfrage über ECMD
- Abfrage über MQTT via "get"
- oder GAEBUS einrichten, dass ist für Anfänger die einfachste Art da hier auch die Polling Steuerung mit enthalten ist und ihr euch nicht weiter kümmern müsst.

Alle Links zu den Infos sind im ersten Post enthalten und sollen euch bei den ersten Schritten weiter helfen und wenn das nicht hilft, dann bitte hier eure Fragen posten! Per PN oder Mail hat das wenig Sinn, dazu ist das Forum da!

LG
Reinhart
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

stefan_d

Kleine Info für alle, die auch die ersten Gehversuche mit ebus machen (so wie ich).

Mein Setup: ebus Adpater über wifi.

Zuerst wollte der ebusd ( läuft auf nem NAS (arm) ) keine Daten vom esp holen.

~# ebusctl info
version: ebusd 21.2.v21.2
access: *
signal: no signal
reconnects: 0
masters: 0
messages: 11
conditional: 0
poll: 0
update: 4



Auf dem esp habe ich dann nochmal alle Felder im webgui geprüft.
Wer lesen kann, ist wie immer klar im Vorteil.  :-[  :D
Es fehlten wohl die Klicks auf "Check & Update" und "Save & Reset" ( hier kam der Hinweis: https://github.com/john30/ebusd-esp )

Ich habe dann den "Device String" aus dem Status für die Verbindung genommen.

eBUS adapter 3
Build: 20201122
ebusd device string: enh:172.16.1.212:9999
WiFi signal: 100% (-38dBm)

Und damit den ebusd neu gestartet:

~ # ebusd  --loglevel=debug -d enh:172.16.1.212:9999 -l /var/log/ebusd.log --scanconfig --latency=20000 --address=ff --readonly --accesslevel=*


Jetzt scheint er auch Daten zu bekommen, zumindest findet er andere Bus-Teilnehmer!

~ # ebusctl info
version: ebusd 21.2.v21.2
update check: OK
access: *
signal: acquired
symbol rate: 24
max symbol rate: 63
reconnects: 0
masters: 5
messages: 16
conditional: 0
poll: 0
update: 4
address 03: master #11
address 07: master #16
address 08: slave #11, scanned "MF=Kromschroeder;ID=W ;SW=0202;HW=5103"
address 30: master #3
address 70: master #4
address f1: master #10
address f6: slave #10, scanned "MF=Kromschroeder;ID=WWST?;SW=0202;HW=5103"


Kromschroeder ist vermutlich falsch, ich habe eine Weishaupt Anlage. Ich probier mal, ob ich mit https://github.com/J0EK3R/ebusd-configuration-weishaupt weiterkomme.

Danke an alle, die diesen Adapter möglich gemacht haben!

Reinhart

Danke für deinen Beitrag, solche Berichte helfen sicher einigen bei den ersten Versuchen gut weiter!

Aber wie man sieht, ganz ohne einzulesen funktionieren solche Projekte leider nicht!

Suche mal "Kromschroeder" in der Boardsuche,  da gibts einige User die solche Geräte haben und darüber berichten.

LG
Reinhart
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa