Läuft: Heizung mit eBus-Schnittstelle

Begonnen von Prof. Dr. Peter Henning, 29 November 2014, 13:36:59

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning

In der aktuellen Version des ebusd werden immer zusätzliche Leerzeilen nach einem Ergebnis ausgespuckt.
Das führt m.E. zum
2015-02-24 21:21:36.611 [main notice] <<< 0 

Ich halte systemd für eine ziemlich untransparente Sache, möglicherweise schickt er das als Echo wieder an den ebusd zurück.

LG

pah

john30

Zitat von: MilanK am 24 Februar 2015, 22:40:58
Sollte ich es so verstehen, daß es nicht nur mit Systemd auftaucht? (Ich nehme an, daß du Debian benutzt.) Es wäre 'gut', weil ab und zu ist das ein vergeblicher Kampf mit Systemd...Frisch gebuildet, von hier

So, hab jetzt mal eine RPi Umgebung mit Arch Linux und schon beim compilieren wird klar, dass es Unterschiede in der Architektur bzw. den Defaults des Compilers zu geben scheint.
Ich werd das mal vertiefen.
author of ebusd

brainbubble

#542
Hallo zusammen,

ich habe bei mir mittlerweile seit ein paar Wochen (und Dank Euch allen!) meine Heizung ( vsc-146/5 inkl. vr68/3 ) via eBus-Koppler ausgelesen.
Die wichtigsten Sachen bekomme ich auch ausgelesen.
Leider scheitere ich an den SP1/SP2/KOL-Fühlern. Ich hätte gedacht, dass ich diese via "EC" auslesen kann, aber leider kommt da bei mir nichts sinnvolles zurück.
Also als Beispiel:
liefert "ebusctl read StatusHWC2":
16.00;0.00;112.00

Wobei hier 16.00 mit Sicherheit nicht die Temperatur am SP1 ist! ;-)
Na ja, SP3 ist bei mir nicht angeschlossen...

Ein Scan liefert mir übrigens folgendes Ergebnis:

2015-02-26 08:44:04.606 [bus event] scan: 08;Joh. Vaillant GmbH & Co.;BAI00;0604;5502
2015-02-26 08:44:07.678 [bus event] scan: 15;Joh. Vaillant GmbH & Co.;47000;0420;1403
2015-02-26 08:44:58.467 [bus event] scan: a0;Joh. Vaillant GmbH & Co.;sol00;0315;1002
2015-02-26 08:44:58.587 [bus event] scan: a1;Joh. Vaillant GmbH & Co.;sol00;0315;1002
2015-02-26 08:45:26.306 [bus event] scan: ec;Joh. Vaillant GmbH & Co.;sol00;0315;1002
2015-02-26 08:45:38.465 [bus event] scan: 26;Joh. Vaillant GmbH & Co.;47000;0420;1403

Was sind hier a0 und a1 (scheint ja eine Vr68/3 Besonderheit  zu sein!?)?
Weiß jemand Rat?

Viele Grüße
Jens

john30

Zitat von: brainbubble am 25 Februar 2015, 14:28:16
Was sind hier a0 und a1 (scheint ja eine Vr68/3 Besonderheit  zu sein!?)?

laut DB könnte zumindest a0 eine actoSTOR Einheit sein.
author of ebusd

john30

So, ich habs endlich geschafft, einen Converter für die viel zitierte MDB zu schreiben. Sieht schon ganz gut aus, aber es fehlen noch dutzende Datentypen, um bspw. die BAI00 daraus zu generieren. Meine Anlagenkonfiguration purzelt schon schön dabei raus. Als Input wird der Scan benötigt plus bei manchen Geräten die konkrete Variante (bspw. Sole-Wasser-WP, oder Festwert/Mischerkreis).

Jetzt könnte man sich so langsam mal um vernünftige Benamung Gedanken machen und da in den Generator einbauen...

Nächste Woche gibt weitere News dazu.
LG John
author of ebusd

Prof. Dr. Peter Henning

OK, Datenbank steht zur Verfügung.

LG

pah

brainbubble

#546
@john: Nein, kann nicht sein, es ist nur ein vih-s 300 verbaut...

Aber: ich habe beim "ec" die passenden Register für SP2, KOL und Ertragsfühler entdeckt, ebenso die für den Ertragswert, er scheint aber nur "vortagsaktuell" zu sein.
Die Register sind tatsächlich komplett andere, als in pah's ods-Datei (z.B. 0100 für SP2). Liegt dann wohl am vr-68/3 Solarmodul.
Sollte jemand diese Daten benötigen:

ecb509030d0100 - SP2 (temp)
ecb509030d0300 - Ertragsfühler (temp)
ecb509030d0400 - KOL (temp)
ecb509030d3f08 - Solarer Ertrag (UIN)

EDIT: Solarer Ertrag war nicht ganz korrekt, es war der Wert für den Ertrag im Februar... :-D






Prof. Dr. Peter Henning

Achtung, da steckt bei Vaillant eine etwas verquere Logik dahinter:

Bei der Statusabfrage (StatusSOL2 in meiner vrs620-Datei) wird der aktuelle Ertragswert angezeigt. Lies man den SolarYield einzeln aus, wird der Wert vom Vortag angezeigt, aber gleichzeitig der aktuelle Wert ins Register geschrieben. Ich hole mir also automatisch jede Nacht um kurz nach Mitternacht den Wert von SolarYield, und ziehe diesen vom Ertragswert aus StatusSOL2 ab - et voila, der Ertrag des heutigen Tages.

