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

@frank: Ah, danke für die Info, das werde ich mir dann mal genauer anschauen...
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

FunkOdyssey

#406
Zitat von: FunkOdyssey am 11 April 2016, 09:38:14
Tag, ich hab gerade mal eine ganz andere Frage.

Ich habe plötzlich sehr viele HTTPMOD-Fehlermeldungen im Log stehen:
2016.04.11 08:59:12 3: broetje: Read callback: request type was update retry 0,
Header: HTTP/1.1 200 OK
Content-Type: text/html, body empty,
Error: connect to to http://xxx.xxx.xxxxxx:80 timed out


Dies war bis vor kurzem nicht. Es hat sich aber auch viel geändert, so dass die Fehlerquelle schlecht einzugrenzen ist:
- Netztteil getauscht (iPhone-Netzteil angeschlossen)
- BSB auf 0.14 aktualisiert
- FHEM Updates
- Shield getauscht (war bei anderen Shields aber auch)

Ich habe nun ein wenig herumgespielt und auch massenhaft Logs gesichtet.

Aktueller Zwischenstand:
- am Netzteil liegt es nicht
- Unterschiede im Verhalten zwischen 0.12/0.13/0.14 nicht gefunden
- drei ETH-Shields ausprobiert
- HTTPMOD von fünf Definitionen mühsam auf eine Definition zusammengestaucht

Und das macht alles keinen Unterschied.

Da ich noch nicht solange "im Club" bin, waren meine Logs auch nicht überschaubar. Und tatsächlich. Mir ist es nicht aufgefallen, aber ich hatte die Fehler seit Anbeginn.

Dann muss ich wohl nun einfach damit leben. :-)
Ich werde mich nun in den HTTPMOD-Threads schlau machen. Es hat ja definitiv nichts mit diesem Thema hier zu tun.

Schotty

@freetz: Aah, ok, jetzt habe ich es auch verstanden :)  Ok, für eine möglichst extrem genaue HK-Anpassung mag es sinnvoll sein, auch, wenn du wahrscheinlich öfter nachjustieren musst. Ich dachte anfangs nämlich, dass es dir um das Taktverhalten deines Brenners geht, und da hätte ich dann erstmal bei den üblichen Verdächtigen angesetzt.. Aber der Feinschliff und die letzten 5% sind natürlich eine verständliche Herausforderung :D
Gruß
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

Schotty

Zitat von: FunkOdyssey am 12 April 2016, 14:49:43
[...]
Ich werde mich nun in den HTTPMOD-Threads schlau machen. Es hat ja definitiv nichts mit diesem Thema hier zu tun.
Falls du dahinter kommen solltest, lass und bitte an deinen Erkenntnissen teil haben! ;)
Gruß
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

the_muggle

Erstmal ein Hallo an die Runde und fetten Respekt hinter dieser Arbeit!!
Ich habe heute die Hardware erhalten und den Adapter gleich mal zusammengelötet.

Zu meiner Anlage:
Elco Klöckner Logon B G2Z2 + Logon B MM

2 Heizkreise mit 2000 Liter Pufferspeicher und 20m² WW-Solar.
Raumthermostate habe ich 2 QAA75.611

Zur Hardware:
Bei dem Schaltplan, glaube ich (vorsicht Laie), dürfte sich ein kleiner Fehler eingeschlichen haben.
Beim zweiten Optokoppler (der untere) ist PIN 1 und 2 auf der Zeichnung vertauscht --> Da wäre ich fast drübergestolpert ;)
Irre ich mich da?

Zur Software:
Ein wenig scheint die Heizung mit mir zu Quatschen :) aber bei vielen Dingen kommt hier im Webinterface kein Output.

Mir ist bewusst, dass hier sicher nicht noch alles erforscht ist und viele Dinge sicher noch eingepflegt werden müssen. Da kommt jetzt meine eigentliche Frage:

Wie kann ich euch und damit auch mir helfen?

Da dies mein erstes Arduino Projekt ist und ich sonst nur mit Raspberries zu tun habe, könnt ich mich manchmal auch etwas ungeschickt anstellen :)

lg

