NEWS
EBus - Adapter oder alternative Anbindung möglich?
-
Hallo zusammen,
ich muss vorweg gestehen, dass ich nach Anleitung und mit Hilfestellung schon viel umgesetzt habe, was ich mir bis zu dem Zeitpunkt jeweils im Leben nicht hätte vorstellen können. Dafür ist die teilweise auch sehr persönliche Hilfe hier eigentlich nicht mit Gold aufzuwiegen. :mrgreen:
Zur Vorgeschichte, bzw. zur Fragestellung:
Wir haben, seit einem großen Wasserschaden 2011, EG und OG (2-Fam.Haus) heizungstechnisch getrennt und 2 Wolf-Heizungsanlagen in Betrieb. Eine CGS 20/160 und eine CGB-K-20, also noch keine Anlagen der 2er Serie, die per ISM8i betrieben werden können. Ein ISM7i ist für die CGB offiziell möglich und lt. Aussage von Wolf für die CGS auch. Bringt mich aber nicht weiter, da der Adapter dafür nicht taugt und ich für jede Heizung ein eigenes Modul benötigen würde. Kostentechnisch eher ein K.O.-Kriterium.
<u>Ich suche daher einen Adapter oder eine andere Möglichkeit den eBus, bzw. die dort gelieferten Daten in ioBroker zu bekommen.</u>
Der aktuelle Stand der Dinge:
Aktuell lese ich den eBus der CGS 20/160 mittels einer eBus-Platine (https://forum.fhem.de/index.php/topic,4 … #msg414611), die an einem Arduino Leonardo mit SD-Shield hängt aus. Der Arduino hängt per USB an der CCU2 und füllt mittels CUxD diverse Variablen mit entsprechenden Werten der Anlage. Das funktioniert soweit sehr ordentlich.
Das Ziel:
Die CCU2 ist ja nicht unbedingt für Rechenkapazität/Geschwindigkeit berühmt. Da zukünftig die 2. Heizungsanlage auch mit angebunden werden soll, baut sich hier bereits die nächste Hürde auf. Wie bekomme ich die, parallel zur 1., ebenfalls angebunden? Experimente mit USB-Hub o.ä. habe ich noch nicht durchgeführt, scheue davor auch aus Performancegründen zurück. Eigentlich möchte ich auch eher von der CCU wegverlagern als umgekehrt.
Optimal wäre also ein Adapter der eBus-Signale verarbeiten kann. Da nicht nur "ältere" Wolf-Geräte diesen nutzen, sondern auch z.B. Vaillant oder Weishaupt, wäre damit vielleicht vielen anderen auch geholfen. Zumal i.d.R. bei Adaptern eine weitere Instanz installiert werden kann. Darüber hoffe ich die 2. Heizungsanlage dann einbinden zu können.
Was kann ich beisteuern?
Programmieren kann ich (leider) nicht selbst. Dafür fehlt mir als Schreibtischtäter der berufliche Background. Ich könnte aber so eine der o.g. eBus-Platinen zur Verfügung stellen, falls wirklich jemand sich an so einem Adapter versuchen würde. Ich habe damals zur Sicherheit 3 Stück genommen und habe damit eine für "Forschungszwecke" über.
-
Also ich stehe gerade vor einem ähnlichen Problem! Ich habe eine Vaillant Heizung und möchte diese auch über den ebus Auslesen [emoji6] die gleiche Platine habe ich mit jetzt auch bestellt, aber bin leider noch nicht dazu gekommen diese fertig zu löten
Ich möchte die Daten so auslesen das diese in ioBroker dann direkt zu Verfügung stehen
Also sind wir schon zu zweit [emoji6]
Gruß
Adrian
Gesendet von iPhone mit Tapatalk
-
jo das Gleiche bei mir… Platine und Bauteile sind da, aber noch nicht zusammen gelötet...
soweit ich das im FHEM-Forum verstanden habe, hängt die Platine an einem TTL-Konverter und der an einem PI auf dem eBusD läuft...
Ich könnte mir grad vorstellen, wenn das mit dem Adapter noch dauert (ich habe da leider keine Ahnung von der Programmierung) die Sache mit FHEM auszulesen und dann über die Brück FHEM <--> IoB zu verarbeiten.
-
Willkommen "Leidensgenossen"
dann bin ich ja echt nicht alleine. War mir nicht klar, ob ich mit dem Wunsch ein Exot bin oder nicht.
Ich könnte mir grad vorstellen, wenn das mit dem Adapter noch dauert (ich habe da leider keine Ahnung von der Programmierung) die Sache mit FHEM auszulesen und dann über die Brück FHEM <–> IoB zu verarbeiten. `
Von "keine Ahnung" bei der Programmierung kann ich mitreden….Für Wolf war kein Umweg über FHEM nötig, deswegen kann ich zu dem Weg leider nichts beitragen. Aber für Vaillant gibt es glaube ich auch schon was für den Arduino. Zumindest meine ich beim Lesen darüber mal gestolpert zu sein. Das Logging erledigt der Arduino derzeit über die SD-Karte und liefert seine Werte über CUxD direkt an die CCU.
-
Hallo miteinander (allen hier im Forum, ist mein erster Beitrag),
ich bin schon seit einiger Zeit iobroker-Nutzer (Homematic-Komponenten hauptsächlich) und gerade dabei alles neu aufzusetzen nachdem mir meine damalige Installation hopps ging
Mittlerweile hab ich einen ebus-Adapter im Einsatz (der aus dem FHEM-Forum bzw. Wiki), und seit ca. einer Woche ist er angeschlossen 8-)
Nachdem ich selbst kein FHEM verwende hab ich mir erstmal den ebusd angeschaut, der für meine Vaillant VRC430 recht gut funktioniert: Ich kann Werte auslesen, bekomme sonst keine Fehlermeldungen (außer mal gelegentlich ein noch unbekanntes Paket) und könnte wohl auch schreiben.
Sobald ich mal wieder etwas Zeit damit verbringen kann würde ich mir anschauen wollen wie man die Werte vom RPi mit ebusd auf meinen Odroid mit iobroker bringt: ebusd bietet ein Telnet-Interface an, bei dem man mit simplen Befehlen Werte bekommt oder setzen kann. Es gobt wohl auch die Möglichkeit, den eBus kontinuierlich abzufragen und nur Änderungen zu loggen - scheint auch interessant zu sein.
Was ist denn die sinnvollere Variante um hier entweder einen generischen oder spezifischen Adapter für ioBroker zu basteln: Lieber Push von Änderungen an iobroker oder Polling von ioBroker?
Wie dem auch sei, bei mir dauert das noch etwas bis ich wieder mehr Zeit dafür investieren kann, aber ich bin ganz Ohr hier im Thread, und kann wohl auch etwas beisteuern (auch wenn ich Javascript-Programmierung seit 1998 oder so ignoriere - war wohl ein Fehler …)
Schönen Gruß,
Hoich
-
Also ich möchte auch demnächst Werte über den EBUS Adapter von meiner Vaillant Brennwerttherme Auslesen! Den Adapter muss ich nur noch zusammenlöten [emoji6]
Dann wollte ich mich auch dran setzen!
Kannst du mehr über deine Vorgehensweise erzählen, bevor ich das Rad neu erfinden muss[emoji6]
Ich werde dann auch berichten, wie es bei mir aussieht
Gruß
Adrian
Gesendet von iPhone mit Tapatalk
-
also ich werde das vorerst so aufbauen:
eBus-Interface <–> TTL-Konverter <--> RPI mit eBusd <--> RPI mit FHEM <--> BananaPi mit ioBroker
wobei man eBusd und FHEM auf einem Pi laufen lassen könnte.
Der FHEM-Adapter in ioBroker funktioniert soweit gut. Ich hatte das schon für zwave in Benutzung.
Und zum Auslesen der FHEM_eBus-Werte wirds allemal langen, denke ich.
-
` > eBus-Interface <–> TTL-Konverter <--> RPI mit eBusd <--> RPI mit FHEM <--> BananaPi mit ioBroker
wobei man eBusd und FHEM auf einem Pi laufen lassen könnte. `
Ich wollte das genau so machen, nur gerne ohne FHEM wenn möglich (habe ich noch nie verwendet, auch wenn mir Perl sympathisch ist
) und anstatt des BananaPi habe ich einen Odroid. Das einzige was mir fehlt ist die Verbindung ebusd <-> iobroker , aber ich denke das sollte einfach zu implementieren sein.
Bilder kann ich heute abend mal nachschieben.
-
Also ich hätte das auch gern ohne fhem werde es versuchen irgendwie direkt in den iobroker zu bekommen [emoji23][emoji6]
Aber als erstes muss ich die Ebus Adapterplatine zusammen bauen! Das nehme ich mir mal für das kommende Wochenende vor [emoji4]
Aber schon mal toll das man nicht alleine vor dem Problem steht
Gruß
Adrian
Gesendet von iPhone mit Tapatalk
-
Das einzige was mir fehlt ist die Verbindung ebusd <-> iobroker , aber ich denke das sollte einfach zu implementieren sein. `
wenns fertig ist, will ich das auch gern nutzen.Ich stelle mich bei so etwas zu dusselig an. Habe es bis dato auch noch nicht hinbekommen einen Adapter zu bauen.
-
Hier noch die versprochenen Bilder (in low-res, damit's auch fix lädt).
An die Vaillant VRC430 hab ich ein 2-adriges Kabel (0.75mm^2) gezogen und an die rote Klemme angeschlossen:
Im nächsten Raum ist ein Raspberry Pi mit der Platine aus dem FHEM-Forum (oder hier: http://www.fhemwiki.de/wiki/EBUS ), die ich ein ein kleines selbstgedrucktes Gehäuse gesetzt hab um Kurzschlüsse zu vermeiden:
Auf dem RPi läuft dann der ebusd, den ich lokal mit ebusctl lesen/schreiben kann, oder der auch via Telnet von außen erreichbar ist. An Befehlen sind denke ich die Befehle "find", "read" und "listen" interessant (wenn ich erstmal nur lesend zugreifen will). Hier mal so meine naive Vorstellung wie man an die Daten von iobroker aus kommt:
Mit
find -f
bekomme ich alle Felder angezeigt, die vorhanden sind, die könnten also alle an iobroker exportiert werden. Die meisten werden aber erst durch aktives Lesen über den Bus gefüllt, weil nicht gebroadcastet. Mitread WaterPressure
kann ich dann die Felder mit Werten über den eBus ergänzen (wenn ich z.B. den Wasserdruck haben will). Wenn man dann alles Statische hat, müsste````
listenSo denke ich mir sollte man von iobroker aus auf den RPi zugreifen können. Trickreich ist für mich jetzt dann wie sich das alles mit node.js machen lässt. Falls es schon ein gutes Adapterbeispiel hierfür gäbe in das nur noch die Syntax rein muss, her damit :)
-
schaut doch schon mal vielversprechend aus…
@Hoich:Falls es schon ein gutes Adapterbeispiel hierfür gäbe in das nur noch die Syntax rein muss, her damit
`
es gibt doch auf dem GIT nen Adapter-Template.https://github.com/ioBroker/ioBroker.template
:shock: Aber frage mich bitte nicht wie das geht. Habe keine Ahnung vom Adapterbau… :shock:
-
Wow, es ist als könntet ihr meine Gedanken lesen.
Da ich gerade mit dem Auslesen und Auswerten meines Stromzählers fertig geworden bin, habe ich an meine Vaillant Heizung gedacht. Eine interessante Beschreibung habe ich hier http://www.karrais.de/ebusd/doku_vwmon_ebusd.pdf gefunden.
Hardware:
einerseits finde ich den eBus-USB Kotroller https://www.eservice-online.de/shop/ebu … oppler-usb sehr gelungen. Den es auch als seriell und eth gibt. Allerdings ist das Teil recht teuer. Andererseits will ich versuchen noch eine Platine zu bekommen um alles selber zu löten. (AUFRUF: Falls einer noch eine Platine rumliegen hat, dann würde ich sie gerne ankaufen)
Werte auslesen:
Auslesen wäre wohl nicht so schwer. Könnte man so ähnlich wie bei dem Stromzähler machen. Mit shell-scripten Werte auslesen und in Deite schreiben. Danach die Werte in Datenpunkte importieren.
Werte schreiben:
muss man schauen. Vielleicht kann man es mit vwmon http://baublog.ozerov.de/waermepumpe/vw … ermepumpe/ was anfangen.
Auf die Hoffnung demnächst meine Heizung über ioBroker steuern zu können!
euer a200.
-
Wow, es ist als könntet ihr meine Gedanken lesen.
Da ich gerade mit dem Auslesen und Auswerten meines Stromzählers fertig geworden bin, habe ich an meine Vaillant Heizung…. `
Wie liest du den deinen Stromzähler aus!?
Ich frage nur denn Ich lese meinen Gas und Stromzähler mit Volkszähler aus! Jetzt muss ich nämlich eine Möglichkeit finden um die Werte in IOBROKER zu bekommen
Also zB den Momentanen Verbrauch, den Tagesverbrauch usw.
Gruß
Adrian
Gesendet von iPhone mit Tapatalk
-
Wow, es ist als könntet ihr meine Gedanken lesen.
Da ich gerade mit dem Auslesen und Auswerten meines Stromzählers fertig geworden bin, habe ich an meine Vaillant Heizung…. `
Wie liest du den deinen Stromzähler aus!?
Ich frage nur denn Ich lese meinen Gas und Stromzähler mit Volkszähler aus! Jetzt muss ich nämlich eine Möglichkeit finden um die Werte in IOBROKER zu bekommen
Also zB den Momentanen Verbrauch, den Tagesverbrauch usw.
Gruß
Adrian
Gesendet von iPhone mit Tapatalk `
Ich nutze auch den Volkszähler.dazu habe ich kleines script geschrieben der mir minütlich den Status des Zählers ausgibt.
also: Momentane Last + Gesamtverbrauch diese Wert lese ich per Javascript in ioBroker ein. Dazu habe ich weitere scripte angelegt, die mir den stündlichen, täglichen, wöchentlichen und monatlichen Wert berechnen und per history-adapter speichern.
dadurch kann ich schöne Statistiken erstellen.
Melde dich, wenn du die scripte haben willst.
1597_bild_2.jpg
1597_bild_3.jpg -
Ahh über die Scripte würde ich mich riesig freuen! Bin da noch nIcht so bewandert was Scripte erstellen angeht [emoji12][emoji23]
Ich danke dir schon im Vorfeld dafür [emoji1360]
Gesendet von iPhone mit Tapatalk
-
Ahh über die Scripte würde ich mich riesig freuen! Bin da noch nIcht so bewandert was Scripte erstellen angeht [emoji12][emoji23]
Ich danke dir schon im Vorfeld dafür [emoji1360]
Gesendet von iPhone mit Tapatalk `
Habe meine Antwort nach http://forum.iobroker.net/viewtopic.php?f=21&t=4363 ausgelagert.
Lg a200
-
Kurzer Zwischenstand: Ich kann mich mittlerweile via Javascript zum ebusd verbinden und Kommandos absetzen. Das Parsen der Antworten ist noch etwas aufwendig, und ich brauch wohl noch etwas, aber zumindest habe ich schon die ersten Infos vom ebusd (der mit der Vaillant VRC430 verbunden ist) zu ibroker transferiert
Derzeit habe ich die Befehle 'info' und 'find' implementiert, ich denke es ist sinnvoll viele kleine Skripte zu machen um die dann regelmäßig je nach Bedarf aufzurufen. Hier der info-Code schonmal als Teaser:
`var root = 'eBus'; // root of state inside 'javascript.0' var host = 'pi1'; // set to your host running ebusd var port = 8888; // default ebusd port var net = require('net'); log('trying'); var req = 'info'; createState('eBus'); var run=1; function parse(data) { log("run: " + run); var arr = data.toString().split(/\r?\n/); for(var i = 0; i <arr.length; i++)/{/var/line="arr[i];" fields="line.split('\:" ');/if(fields.length="">1) { log('Field=' + fields[0] + " Value=" + fields[1]); fields[0] = fields[0].replace(' ','_'); if(run==1) { createState('eBus' + '.' + fields[0], fields[1]); } else if (run==2) { var subfields = fields[1].split(', '); var tmp = subfields[0].split('#'); var master = tmp[1]; createState('eBus' + '.' + master); if(/^scanned/.test(subfields[1])) { tmp = subfields[1].replace('scanned \"', ''); tmp = tmp.replace('\"', ''); tmp = tmp.split(';'); for(var j=0; j <tmp.length;j++) {/var/subfields2="tmp[j].split('=');" createstate('ebus'/+/'.'/master/subfields2[0],/subfields2[1]);/}/else/log('not/enough/fields:/'/line);/run++;/client="new" net.socket();/client.connect(port,/host,/function()/log('connected/to/ebusd/on/host/':'/port);/client.write(req/'\n');/});/databuf/;/client.on('data',/function(data)/prev="0," next;/datastr="data.toString();" while/((next="datastr.indexOf('\n\n'," prev))="">-1) { databuf += datastr.substring(prev, next); parse(databuf); databuf = ''; prev = next + 1; } databuf += datastr.substring(prev); client.write('quit\n'); }); client.on('close', function() { log('Connection to ebusd closed'); });</tmp.length;j++)></arr.length;>` Den find-Befehl schiebe ich nach, sobald er stabil ist :) Hoich[/i]
-
Geilomat…. [emoji1360] ich warte immer noch auf den serial/ USB Adapter [emoji30] bis jetzt wurde dieser nämlich nicht geliefert!
Aber bei der Entwicklungsgeschwindigkeit seid ihr schon fertig bis ich den Adapter erhalte [emoji23][emoji6]
Gesendet von iPhone mit Tapatalk Pro
-
Geilomat…. [emoji1360] ich warte immer noch auf den serial/ USB Adapter [emoji30] bis jetzt wurde dieser nämlich nicht geliefert! `
moin,ich habe das hier: https://www.amazon.de/tinxi-FT232RL-Con … B01C2P9GD2 gekauft. wird sofort geliefert. Allerdings habe ich noch keine Zeit zum Löten gehabt.
Was hast du denn bestellt?