Die Ertragsmessung selber macht die vrs620 mit einem "erweiterten Modus" - solarer Vorlauf, Rücklauf und ein Durchflussmessgerät. Diese Berechnung gefällt mir noch gar nicht: Erstens traue ich dem Wert nicht, den die vrs620 daraus ermittelt. Und zweitens erfolgt das immer nur in ganzen kWh. Ich habe aber das Zählregister für die Impulse des Durchflusssensors noch nicht gefunden.

LG

pah


john30

Zitat von: brainbubble am 25 Februar 2015, 14:28:16
2015-02-26 08:44:58.467 [bus event] scan: a0;Joh. Vaillant GmbH & Co.;sol00;0315;1002
2015-02-26 08:44:58.587 [bus event] scan: a1;Joh. Vaillant GmbH & Co.;sol00;0315;1002
2015-02-26 08:45:26.306 [bus event] scan: ec;Joh. Vaillant GmbH & Co.;sol00;0315;1002
2015-02-26 08:45:38.465 [bus event] scan: 26;Joh. Vaillant GmbH & Co.;47000;0420;1403

Was sind hier a0 und a1 (scheint ja eine Vr68/3 Besonderheit  zu sein!?)?

Inzwischen kann ich berichten, dass Deine a0 eine DHW und a1 eine CP Einheit sind. Steht zumindest so in der DB...
author of ebusd

texel

Hallo zusammen,

ich hab es auch endlich geschafft und ebusd soweit zum Laufen bekommen. DANKE hierzu an John30 und pah für eure hervorragende Arbeit. Da ich nur eine Therme (VSC246) habe und keine Steuereinheit stellt sich mir die Frage ob ich direkt Werte (wie WW Temp etc., actoStor AN/AUS) setzen kann. In der BAI00 sind leider bisher nur "read"-Werte drin. Da ich keine Steuereinheit habe, kann ich die Writes nicht loggen ... hat vielleicht einer von Euch schon Writes auf einer BAI00 eingesetzt?

LG Texel

texel

Hallo, hab soeben ein altes Excelfile mit den writes gefunden.

habe das csv entsprechend ergänzt:
*r,bai00,,,,08,B509,0D,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
*w,bai00,,,,08,B509,0E,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
(...)
r;w,,StorageTempDesired,d.07 => Speichertemperatur Soll,,,,0400,,,temp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

Gesendet wird wohl etwas:
localhost: w bai00 StorageTempDesired 54.00
done

allerdings ändert sich der WW Wert in der Terme nicht:
localhost: r StorageTempDesired
55.00


Woran könnte es liegen? (vielleicht weil kein calormatic angeschlossen ist, d.h. die Terme reagiert dann nicht auf eBus Schreibbefehle?)

LG Texel

Prof. Dr. Peter Henning

Doch, sollte sie. Wenn man die richtigen Befehle hat. Was geht denn als binäres Datenwort raus ?

LG

pah

texel

Hallo,

Ich habe es mal "von Hand" probiert:

Write -h 08 b5 09 05 0e 04 00 a0 03
(Soll heißen, setze WW Temp auf a0 03 = 58.00 Grad...)
Es kommt ein 00 zurück.

Wenn ich dann die StorageTempDesired lese, kommt 02 70 03 zurück (also 70 03 = 55.00 Grad).

?

LG Texel

Prof. Dr. Peter Henning

Sollte eigentlich stimmen. Tut es aber nicht...

Bin leider im Moment etwas unter Wasser.

LG

pah

heikoh81

#554
Hallo zusammen,

nach einiger Zeit als passiv Mitlesender melde ich mich auch wieder zu Wort.
Erstmal großes Lob an alle hier für die Weiterentwicklung und natürlich an john30 für das neue GIT-Repository, das mittlerweile recht umfangreiche WIKI und das Bereitstellen von .deb-Dateien.

@alle:
Frage:
Wie kann ich das Logging in /var/log/ebusd.log reduzieren?

Ich verwende noch ebusd 0.50 erstellt am 29.12.2014, da ich leider noch keine Zeit für ein Update hatte.
Meine Frage: Wie kann ich den Dämon starten, mit LOGLEVEL=ERR?
Nach 3 Monaten Produktiv-Betrieb ist meine LOG-Datei auf 440MB angestiegen, obwohl ich dieses Log gar nicht brauche.
Geht hier ja auch in gewisser Weise um die Schonung der SD-Karte.

Ich bin in Linux nicht so tief drin, aber müsste ich in /etc/init.d/ebusd ansetzen?[/i]

start-stop-daemon --start --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON -- $EBUSD_OPTS

Kann ich hier irgendwie die -- $EBUSD_OPTS setzen auf LOGLEVEL=ERR?

Ich hatte zunächst versucht, in /etc/ebusd/ebusd.conf, diesen Eintrag zu setzen.
Nach Neustart von ebusd wächst die Log-Datei allerdings kontinuierlich weiter.
loglevel=ERR

Einen Reboot überlebt leider nicht:
Mittels SSH auf den Raspi, dort bei laufendem Daemon ebusctl eingegeben, dann "log loglevel error" scheint den gewünschten Effekt zu haben.
Aber überlebt das einen Reboot?

@texel:
Eventuell hatte ich das gleiche Problem wie du auch schon mal, siehe meinen Beitrag weiter vorne.
http://forum.fhem.de/index.php/topic,29737.msg251270.html#msg251270
Mir ist es nicht gelungen, die Warmwasser-Soll-Temperatur zu setzen, auch bei mir kam immer 0.0 als Rückmeldung beim Write und beim Read wurde die alte, an der Calormatic gesetzte Temperatur, angezeigt.
Das Thema Warmwasser hatte ich deshalb erstmal zurückgestellt.

Viele Grüße,
Heiko