LAN-Anbindung für BSB-Bus (Brötje, Elco Thision etc.)

Begonnen von justme1968, 29 November 2014, 19:50:40

Vorheriges Thema - Nächstes Thema

freetz

Hallo Alex,

ganz kurz, weil es wirklich off-topic ist und Dir z.B. bei haustechnikdialog.de wirkliche Spezis besser helfen können (da gehe ich auch immer hin, wenn ich Fragen zur Heizungstechnik bzw. -problemen habe):

Für mich als versierten Laien sieht das so aus, als würde Deine Pumpe das Wasser nicht schnell genug aus dem Kessel bekommen. Wenn Du einen Öler hast, der eh' nicht wirklich weit runter modulieren kann, dann verstärkt das den Effekt noch mal. Du müsstest also parallel vielleicht mal die Werte zur Pumpenmodulation und -stufe anschauen (letztere verändert sich ja nicht im Betrieb, brauchst Du also nicht loggen). Und die Brennermodulation wäre auch interessant, denn vielleicht geht die Flamme gar nicht aus, sondern "springt" nur. Eventuell hilft auch etwas an der Hysterese herumzustellen, also die Temperaturdifferenz, bei deren Unterschreitung der Brenner wieder nachheizt. Wenn die nur auf ein Grad oder so eingestellt ist, ist natürlich klar, dass die Heizung die ganze Zeit läuft.

Wenn andere noch weitere Tipps haben, dann bitte per PM an EinEinfach, der Thread hier ist eh' schon unübersichtlich genug ;)...

Gruß,

F.
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

freetz

So, Version 0.33 ist nun auf GitHub zum Download bereit und hat eine Menge neuer Features und auch Änderungen dabei, deshalb gut lesen:

- Wichtigste Änderung ist der schon erwähnte Wegfall der Heizungs-Definements. Es gibt nun einen Auto-Detect auf Basis der Gerätefamilie. Wer die mitgelieferte _config.h nicht übernimmt, muss in seiner alten Datei mindestens diese Zeile hinzufügen:
int device_id = 0;

- Ebenfalls wurden Änderungen in der bsb.h und bsb.cpp gemacht, diese also auch in das entsprechende Library-Verzeichnis kopieren!

- Bei jedem Parameter in der _defs.h ist nun hinterlegt, für welches Heizungssystem dieser funktioniert. Wenn ein Parameter bei Euch nicht (mehr) geht, dann die CommandID loggen und mir schicken, dann ändere ich das entsprechend.

- Ebenfalls wichtig: In der _config.h ist nun als Voreinstellung DEFAULT_FLAG auf read-only gesetzt, d.h., dass alle Werte (erst einmal) nur lesbar sind. Da wir inzwischen einige Parameter dabei haben, von denen ich vermute, dass sie OEM-Parameter sind, habe ich mich zu dem Schritt entschlossen (bei denen, wo ich es weiß, habe ich es schon so gesetzt). Wer das ändern will, muss wieder DEFAULT_FLAG auf 0 setzen oder bei den einzelnen Parametern (z.B. 10000 oder 710) in der _defs.h den Wert DEFAULT_FLAG durch 0 ersetzen.

- Es gibt zwei neue Sicherheitsfunktionen: TRUSTED_IP und USER_PASS_B64. TRUSTED_IP kann man auf das letzte Segment einer vertrauenswürdigen IP setzen (z.B. des FHEM-Servers), dann ist der Zugriff nur darüber möglich. Mit USER_PASS_B64 kann ein in Base64 codierter String nach dem Muster username:passwort als Zugangssperre gesetzt werden. Voreingestellt ist hier der Benutzername "atari" und das Passwort "800xl" ;).

- Wenn das LOGGER Definement aktiv ist, werden nun auch die 24h Durchschnittswerte zwischengespeichert, so dass diese bei einem Flashen oder Stromausfall nicht verloren gehen

- Das Logging kann nun auch bei aktivem LOGGER Definement mit /L0=0,0 deaktiviert werden. Die Durchschnittswerte werden trotzdem zwischengespeichert.