the_muggle

Ich bin mal meinem Ausdruck durchgegangen mit den Zeilennummern (Gab mir der Techniker nach der Inbetriebnahme)


const char STR2200[] PROGMEM = "Kessel-Betriebsart";
const char STR2232[] PROGMEM = "Klappe Laufzeit";
const char STR2233[] PROGMEM = "Modulierend P-Band Xp";
const char STR2234[] PROGMEM = "Modulier Nach'zeit Tn";
const char STR2235[] PROGMEM = "Modulier Vorh'zeit Tv";
const char STR2240[] PROGMEM = "Kessel-Schaltdifferenz";
const char STR2241[] PROGMEM = "Brennlaufzeit Min-Begrenzung";
const char STR2250[] PROGMEM = "Pumpennachlaufzeit";
const char STR2260[] PROGMEM = "Anfahren durch Verbraucher";
const char STR2261[] PROGMEM = "Anfahren durch Kesselpumpe";
const char STR2262[] PROGMEM = "EinSchOptTKessMin";
const char STR2271[] PROGMEM = "Rücklaufsollwert OEM";
const char STR2272[] PROGMEM = "Rücklaufsollwert mit Einfluss";
const char STR2282[] PROGMEM = "Antrieb Laufzeit T Rücklauf";
const char STR2283[] PROGMEM = "Xp TRückl-Begrenzung";
const char STR2284[] PROGMEM = "Tn TRückl-Begrenzung";
const char STR2285[] PROGMEM = "Tv TRückl-Begrenzung";
const char STR2290[] PROGMEM = "Schaltdifferenz Bypasspumpe";
const char STR2300[] PROGMEM = "Anlagefrost Kesselpumpe";
const char STR2310[] PROGMEM = "TR-Funktion";
const char STR2315[] PROGMEM = "Temperaturhub Min";
const char STR2316[] PROGMEM = "Temperaturhub Max";
const char STR2322[] PROGMEM = "Pumpendrehzahl Min Kessel";
const char STR2323[] PROGMEM = "Pumpendrehzahl Max Kessel";
const char STR2324[] PROGMEM = "Drehzahl Xp Kessel";
const char STR2325[] PROGMEM = "Drehzahl Tn Kessel";
const char STR2326[] PROGMEM = "Drehzahl Tv Kessel";
const char STR3872[] PROGMEM = "Drehzahl Xp Solar";
const char STR3873[] PROGMEM = "Drehzahl Tn Solar";
const char STR4751[] PROGMEM = "Pufferspeicher TempMax";
const char STR4800[] PROGMEM = "Puffer Teilladung";
const char STR4811[] PROGMEM = "Durchladung TempMin";
const char STR4813[] PROGMEM = "Durchlade Fühler";
const char STR5024[] PROGMEM = "Schaltdifferenz";
const char STR5030[] PROGMEM = "Ladezeitbegrenzung";
const char STR5040[] PROGMEM = "Entleerungsschutz";
const char STR5051[] PROGMEM = "Speichertemp Maximum";
const char STR5070[] PROGMEM = "AutoPush";
const char STR5103[] PROGMEM = "Drehzahl Xp";
const char STR5104[] PROGMEM = "Drehzahl Tn";
const char STR5120[] PROGMEM = "ÜberhöhMischerTWWVor";
const char STR5124[] PROGMEM = "Antrieb-Laufz TWWVor";
const char STR5125[] PROGMEM = "Xp Vorregler";
const char STR5126[] PROGMEM = "Tn Vorregler";
const char STR6116[] PROGMEM = "ZeitKonstSollwertf";
const char STR6117[] PROGMEM = "Zentr. Sollwertf";
const char STR6140[] PROGMEM = "Wasserdruck Maximum";
const char STR6141[] PROGMEM = "Wasserdruck Minimum";
const char STR6142[] PROGMEM = "Wasserdruck krit Min";
const char STR6150[] PROGMEM = "Wasserdruck 2 Maximum";
const char STR6151[] PROGMEM = "Wasserdruck 2 Minimum";
const char STR6152[] PROGMEM = "Wasserdruck 2 krit Min";
const char STR6180[] PROGMEM = "Wasserdruck 3 Maximum";
const char STR6181[] PROGMEM = "Wasserdruck 3 Minimum";
const char STR6182[] PROGMEM = "Wasserdruck 3 krit Min";
const char STR6204[] PROGMEM = "Parameter speichern";
const char STR6222[] PROGMEM = "Gerätebetriebsstunden";
const char STR6224[] PROGMEM = "Geräte-Identifikation";
const char STR6630[] PROGMEM = "Kaskadenmaster";

