NEWS
Adapter: ebus
-
@MassiveAttack unknown command... Das sind Datenpakete, die nicht bekannt sind...
Ich habe auch andere Geräte als du... hilft nicht viel.
Das was find findet, ist bekannt..
Mit read kannst du auslesen, wenn die noch keine Werte haben...
Unbekannte ?... da steht im Github einiges drüber drin, wie man die selber einpflegen kann... Weiss ich aber auch nicht...
-
Vielleicht hat jemand hier auch eine Flexotherm 87/4, der seine DP zur Verfügung stellen würde?
habe aktuell nur begrenzt zeit, mich dem thema intensiv zu widmen -
@MassiveAttack sagte in Adapter: ebus:
Vielleicht hat jemand hier auch eine Flexotherm 87/4, der seine DP zur Verfügung stellen würde?
habe aktuell nur begrenzt zeit, mich dem thema intensiv zu widmenDas geht uns wohl allen so...
-
ok ich habe neue DPs gefunden, die nicht schon vom ebusd angelegt wurden. zB "700 Hc1HeatCurve"
zum testen habe ich dann im iobroker Hc1HeatCurve bei Komma-getrennte Liste von abgefragten Datenpunkten eingetragen, dann bekomme ich aber folgendes im log:ebus.0 2020-04-22 12:35:06.876 error (15643) Telnet Server timeout ebus.0 2020-04-22 12:35:01.874 debug (15643) telnet connected ebus.0 2020-04-22 12:35:01.869 debug (15643) connect telnet to IP 192.168.0.87 port 8888 ebus.0 2020-04-22 12:35:01.868 debug (15643) to poll ctr 1 vals: Hc1HeatCurve org Hc1HeatCurve org length 12
muss ich diesen DP dann manuell unter ebus.0.700.messages.Hc1HeatCurve erstellen?
was hat es mit dem ebus history widget auf sich? müssen dort die gleichen DPs stehen? das verstehe ich nicht
Mod-Edit: Code/Log in Code Tags gepackt. Bitte benutzt die Code Tags Funktion -> </>
Hier gehts zur Hilfe. -
@MassiveAttack Nein, Du musst die Datenpunkte nicht manuell erstellen..
Die Fehlermeldung deutet darauf hin, dass sich der ioBroker Adapter ebus nicht per Telnet mit dem ebusd verbinden kann...
Worauf läuft denn dein ioBroker ? Windows / Linux ?Kannst Du von der Maschine, auf der ioBroker läuft mit telnet auf den ebusd zugreifen ?
hat der ebusd die IP 192.168.0.87 ?
Der ebus Adapter im Iobroker kann eigene VIS-Diagramme darstellen... sprich, solange Du die nicht verwendest... Schnuppe !
So.. alles auf die Schnelle beantwortet
-
habe iobroker, ebusd, grafana und influx alles als docker auf meinem nas laufen.
ja IP passt, ein telnet vom windows rechner lieferte mir ja die werte...
telnet vom iobroker funktioniert sicher, da viele andere werte ja kommen und im log zu lesen ist:
ebus.0 2020-04-22 12:35:01.874 debug (15643) telnet connectednach 5 sekunden kommt dann:
ebus.0 2020-04-22 12:35:06.876 error (15643) Telnet Server timeoutalles klar, die vis lasse ich mir mit grafana generieren
-
hmm bekomme jetzt einen anderen fehler, nachdem ich die config angepasst habe:
ebus.0 2020-04-22 13:30:02.089 debug (16241) all telnet done ebus.0 2020-04-22 13:30:02.087 error for Hc1HeatCurve ebus.0 2020-04-22 13:30:02.087 error (16241) received ERR: element not found ebus.0 2020-04-22 13:30:02.084 debug (16241) telnet connected ebus.0 2020-04-22 13:30:02.075 debug (16241) connect telnet to IP 192.168.0.87 port 8888 ebus.0 2020-04-22 13:30:02.074 debug (16241) to poll ctr 1 vals: Hc1HeatCurve org Hc1HeatCurve org length 12
Mod-Edit: Code/Log in Code Tags gepackt. Bitte benutzt die Code Tags Funktion -> </>
Hier gehts zur Hilfe. -
@MassiveAttack zeig mal nen screenshot vom ebus abdapter (da wo die abfragen drinstehhen)
-
da steht nur eine abfrage drin:
-
habe jetzt leider erfolglos versucht, dass ganze über udp (bessere performance) laufen zu lassen. dazu habe ich am koppler auf udp umgestellt, am ebusd meine auf config geändert auf -d udp:192.168.0.65:5000
leider bekomme ich kein signal aus der ebusctl info...
jemand eine ahnung? -
@MassiveAttack Also Udp ist hier sicher nicht performanter.. wir sprechen von ein paar bytes, die übertragen werden.. Was soll es also helfen, auf die Bestätigung der Packete zu verzichten ? dass es 10 milisekunden schneller geht ?
Grundsätzlich sieht meiner meinung die Abfrage gut aus ..
In welchem Circuit ist der Datenpunkt ...
Wenn du im Telnet read -c CC Hc1.... machst, dann kommt ein Ergebniss ? (das CC ist ein Beispiel, da ich nicht weiss, in welchem Circuit...)
-
@MassiveAttack sagte in Adapter: ebus:
hmm bekomme jetzt einen anderen fehler, nachdem ich die config angepasst habe:
ebus.0 2020-04-22 13:30:02.089 debug (16241) all telnet done
ebus.0 2020-04-22 13:30:02.087 error for Hc1HeatCurve
ebus.0 2020-04-22 13:30:02.087 error (16241) received ERR: element not found
ebus.0 2020-04-22 13:30:02.084 debug (16241) telnet connected
ebus.0 2020-04-22 13:30:02.075 debug (16241) connect telnet to IP 192.168.0.87 port 8888
ebus.0 2020-04-22 13:30:02.074 debug (16241) to poll ctr 1 vals: Hc1HeatCurve org Hc1HeatCurve org length 12Diese Meldungen zeigen, dass alles gut läuft. Element not found bedeutet, dass dieser Datenpunkt nicht bekannt ist - also eine ganz normale Rückmeldung
Man muss sich immer vor Augen halten, dass es keine (öffentlich verfügbare) Dokumentation seitens der Hersteller gibt, das ist alles per Reverse-Engineering entstanden. Da das sehr aufwändig ist und die Hersteller ihre Geräte auch weiterentwickeln, kann es durchaus zu fehlerhaften Datenpunkten kommen. Vielleicht unterstützt dein Gerät bestimmte Funktionen auch einfach nicht.
Ich empfehle dir, einfach mal mit einfachen Datenpunkten anzufangen. Einfach mal alles durchprobieren und schauen was da kommt. Speziell für Hwc bietet meine Therme mehrere Datenpunkte am Regler, aber auch am BAI. Es funktionieren jedoch nicht alle
-
im browser wird mir das aber schon angezeigt, zB
"Hc1HeatCurve": {
"name": "Hc1HeatCurve",
"passive": false,
"write": false,
"lastup": 0iobroker hat aber keinen DP erstellt, und wenn ich den extra pollen möchte, kommt eben der fehler. also er existiert, kann aber nicht abgefragt werden.
befindet sich in 700.messages.Hc1HeatCurve
Die Multimatic Fachhandwerkebene sowie die WP selbst sind doch mit codes geschützt, liegt es vielleicht daran dass man diese values nicht abfragen kann/darf?? wie kann man das dann umgehen?
bei einigen DP kommt im telnet der fehler: ERR arbitration lost
outsidetemp liefert einen wert (liegt unter broadcast)
Hc1FlowTemp liefert einen fehler (liegt unter 700) -
@MassiveAttack Dass dieser Datenpunkt im Browser auftaucht liegt daran, dass er im Config-File vorhanden ist. Das bedeutet jedoch nicht zwangsläufig, dass dein Gerät diesen auch kennt - daher kommt sicherlich auch der Fehler. Wie ich zuvor angedeutet hatte, sind die Datenpunkte/Config-Files zumeist per Reserve-Engineering entstanden. Wahrscheinlich war dieser Datenpunkt bei demjenigen vorhanden, der das Config-File erstellt hat. Vorstellbar wäre, dass dein Regler eine andere Firmware besitzt und dieser Datenpunkt nicht mehr vorhanden ist, oder aber einen anderen Namen hat.
Mein VRC700 kennt zum Beispiel den Datenpunkt
z1Name2
nicht, obwohl er im Config-File vorhanden ist,Hc1HeatCurve
allerdings schon.Ich meine oben gelesen zu haben, dass du garkeinen VRC700 besitzt. Da ist natürlich von vornherein ein gewisses Gap zwischen Config-Files und tatsächlich vorhandenen Datenpunkten zu erwarten.
In meinen Ausführungen ist viel hätte, könnte und wäre enthalten. Das liegt einfach daran, dass ich kein Profi bin, was das Thema ebus angeht. Allerdings hatte ich mich anfangs auch über viele Sachen gewundert und hab im Trüben gefischt, aber irgendwann wird es klarer.
Du kannst dir ja mal die Mühe machen und alle Datenpunkte aus dem Browser per ebus abzufragen (copy&paste, im Texteditor von Unrat befeien und im ebus-Adapter eintragen). So hatte ich das anfangs gemacht und recht schnell einen überblick bekommen, welche Werte meine Therme liefert.
Den Code für die Fachhandwerkerebene kann man übrigens ebenfalls per eBus auslesen. Der Datenpunkt heißt bei mir
KeyCodeforConfigMenu
. Die Datenpunkte lassen sich auch auslesen, wenn dir dieser Code bisher unbekannt war. Das hat also nichts miteinander zu tun. -
ebusctl info liefert folgendes:
ebusctl info
version: ebusd 3.4.v3.3-51-g57eae05
access: *
signal: acquired
symbol rate: 97
max symbol rate: 177
reconnects: 0
masters: 5
messages: 421
conditional: 0
poll: 0
update: 8
address 00: master #1
address 03: master #11
address 08: slave #11
address 10: master #2
address 15: slave #2, scanned "MF=Vaillant;ID=70000;SW=0509;HW=6403", loaded "vaillant/15.700.csv"
address 26: slave
address 31: master #8, ebusd
address 36: slave #8, ebusd
address 71: master #9
address 76: slave #9vaillant/15.700.csv kann ich aber nirgendwo editieren. wird das nicht lokal gespeichert? unter /etc/ebusd finde ich nichts.
wenn ich mir ältere (2.1.1) ebusd-configs runterlade, finde ich dieses csv auch nichtdoch ich habe eine VRC700. ich habe auch testweise ein paar DP aus dem browser kopiert und im ebus adapter eingetragen, jedoch bekomme ich dann einen fehler (timeout) siehe oben weiter
ich kenne natürlich die codes, wollte nur wissen ob diese menüpunkte vom ebus auch ohne ausgelesen werden können, ok.
ich vermute es hat was mit den config files. werden die nicht lokal abgelegt, und bei einem update überschrieben? wie wird das zyklisch geprüft? was ist der unterschied zwischen "scanconfig" und "scanconfig=full"?
meine aktuelle config:
-f --scanconfig=full -d 192.168.0.65:5000 -n --latency=80000 -p 8888 --configpath=http://ebusd.eu/config/ -l /var/log/ebusd.log --accesslevel=* --httpport=8889 -
@MassiveAttack Mit deinen Startparametern werden die notwendigen Config-Files aus dem Internet geladen. Wenn du das ändern möchtest solltest du mal die zugegebenermaßen nicht besonders leicht verständliche Dokumentation von ebusd bei Github konsultieren.
-
naja happy bin ich mit dem ganzen noch nicht. ich bekomme zwar viele DPs in iobroker geladen, jedoch nicht alle (für mich) relevanten.
weiters habe ich das problem, dass nur werte unter "broadcast" von selbst aktualisiert werden, alle anderen aktualisieren sich einfach nicht, außer ich frage diese (zB mit der vaillant app) ab. das macht statistiken und auswertungen überflüssig.
wie kann man updates triggern?sobald ich einen DP in der ebus liste zum aktiven pollen eintrage, bekomme ich ein timeout. egal ob er bereits als DP existiert, oder nicht.
-
@MassiveAttack sagte in Adapter: ebus:
wie kann man updates triggern?
Indem du sie in den Adapter-Einstellungen -> Tab
EBUSD
-> im FeldKomma-getrennte Liste von abgefragten Datenpunkten
einträgst.
Etwa so:
DisplayedOutsideTemp,SolarYieldTotal,z1ActualRoomTempDesired,FlowTemp,ReturnTemp,FlowTempDesired,HwcStorageTemp,StorageTemp,StorageExitTemp,HwcTemp
@MassiveAttack sagte in Adapter: ebus:
sobald ich einen DP in der ebus liste zum aktiven pollen eintrage, bekomme ich ein timeout. egal ob er bereits als DP existiert, oder nicht.
Funktioniert die Abfrage denn auf der Kommandozeile oder kommt da auch ein Timeout?
-
@Hiltex
funktioniert auch nur bei allen DPs unter "broadcast".
read -c 700 Hc1FlowTemp liefert: ERR arbitration lost (-f geht auch nicht)woran kann das liegen? berechtigungsproblem?
-
btw, wenn ich ein "listen -u" mache, kommen unzählige codierte messages, vermutlich die die auch suche
zB: 1026b5230f05ff0000000000ffff000000000000 0101
wie könnte man diese decoden?