- Bei "unknown type" Parametern wird nun das Datenpaket dahinter ausgegeben. Wer mir dieses bei sich findet, kann es mir zusammen mit dem an der Therme abgelesenen Wert (möglichst einer, der ungleich null ist) schicken, dann kann ich den Parameter entsprechend dekodieren.

- Telegramme werden nun auch im Monitor Modus auf SD-Karte geloggt, wenn Parameter 30000 als Logging-Parameter gesetzt ist.

- Die Uhrzeit wird nun über die Broadcast-Telegramme bezogen und nicht mehr aktiv von der Therme abgerufen, was die Aktivität auf dem Bus weiter reduziert.

- Verschiedene neue Datentypen, die sich aus den neuen Parametern ergeben haben, hinzugefügt und auch SET-able gemacht.

Viel Spaß damit!

Gruß,

F.
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

Gizmo_the_great

#827
Hallo Freetz,
Vielen Dank für das neue Release und die tollen neuen Features! [emoji122]

Hab es gerade auf beide Arduinos geflasht... [emoji847]

Grüße

Gizmo


Gesendet von iPhone mit Tapatalk Pro
FHEM unter Debian auf RK3188, Homebridge, Apple TV3, Wemos D1 mini mit ESPeasy als RF433MHz-Transmitter, Raumsensor und OLED, Wemos D1 als Klingelsensor per Pushnachricht inkl. Remoteklingel-Funktion, Heizungsregelung Brötje WGB S und ISR SSR C mit BSB_Lan

PaulM

wie kann man an die Heizungsanlage die Raumtemperatur übermitteln ?
meine Versuche über

http://<ip-of-server>/I10000=19.5  // Raumtemperatur beträgt 19.5°C

bekamen zur Antwort:
FEHLER: Setzen fehlgeschlagen! - Parameter ist nur lesbar

ebenso erfolglos: Kombinationen mit 8721/8740/8742

Paul

freetz

Siehe meinen letzten Beitrag, Punkt 4 (das "deshalb gut lesen" war ernst gemeint ;) !):

Zitat- Ebenfalls wichtig: In der _config.h ist nun als Voreinstellung DEFAULT_FLAG auf read-only gesetzt, d.h., dass alle Werte (erst einmal) nur lesbar sind. Da wir inzwischen einige Parameter dabei haben, von denen ich vermute, dass sie OEM-Parameter sind, habe ich mich zu dem Schritt entschlossen (bei denen, wo ich es weiß, habe ich es schon so gesetzt). Wer das ändern will, muss wieder DEFAULT_FLAG auf 0 setzen oder bei den einzelnen Parametern (z.B. 10000 oder 710) in der _defs.h den Wert DEFAULT_FLAG durch 0 ersetzen.

Also entweder in der _config.h ganz unten
#define DEFAULT_FLAG 0
damit werden dann alle Parameter schreibbar, oder Du gehst in der .defs.h zu den Parameternummern, die Du schreiben willst, und setzt diese explizit auf schreibbar, indem Du in der jeweiligen Zeile das DEFAULT_FLAG durch 0 ersetzt. Das müsste aber bei jedem Update der _defs.h wiederholt werden.

Gruß,

F.
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

EinEinfach

Hallo freetz,

saubere Arbeit, habe gestern auf 0.33 upgedatet. System läuft wie gehabt.

Eine Sache ist mir beim flashen aufgefallen. Auf dem Bedienfeld kann ich einige Parameter abfragen, die durch das Web-Interface mit error 7 (parameter not supported) zurückgemeldet werden. Anscheinend gibt es diese Parameter im Sketch allerdings sind die für meine Regelung nicht freigegeben. Zum anderen habe ich im Web-Interface einige Parameter die ich über das Bedienfeld nicht abrufen kann (OEM Ebene?)

Danke und Gruß
Alex
fhem auf Intel NUC6CAYH mit Proxmox im LXC (Debian 10), KNX mit knxd über MDT SCN-IP000.02, Buderus GB192-15i über KM100, Solaredge WR SE9K über Modbus-TCP