Was wird dazu noch benötigt?
Ich denke mal der HexCode oder?
Wie komme ich zu dem?

lg

Schotty

Zitat von: the_muggle am 12 April 2016, 19:52:47
Zu meiner Anlage:
Elco Klöckner Logon B G2Z2 + Logon B MM
Elco? Hmm, da war doch was.. ;)
Vorweg: Prinzipiell sind nicht immer alle Parameter bei jeder Hzg verfügbar, da die Steuerungen in verschiedenen Modellen zum Einsatz kommen. Hast du mal alle Kategorien und Parameter abgefragt und nachgeschaut, welche bei dir passen/vorhanden sind? Sollte eigtl. schon ein Großteil und auch das Wichtigste sein.
Lies mal ab S.5, freetz hat eine Elco Thision (Gas!) und dafür eine Menge Codes geliefert, die Gero eingepflegt hat. Vielleicht sonst mal testweise das definement 'THISION' im Sketch aktivieren und dann nochmal nachsehen und vergleichen, ob du dann mehr Parameter zur Verfügung hast.
Bei mir werkelt eine Brötje SOB, also ein Öler(!) - falls du also einen Öler (Straton?) hast, vielleicht mal das definement 'BROETJE_SOB' testweise aktivieren und nochmal die verfügbaren Parameter checken, u.U. passt da ja noch einiges mehr.

ABER:
Mir fällt gerade auf, dass die Parameter, die du in deinem 2. Posting aufgezählt hast, diejenigen aus der OEM-Ebene zu sein scheinen (jedenfalls im Vergleich zu meiner Regelung, bei mir sind sie in der OEM-Ebene); dafür spricht auch '2271 - Rücklaufsollwert OEM'.
Sollte es bei dir auch so sein -und davon gehe ich jetzt mal aus- sind die Parameter m.E. nicht so einfach zugänglich zu machen, da die OEM-Ebene (aus gutem Grund!) passwortgeschützt ist, und die entspr. Parameter daher (korrigiere mich bitte, wenn ich mich irre, Gero) auch nicht berücksichtigt wurden.

Zitat
Zur Hardware:
Bei dem Schaltplan, glaube ich (vorsicht Laie), dürfte sich ein kleiner Fehler eingeschlichen haben.
Beim zweiten Optokoppler (der untere) ist PIN 1 und 2 auf der Zeichnung vertauscht --> Da wäre ich fast drübergestolpert ;)
Hmm, also zumindest wir hier haben es so nachgebaut und es funzt bisher 1a?!

Zitat
Zur Software:
Ein wenig scheint die Heizung mit mir zu Quatschen :) aber bei vielen Dingen kommt hier im Webinterface kein Output.
Spricht schonmal dafür, dass das mit den Pins so passt?! ;)
Wie gesagt, dass nicht bei jedem alle Parameter verfügbar sind, ist quasi normal -s.o.-; auch, dass dann 'kein Output' kommt.

Zitat
Was wird dazu noch benötigt?
Ich denke mal der HexCode oder?
Wie komme ich zu dem?
Prinzipiell (jedenfalls mache ich es so):
1. Ardu per USB an den Rechner, per BSB an die Hzg., per LAN Zugriff über den Browser, alles anschalten und Verbindungen herstellen
2. Ardu-IDE starten, auf korrektes Modell, Anschluss & Übertragungsrate überprüfen, dann unter 'Tools -> Serial Monitor' starten
3. im Browser aufs Interface zugreifen und 'verbose' aktivieren: <url>/V1
4. Spätestens dann sollte sich im SerialMonitor schon einiges tun (überprüfen kannst du es ganz einfach, wenn du dann im Browser mal einen Parameter aufrufst, der bei dir laut deiner vorherigen Überprüfung existiert&den Geros Prog korrekt darstellt, bspw. Kesseltemp, AT oder sowas). Wenn du dann am Regler der Hzg-Steuerung drehst und (auch unbekannte) Parameter aufrufst, siehst du die entsprechenden Ein- und Ausgaben im SerialMonitor. Bei 'bekannten' Parametern mit Klartext, bei 'unbekannten' P. eben nur den HexCode.