freetz

Das sind dann Parameter, die dann andere CommandIDs haben, als im Sketch hinterlegt sind. Dafür bitte wie in der FAQ beschrieben einmal über den seriellen Monitor die CommandIDs mitloggen und mir schicken, dann kann ich die entsprechend für Deine (und ggf. andere) Therme hinzufügen.
Die Parameter, die Du über das Webinterface abrufen kannst, aber nicht an der Therme können, müssen aber keine OEM-Parameter sein. Das hängt vom Zusammenspiel zwischen der Regelung und der Therme zusammen. Bei mir kann z.B. die Regelung weniger als die Therme, so dass ich an die Parameter nur über das Webinterface herankomme. PaulM hat anscheinend die gleiche Steuerung in seiner Therme wie ich, obwohl er eine Brötje und ich eine Elco habe, aber er bekommt am Display all die Parameter (ohne OEM-Code) angezeigt, die ich nur über das Webinterface bekomme. Deswegen ist es wichtig, dass die Leute, die die "unknown type"-Parameter an ihrer Therme abrufen können, die entsprechenden Daten an mich schicken, damit ich die Parameter dann für alle zugänglich machen kann.

Gruß,

F.
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

PaulM


Hallo Freetz,

Beispiel 10000

bisheriger Eintrag:
{0x2D3D0215,  CAT_USER_DEFINED,     VT_TEMP,          10000, STR10000, 0,                    NULL,         DEFAULT_FLAG, DEV_ALL}, // Raumtemperatur 1 (kann als INF geschickt werden)

angepasste Zeile:
{0x2D3D0215,  CAT_USER_DEFINED,     VT_TEMP,          10000, STR10000, 0,                    NULL,         DEFAULT_FLAG, 0}, // Raumtemperatur 1 (kann bei gezielter oder allgemeiner Freigabe als INF geschickt werden)

Wäre das richtig ?

Danke

Paul

freetz

Nein, Du hast DEV_ALL durch 0 ersetzt, nicht DEFAULT_FLAG.
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

EinEinfach

ZitatDafür bitte wie in der FAQ beschrieben einmal über den seriellen Monitor die CommandIDs mitloggen und mir schicken, dann kann ich die entsprechend für Deine (und ggf. andere) Therme hinzufügen.

Hallo freetz,
ich brauche mal deine Hilfe. Ich habe versucht wie im FAQ beschrieben die CommandoIDs zu loggen, klappt auch so weit. Jetzt habe ich versucht den STR8326 aufzurufen, meine Regelung meldet sich mit der Commando-ID 0x113D305F genauso wie:
{0x113D305F,  CAT_DIAG_ERZEUGER,    VT_PERCENT,       8326,  STR8326,  0,                    NULL,         FL_RONLY,     DEV_ALL-DEV_BROETJE}, // Thision Brennermodulation
Da meine Therme für den Sketch anders definiert ist
{98,  DEV_BR_PEV}
Dachte ich mir, dass es einfach reicht die Zeile wie folgt zu erweitern:
{0x113D305F,  CAT_DIAG_ERZEUGER,    VT_PERCENT,       8326,  STR8326,  0,                    NULL,         FL_RONLY,     DEV_ALL-DEV_BROETJE-DEV_BR_PEV}
Geht aber irgendwie in die Hose, anstatt Error7 parameter not supported verschwindet der Eintrag komplett aus dem Web-Interface.

Was mache ich falsch?

Gruß
Alex
fhem auf Intel NUC6CAYH mit Proxmox im LXC (Debian 10), KNX mit knxd über MDT SCN-IP000.02, Buderus GB192-15i über KM100, Solaredge WR SE9K über Modbus-TCP

freetz

Noch mal zum Verständnis: Du hast bei Parameter 8326 die CommandID 0x113D305F geloggt? Dann musst Du in der Zeile nicht DEV_BR_PEV abziehen, sondern addieren. Und Du musst dann in der Zeile, die sonst für Deine Therme gedacht wäre (hier: DEV_BROETJE), Deine DEV_BR_PEV abziehen (denn die gilt dann ja nicht für Dich, sondern nur für die anderen Brötjes).

Die Logik hinter den DeviceIDs ist folgende:
Grundsätzlich wird jeder Befehl für alle Thermen aktiviert (DEV_ALL). Wenn eine Therme eine andere CommandID für den gleichen Parameter verwendet oder andere Bezeichnungen etc. hat, wird die ID der Therme abgezogen und in einer weiteren Zeile neu (ggf. nur) für diese Therme neu definiert. Wenn es dann für mehrere Thermen gilt, würde man dann z.B. DEV_BR_PEV+DEV_BR_WGS schreiben, wenn es für die beiden Gruppen gilt. Sprich, man kann das Minus als "außer" lesen und ein Plus als "und" lesen.

Bei manchen Parametern habe ich z.B. alle Brötje Thermen (DEV_BROETJE) ausgenommen. Wenn das nun nicht korrekt ist, weil es doch einige Brötje Modelle gibt, die nicht ausgenommen werden dürfen, muss man, wie in diesem Fall, diese Modelle wieder addieren bzw. anderswo abziehen.

Vor dem Hintergrund würde ich alle, die bestimmte Parameter mit "not supported" angezeigt bekommen, die eigentlich funktionieren müssten, noch mal bitten, im seriellen Monitor zu schauen, welche CommandID übermittelt wird. Wenn die CommandID schon in der _defs.h vorhanden ist, aber bei einer anderen Therme hinterlegt ist, dann analog wie oben beschrieben verfahren (addieren, wo die CommandID passt und subtrahieren, wo die Therme vorher aktiv war). Und dann natürlich das Ergebnis an mich zurückmelden, damit es dann für alle verfügbar wird.

Gruß,

F.
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

EinEinfach

Ah ok... jetzt habe ich es verstanden. Ich habe das mit dem Parameter 8326 gerade ausprobiert, es klapt, ich kann die Werte im Web Interface sehen.

Dann setze ich mich die Tage dran und ergänze die restlichen Parametern. Die geänderte defs.h schicke ich dann an dich zum einpflegen weiter.

Danke noch mal
Gruß
Alex
fhem auf Intel NUC6CAYH mit Proxmox im LXC (Debian 10), KNX mit knxd über MDT SCN-IP000.02, Buderus GB192-15i über KM100, Solaredge WR SE9K über Modbus-TCP

freetz

Ja, das wäre gut - vielleicht schaust Du Dir besonders die Einträge wo mit DEV_BROETJE alle Brötjes ein- und ausgeschlossen werden. Ich vermute nämlich, dass Gerätefamilien, die von den Werten nahe beieinander liegen (wie z.B. 96, 97 und 98) mehr Gemeinsamkeiten über Firmengrenzen hinweg haben, als Thermen des gleichen Herstellers, deren Gerätefamilie weiter auseinander liegt (98, 108,162). Insofern wäre zu prüfen, ob die Gerätegruppe DEV_BROETJE in manchen Fällen über das Ziel hinaus schießt...
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan

Zennix

Hi,
erstmal vielen Dank für die tolle Arbeit. Respekt.

Seit einer Woche bin ich nun auch stolzer Besitzer einer Brötje Erdgastherme.
Dem Aufruf den Parameter 6225 mitzuteilen, würde ich gerne nachkommen, doch meine WGB 20H hat diesen Parameter nicht  :-\.

Grüße / Zennix

freetz

Du hast aber schon auf die Fachmann-Ebene gewechselt (im Menü 3 Sekunden auf die Info-Taste drücken)? Ansonsten wird der Parameter auch nicht angezeigt. Die FB-anschlüsse deuten auch auf einen BSB-Bis hin.
Alle Infos zur Anbindung von Heizungssystemen mit PPS-, LPB- bzw. BSB-Bus ans LAN gibt es hier:
https://github.com/fredlcore/BSB-LAN

Alle Infos zum WLAN-Interface "Robotan" für Ambrogio/Stiga/Wolf und baugleiche Rasenmähroboter:
https://github.com/fredlcore/robotan