Aber wie gesagt, sobald es an die OEM-Ebene geht: Spar dir die Mühe mit den HexCodes auslesen, denn da kann bzw. sollte man ja eigtl. eh nicht ran.. ;)

Gruß
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

the_muggle

Hallo Schotty,

ich hab einen Gaser  8)
Thision S 9-25

ZitatVielleicht sonst mal testweise das definement 'THISION' im Sketch aktivieren
Das defined Thision habe ich aktiviert!

Zitat
ZitatZur Hardware:
Bei dem Schaltplan, glaube ich (vorsicht Laie), dürfte sich ein kleiner Fehler eingeschlichen haben.
Beim zweiten Optokoppler (der untere) ist PIN 1 und 2 auf der Zeichnung vertauscht --> Da wäre ich fast drübergestolpert ;)
Hmm, also zumindest wir hier haben es so nachgebaut und es funzt bisher 1a?!
Wie soll ich das nun richtig erklären. Die Zeichnung stimmt so schon, auch wie der Stromfluss läuft.
Wenn ich den Optokoppler so drehe, dass der pin 1 rechts ist, dann ist er bei mir unten rechts und nicht oben rechts.
wie gesagt --> Laie  :-[ :-[

Wegen Parameter:
Bei mir kommt bei den Bedienteilen nichts retour (weisse Seite)! Ich will ja gar nichts steuern sondern eigentlich nur die Temperaturfühler abfragen und auswerten.
Und da wären jetzt die Bedienteile (Raumtemperatur) auch interessant.

Auch unter der Kategorie Solar, Pufferspeicher etc. kommt kein einziger Wert retour :)

ZitatAber wie gesagt, sobald es an die OEM-Ebene geht: Spar dir die Mühe mit den HexCodes auslesen, denn da kann bzw. sollte man ja eigtl. eh nicht ran.
Weiss ich :) Benötige ich auch nicht!
Ich dachte mir nur, ich schreib mal die Codes raus, die ich von der Inbetriebnahme habe

Danke für die Erklärung mit dem Arduino!

lg

gero

Hallo the_muggle,
schön dass sich immer mehr Nutzer des BSB hier einfinden!

Zitat von: the_muggle am 13 April 2016, 07:16:23
Wegen Parameter:
Bei mir kommt bei den Bedienteilen nichts retour (weisse Seite)! Ich will ja gar nichts steuern sondern eigentlich nur die Temperaturfühler abfragen und auswerten.
Und da wären jetzt die Bedienteile (Raumtemperatur) auch interessant.
Von welchen Parametern sprichst du hier genau? (8740, 8770?)

Zitat von: the_muggle am 13 April 2016, 07:16:23
Auch unter der Kategorie Solar, Pufferspeicher etc. kommt kein einziger Wert retour :)
Es gibt noch einige Kategorien, zu denen bisher keine CommandIds vorliegen. Dazu gehören auch Solar und Pufferspeicher.
Falls du Traces dazu liefern kannst, kann ich die Codes gerne einpflegen. (Oder evtl. du selbst?)

Gruß,
Gero
Odroid C1 - CULV3-868, JeeLink
16 x TX 29 DTH
MAX!: 15x Heizkörperthermostat+, 2x Wandthermostat, 14x Fenserkontakt, 1x Ecotaster
FS20 S4A, FS20IRF, BSB-Heizungssteuerung über Atmega2560
Z-Wave: ZME_UZB1, Fibaro Wall Plug + Motion Sensor

the_muggle

Zitat
ZitatWegen Parameter:
Bei mir kommt bei den Bedienteilen nichts retour (weisse Seite)! Ich will ja gar nichts steuern sondern eigentlich nur die Temperaturfühler abfragen und auswerten.
Und da wären jetzt die Bedienteile (Raumtemperatur) auch interessant.
Von welchen Parametern sprichst du hier genau? (8740, 8770?)
Ich seh wohl den Wald vor lauter Bäumen nicht :)
Diagnose Verbraucher hab ich gestern noch nicht angesehen *shameonme*

ZitatAuch unter der Kategorie Solar, Pufferspeicher etc. kommt kein einziger Wert retour :)
Es gibt noch einige Kategorien, zu denen bisher keine CommandIds vorliegen. Dazu gehören auch Solar und Pufferspeicher.
ZitatFalls du Traces dazu liefern kannst, kann ich die Codes gerne einpflegen. (Oder evtl. du selbst?)

Gerne, wenn ich es schaffe, pflege ich sie auch ein! Ich werde mal versuchen, einen Trace zu erzeugen und mich mit dem sourcecode auseinander setzen!

Schotty

Zitat von: the_muggle am 13 April 2016, 07:16:23
Weiss ich :) Benötige ich auch nicht!
Ich dachte mir nur, ich schreib mal die Codes raus, die ich von der Inbetriebnahme habe
Achso, dann hatte ich das falsch verstanden, sorry - ich dachte, es ging dir explizit um die genannten Parameter..

Zitat
Danke für die Erklärung mit dem Arduino!
Gerne.

Zitat
Ich seh wohl den Wald vor lauter Bäumen nicht :)
Diagnose Verbraucher hab ich gestern noch nicht angesehen *shameonme*
Als kleiner Tipp: Mir hat geholfen, einfach alle Parameter mit <url>/0-10000 einmal abzurufen und dann auszudrucken, dann hat man eine schöne Übersicht.

Gruß
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

freetz

@the_muggle: Für meine Thision (S 17) hatte ich nach Geros Anweisungen eigentlich alle Parameter versucht zu tracen - da wo es halt möglich war, d.h. bei Solar-, Fußbodenheizungs- und anderen Komponenten, die ich nicht habe, wäre eine Ergänzung natürlich hilfreich.
Abgastemperatur wäre schön, aber ist laut Elco nur mit einem extra Fühler möglich. Alternative: einen Dallas-Temperatur-Sensor an den Arduino anschließen, der kann ebenfalls mittels des Sketches ausgewertet werden (mache ich über das IPWE-Modul).

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

Schotty

Zitat von: freetz am 13 April 2016, 15:47:58
Abgastemperatur wäre schön, aber ist laut Elco nur mit einem extra Fühler möglich. Alternative: einen Dallas-Temperatur-Sensor an den Arduino anschließen, der kann ebenfalls mittels des Sketches ausgewertet werden (mache ich über das IPWE-Modul).
Hast du den echt ins Abgasrohr gepflanzt?!?
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

freetz

Inzwischen nicht mehr, weil mit die Brennermodulationswerte zusammen mit Vor- und Rücklauftemperatur diesbezüglich mehr sagen. Der Fühler ist ja sehr klein und kam in die dafür vorgesehene Messprüf-Öffnung.
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

the_muggle

#419
Hallo,

ich hab die Ausgabe des Serial Outputs dem Raspberry aufgetragen. Was ich nicht weiss ist, ob das jetzt die richtigen Daten sind, die da daher kommen.

"!\x12\x02\xbc\x18\xb1\xc0\xc2 \x8b\x14\xc0\xe1,\xff~\xad\x83\xd4\x80@\x12|*\x97\xc1\x89\x14%\x03\xf90\x1f\x7f\x1f\\\x08\xcf\x80V\xa4\xc2\xbe\x9f\x83j\x00P\x12\x02\xfe\xec,\xff?

Sieht dieser Output immer so aus oder nur, weil ich es über den Raspberry gemacht habe? Ansonsten muss ich wohl oder übel den Laptop in den Keller stellen :)

EDIT:
Die Falsche BAUD-RATE war eingestellt :)
Danke

lg