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

...so, die Schaltung ist aufgebaut und scheint zumindest insoweit zu funktionieren, als dass der Arduino die Webseite zurück gibt und ich auf dem seriellen Monitor Datenpakete sehe, die mir hier aus der Diskussion und anderen Quellen bekannt vorkommen. Nur leider bekomme ich immer ein "query failed", wenn ich mir z.B. mit /Kx auch die Werte ausgeben lassen möchte.
Gero, hast Du vielleicht eine Idee? Hier ist ein Mitschnitt vom Einschalten über den URL-Aufruf und kurz danach:
READY
free RAM:2759
1579 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
1649 DC 80 0A 0E 07 0D 3D 05 19 00 14 A4 85 52
4654 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
4737 DC 80 0A 0E 07 0D 3D 05 19 00 14 AD 14 7B
7728 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
7796 DC 80 0A 0E 07 0D 3D 05 19 00 14 AD 14 7B
10799 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
10874 DC 80 0A 0E 07 0D 3D 05 19 00 14 AD 14 7B
13870 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
13939 DC 80 0A 0E 07 0D 3D 05 19 00 14 AD 14 7B
16944 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
17011 DC 80 0A 0E 07 0D 3D 05 19 00 14 AD 14 7B
GET /4444/K HTTP/1.1

/4444/K
0 - Uhrzeit und Datum
1 - Bedieneinheit
2 - Funk
3 - Zeitprogramm Heizkreis 1
4 - Zeitprogramm Heizkreis 2
5 - Zeitprogramm 3/HKP
6 - Zeitprogramm 4/TWW
7 - Zeitprogramm 5
8 - Ferien Heizkreis 1
9 - Ferien Heizkreis 2
10 - Ferien Heizkreis P
11 - Heizkreis 1
12 - Kühlkreis 1
13 - Heizkreis 2
14 - Heizkreis 3/P
15 - Trinkwasser
16 - Hx-Pumpe
17 - Schwimmbad
18 - Vorregler/Zubringerpumpe
19 - Kessel
20 - Wärmepumpe
21 - Kaskade
22 - Zusatzerzeuger
23 - Solar
24 - Feststoffkessel
25 - Pufferspeicher
26 - Trinkwasserspeicher
27 - Trinkwasser Durchl'erhitzer
28 - Konfiguration
29 - LPB-System
30 - Fehler
31 - Wartung/Sonderbetrieb
32 - Ein-/Ausgangstest
33 - Status
34 - Diagnose Kaskade
35 - Diagnose Erzeuger
36 - Diagnose Verbraucher
37 - Feuerungsautomat
38 - Benutzerdefiniert
20018 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
20098 DC 80 0A 0E 07 0D 3D 05 19 00 14 AD 14 7B
23091 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
23162 DC 80 0A 0E 07 0D 3D 05 19 00 14 AD 14 7B
26164 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
26232 DC 80 0A 0E 07 0D 3D 05 19 00 14 AD 14 7B
GET /4444/K0 HTTP/1.1

/4444/K0
query failed
query failed
query failed
query failed
query failed
query failed
query failed
query failed
query failed
46126 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
46195 DC 80 0A 0E 07 0D 3D 05 19 00 14 AD 14 7B
47575 DC 80 7F 15 02 2E 00 02 11 00 00 FF FF FF FF FF FF 00 00 F8 F1
56177 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
56247 DC 80 0A 0E 07 0D 3D 05 19 00 14 AD 14 7B
66253 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
66324 DC 80 0A 0E 07 0D 3D 05 19 00 14 AD 14 7B
76332 DC 8A 00 0B 06 3D 0D 05 19 4F 8C
76400 DC 80 0A 0E 07 0D 3D 05 19 00 14 AD 14 7B


Vielen Dank schon mal im Voraus,

Frederik
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

gero

Schön, dass es schon einmal soweit funktioniert. Ich muss gerade die Kinder hüten und komme erst heute abend dazu genauer drauf zu sehen. Aber soweit ich mich erinnere, kannst du die Monitor Funktion nicht parallel zu den normalen Abfragen verwenden. Ich melde mich heute Abend noch einmal.
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

freetz

#77
Danke für Deine schnelle Rückmeldung, ich bin jetzt den Schaltplan noch mal ganz genau durchgegangen und es war dann doch ein Wackelkontakt am Transistor - nun geht's prima :)!

Da ich bisher einen Arduino als IPWE und ETH-RLY Ersatz am Laufen hatte, bin ich nun daran interessiert, ob es möglich wäre, über einen Funktionsaufruf zu implementieren, der die Konfigurationsnummer als Parameter übergibt und dann den reinen Zahlenwert (also ohne Text oder Einheiten) zurückliefert?

Ich habe mal etwas stümperhaft in Deinem Code versucht etwas zu implementieren, aber C-Programmierung ist nicht so mein Ding - ich hänge es trotzdem einfach mal hier an, vielleicht kannst Du ja etwas damit anfangen.
[EDIT]Dateianhang ein Post weiter unten fehlerbereinigt aktualisiert[/EDIT]
Kurz gesagt habe ich die Aufrufe der IPWE und ETH-RLY Emulation in die PASSKEY-Abfrage eingefügt, und dann, damit das IPWE-Script einen Zahlenwert zurück bekommt, die Funktionen query und printFIXPOINT mit einem Rückgabewert ausgestattet. Hinzu kam, dass die Textausgabe in der Funktion query fallweise abgeschaltet werden musste, das habe ich mit dem zusätzlichen no_print Übergabewert gelöst.

Als Ergebnis kann man nun mit 192.168.x.x/ipwe.cgi die in der ipwe-Funktion angegebenen Datenwerte ausgeben lassen und über 192.168.x.x/leds.cgi?led0=1 ein Relais schalten (das nutze ich bisher, um die Heizung über den H1-Kontakt in den Standby-Modus zu versetzen).

Ein Problem habe ich nur noch: Obwohl der Übergabewert am Ende der Funktion query ein Fließkommawert ist, also z.B. "49.56" für die Vorlauftemperatur) kommt in der ipwe-Funktion nur "49.00" an, obwohl alle Variablen als double gekennzeichnet sind. Als perl-Programmierer muss ich mich mit sowas normalerweise nicht herumschlagen, aber es wäre toll, wenn sich dafür eine Lösung finden ließe.

Wenn Du magst, übernimm' von dem Code, was Du magst, ich denke, dass es für eine Heizungssteuerung ganz sinnvoll sein kann, gerade, wenn man nicht nur FHEM benutzen mag/kann.

Wirklich ganz herzlichen Dank noch mal für Deine Arbeit und viele Grüße

Frederik
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

#78
...ok, ich sollte für heute in's Bett gehen ;), der Nachkommafehler war ein Fehler von mir, weil ich die Funktion selber noch beim Experimentieren als "byte" deklariert hatte. Korrigiertes Programm hängt an...
[Edit: Weiter bereinigte Version weiter unten]
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

gero

Ich bin leider am Wochende nicht an den Rechner gekommen. Ich werde mir deine Änderungen möglichst bald ansehen und sie in den Sketch übernehmen.

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

freetz

#80
Hallo Gero,

kein Problem, vielen Dank, dass Du Dir den Code anschauen magst. Ich habe ihn noch etwas bereinigt und noch eine (von meiner Seite aus letzte) Funktion/URL hinzugefügt, mit der man direkt die Heizung "ein"- bzw. "ausschalten" kann. Das war nötig, da das ETH-RLY nur den Status wechseln kann und man das Relais nicht direkt ein- oder ausschalten kann.

Da ich ja ausschließlich das Max!-Heizungssystem verwende und das mit MaxBuddy steuere, hänge ich hier der Vollständigkeit halber (wenn auch etwas off-topic) auch noch mein Script-Plugin für MaxBuddy an, mit dem ich die Heizung anweise herunterzufahren, wenn die Soll-Temperatur in allen Räumen um 2% überschritten ist, und sie wieder anzufahren, wenn sie in einem Raum um 2% unterschritten ist. Das funktioniert wesentlich besser, als die Steuerung über Ventilöffnungszustände, wie MaxBuddy das sonst macht. Gleichzeitig hole ich mir von den zwei Haupträumen die Ist-Temperatur, mittele diese und schicke sie dann an die Thision. Da werde ich noch etwas dran arbeiten, um auch andere Räume zu berücksichtigen, die eine von der Thermen-Solltemperatur abweichende Zieltemperatur haben.

Zwei Dinge sind mir noch aufgefallen:

1. Bei den Betriebsstunden und dem Startzähler  (K35 / 8330, 8331) bekomme ich leider einen "decoding error". An der Therme werden mir aber diverse Laufzeiten und Startzähler (Brenner, Warmwasser etc.) angezeigt. Diese Info fände ich nicht unwichtig, liegt der Fehler daran, dass die dazugehörige Nachricht noch nicht von Dir entschlüsselt ist oder gibt es eine andere Erklärung?

2. Wenn man sich die User Defined Kategorie mit /K38 anzeigen lassen will, wird in einer Endlosschleife immer der Parameter 10000 ausgegeben. Der Arduino reagiert dann nicht mehr auf irgendwelche anderen Anfragen, bis man ihn resettet. Gibt es da eine Möglichkeit, eine Ausgabe für eine Anfrage nach einer bestimmten Zeit zu beenden, damit so etwas nicht passiert? Ansonsten könnte man damit sehr schnell das ganze Heizungssystem lahmlegen, insbesondere, wenn es nicht mit Passcode geschützt ist...

Viele Grüße

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

gero

Hallo freetz,

Zu 1.) Bei mir werden die Werte korrekt decodiert. Kannst du mir bitte die entsprechenden Telegramme, wie sie von deiner Heizung kommen, zeigen?
Zu 2.) Der Fehler ist behoben. Der Fix ist in der nächsten Version enthalten.

Deine Änderungen bzgl. IPWE muß ich mir noch genauer ansehen. Wenn ich es richtig sehe, hebelst du zur Zeit das PASSKEY-Feature aus. Vielleicht sollte man besser ein zusätzlichen Tag in der URL dafür vorsehen(?)
Ehrlich gesagt, sagt mir IPWE bzw. ETH-RLY nichts. Hast du dazu noch ein paar Informationen? Ich bin mir nicht sicher, wie userpsezifisch deine Änderungen sind.

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

freetz

#82
Hallo Gero,

Telegramme versuche ich dann mal mitzuschneiden, bin aber erst Mittwoch Abend wieder physisch an der Therme. Mache ich das dann so, dass ich den Parameter direkt abfrage und dann mitschneide, was auf der seriellen Konsole läuft?

Was IPWE und ETH-RLY angeht, muss ich quasi das Passkey-Feature umgehen, weil die Abfrage-URLs dieser Geräte fix sind, also z.B. bei IPWE die Ausgabeseite über
http://a.b.c.d/ipwe.cgi
oder bei ETH-RLY die Schaltung von Relais 0 über
http://a.b.c.d/leds.cgi?led=0

Ein zusätzlicher Tag wäre da also problematisch, weil man (zumindest bei MaxBuddy) nur die IP der Geräte angeben kann, nicht aber die URL als solche.

IPWE ist eine ethernetbasierte Wetterstation, hier hängt eine im Netz:
http://78.244.161.33:66/ipwe.cgi

ETH-RLY ist ein ethernetbasiertes Relais, mit dem man per http-Befehl ein Relais schalten kann:
http://www.robot-electronics.co.uk/htm/eth_rly16tech.htm

IPWE ist recht teuer, wird aber auch von FHEM unterstützt. Mit meiner Lösung kann man nun aber recht einfach 1-wire Temperaturfühler an den Arduino anschließen und kann dadurch mit ein paar Euro eine Wetterstation abbilden - oder so wie ich bei meiner alten Heizung Außen-, Vor- und Rücklauftemperaturen messen. Jetzt übernehme ich direkt Werte aus der Therme, die dann per HTML ausgegeben werden und dann von externen Programmen, die die IPWE kennen, geparst werden können.

ETH-RLY ist auch nicht billig und lässt sich noch einfacher durch den Arduino emulieren. Dies ist gerade für den Heizungsbetrieb sehr interessant, weil viele Thermen die Möglichkeit bieten, über einen potentialfreien Kontakt, Funktionen zu schalten. Bei der Thision geht das z.B. über den Kontakt H1, der mit mehreren Funktionen belegt werden kann.

Mit den von mir vorgeschlagenen Änderungen könnten diese Funktionen transparent im gleichen Gerät mit abgewickelt werden und entsprechend von außen abgefragt werden. Userspezifisch sind bei mir nur die Kombination zwischen Schalten des Relais und gleichzeitigem Aufruf des Set-Befehls zum Ändern des Betriebsmodus der Therme (1 Zeile). Die beiden URLS "heating.cgi?1" und "heating.cgi?0" haben in der Tat nichts mit ETH-RLY zu tun und sind so gesehen user-spezifisch, schienen mir aber eine sinnvolle Ergänzung zum reinen Wechseln des Schaltzustands des ETH-RLY.

Wenn es möglich wäre, trotz Passkey-Funktion bestimmte eigene URLs mit dazugehörigen Funktionen zu definieren, dann könntest Du die "Heating"-Funktion meinetwegen aus der offiziellen Release herauslassen, wenn sie Dir nicht sinnvoll erscheint. Dann könnte jeder selber schauen, welche zusätzlichen Funktionen für die jeweilige Therme noch Sinn machen. IPWE und ETH-RLY fände ich wie gesagt aber eine kompakte, aber sicher für mehrere Leute sinnvolle Erweiterung.

Viele Grüße

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

gero

Danke für die Info. Ich werde zusehen, dass ich es einbaue.

Zitat von: freetz am 02 März 2015, 13:03:23
Telegramme versuche ich dann mal mitzuschneiden, bin aber erst Mittwoch Abend wieder physisch an der Therme. Mache ich das dann so, dass ich den Parameter direkt abfrage und dann mitschneide, was auf der seriellen Konsole läuft?
Exakt. Bei einem "decoding error" sollten die Daten zusätzlich im HEX Format auf der seriellen Schnittstelle ausgegeben werden. Ich bin schon gespannt, was deine Heizung da sendet.

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

freetz

Ich weiß nicht, ob das dann auch für Dich von Interesse ist, aber ich bekomme den "decoding error" bei ziemlich vielen Werten, hier die komplette Liste über alle Kategorien:

820 Heizkreis 1 - Überhitzschutz Pumpenkreis: decoding error
861 Heizkreis 1 - Übertemperaturabnahme: decoding error
870 Heizkreis 1 - Mit Pufferspeicher: decoding error
872 Heizkreis 1 - Mit Vorregler/Zubring`pumpe: decoding error
900 Heizkreis 1 - Betriebsartumschaltung: decoding error
1630 Trinkwasser - Ladevorgang: decoding error
1663 Trinkwasser - Zirkulations Sollwert: decoding error
5021 Trinkwasserspeicher - Umladeüberhöhung: decoding error
5022 Trinkwasserspeicher - Ladeart: decoding error
5056 Trinkwasserspeicher - Rückkühlung Kessel/HK: decoding error
5057 Trinkwasserspeicher - Rückkühlung Kollektor: decoding error
5060 Trinkwasserspeicher - Elektroeinsatz Betriebsart: decoding error
5061 Trinkwasserspeicher - Elektroeinsatz Freigabe: decoding error
5062 Trinkwasserspeicher - Elektroeinsatz Regelung: decoding error
5085 Trinkwasserspeicher - Übertemperaturabnahme: decoding error
5090 Trinkwasserspeicher - Mit Pufferspeicher: decoding error
5092 Trinkwasserspeicher - Mit Vorregler/Zubring`pumpe: decoding error
5093 Trinkwasserspeicher - Mit Solareinbindung: decoding error
5730 Konfiguration - Trinkwasser-Sensor B3: decoding error
5731 Konfiguration - Trinkwasser-Stellglied Q3: decoding error
5736 Konfiguration - Trinkwasser Trennschaltung: decoding error
5890 Konfiguration - Relaisausgang QX1: decoding error
5891 Konfiguration - Relaisausgang QX2: decoding error
5892 Konfiguration - Relaisausgang QX3: decoding error
5930 Konfiguration - Fühlereingang BX 1: decoding error
5931 Konfiguration - Fühlereingang BX 2: decoding error
5932 Konfiguration - Fühlereingang BX 3: decoding error
5933 Konfiguration - Fühlereingang BX 4: decoding error
5950 Konfiguration - Funktion Eingang H1: decoding error
5951 Konfiguration - Wirksinn Kontakt H1: decoding error
5952 Konfiguration - Minimaler Vorlaufsollwert H1: decoding error
5954 Konfiguration - Wärmeanforderung 10V H1: decoding error
5956 Konfiguration - Druckwert 3.5V H1: decoding error
5960 Konfiguration - Funktion Eingang H3: decoding error
5961 Konfiguration - Wirksinn Kontakt H3: decoding error
5962 Konfiguration - Minimaler Vorlaufsollwert H3: decoding error
5964 Konfiguration - Wärmeanforderung 10V H3: decoding error
5966 Konfiguration - Druckwert 3.5V H3: decoding error
5982 Konfiguration - Funktion Eingang EX2: decoding error
5983 Konfiguration - Wirksinn Eingang EX2: decoding error
6014 Konfiguration - Funktion Mischergruppe 1: decoding error
6020 Konfiguration - Funktion Erweiterungsmodul 1: decoding error
6021 Konfiguration - Funktion Erweiterungsmodul 2: decoding error
6100 Konfiguration - korrektur Aussenfühler: decoding error
6200 Konfiguration - Fühler Speichern: decoding error
6205 Konfiguration - Parameter zurücksetzen: decoding error
6212 Konfiguration - Kontrollbnummer Erzeuger 1: decoding error
6213 Konfiguration - Kontrollbnummer Erzeuger 2: decoding error
6215 Konfiguration - Kontrollnummer Speicher: decoding error
6217 Konfiguration - Kontrollnummer Heizkreise: decoding error
6604 LPB-System - Busspeisung Funktion: decoding error
6605 LPB-System - Busspeisung Status: decoding error
6610 LPB-System - Anzeige Systemmeldungen: decoding error
6620 LPB-System - Wirkbereich Umschaltungen: decoding error
6625 LPB-System - Trinkwasserzuordnung: decoding error
6640 LPB-System - Uhrbetrieb: decoding error
6650 LPB-System - Aussentemperatur Lieferant: decoding error
6710 Fehler - Reset Alarmrelais: decoding error
6743 Fehler - Kesseltemperatur Alarm: decoding error
6800 Fehler - Historie 1 Datum/Zeit: decoding error
6801 Fehler - Historie 1 Fehlercode: decoding error
6802 Fehler - Historie 2 Datum/Zeit: decoding error
6803 Fehler - Historie 2 Fehlercode: decoding error
6804 Fehler - Historie 3 Datum/Zeit: decoding error
6805 Fehler - Historie 3 Fehlercode: decoding error
6806 Fehler - Historie 4 Datum/Zeit: decoding error
6807 Fehler - Historie 4 Fehlercode: decoding error
6808 Fehler - Historie 5 Datum/Zeit: decoding error
6809 Fehler - Historie 5 Fehlercode: decoding error
6810 Fehler - Historie 6 Datum/Zeit: decoding error
6811 Fehler - Historie 6 Fehlercode: decoding error
6812 Fehler - Historie 7 Datum/Zeit: decoding error
6813 Fehler - Historie 7 Fehlercode: decoding error
6814 Fehler - Historie 8 Datum/Zeit: decoding error
6815 Fehler - Historie 8 Fehlercode: decoding error
6816 Fehler - Historie 9 Datum/Zeit: decoding error
6817 Fehler - Historie 9 Fehlercode: decoding error
6818 Fehler - Historie 10 Datum/Zeit: decoding error
6819 Fehler - Historie 10 Fehlercode: decoding error
7042 Wartung/Sonderbetrieb - Brennerstarts Intervall: decoding error
7043 Wartung/Sonderbetrieb - Brennerstarts seit Wartung: decoding error
7150 Wartung/Sonderbetrieb - Simulation Aussentemperatur: decoding error
7700 Ein-/Ausgangstest - Relaistest: decoding error
7730 Ein-/Ausgangstest - Aussentemperatur B9: decoding error
7732 Ein-/Ausgangstest - Vorlauftemperatur B1: decoding error
7734 Ein-/Ausgangstest - Vorlauftemperatur B12: decoding error
7750 Ein-/Ausgangstest - Trinkwassertemperatur B3: decoding error
7760 Ein-/Ausgangstest - Kesseltemperatur B2: decoding error
7820 Ein-/Ausgangstest - Fühlertemperatur BX1: decoding error
7821 Ein-/Ausgangstest - Fühlertemperatur BX2: decoding error
7822 Ein-/Ausgangstest - Fühlertemperatur BX3: decoding error
7823 Ein-/Ausgangstest - Fühlertemperatur BX4: decoding error
7830 Ein-/Ausgangstest - Fühlertemp. BX21 Modul 1: decoding error
7831 Ein-/Ausgangstest - Fühlertemp. BX22 Modul 1: decoding error
7832 Ein-/Ausgangstest - Fühlertemp. BX21 Modul 2: decoding error
7833 Ein-/Ausgangstest - Fühlertemp. BX22 Modul 2: decoding error
7840 Ein-/Ausgangstest - Spannungssignal H1: decoding error
7841 Ein-/Ausgangstest - Kontaktzustand H1: decoding error
7854 Ein-/Ausgangstest - Spannungssignal H3: decoding error
7855 Ein-/Ausgangstest - Kontaktzustand H3: decoding error
7870 Ein-/Ausgangstest - Brennerstörung S3: decoding error
7881 Ein-/Ausgangstest - 1. Brennerstufe E1: decoding error
7912 Ein-/Ausgangstest - Eingang EX2: decoding error
8002 Status - Status Heizkreis P: decoding error
8008 Status - Status Feststoffkessel: decoding error
8010 Status - Status Pufferspeicher: decoding error
8300 Diagnose Erzeuger - 1. Brennerstufe T2: decoding error
8301 Diagnose Erzeuger - 2. Brennerstufe T8: decoding error
8318 Diagnose Erzeuger - Abgastemperatur Maximum: decoding error
8330 Diagnose Erzeuger - Betriebsstunden 1.Stufe: decoding error
8331 Diagnose Erzeuger - Startzähler 1.Stufe: decoding error
8332 Diagnose Erzeuger - Betriebsstunden 2.Stufe: decoding error
8333 Diagnose Erzeuger - Startzähler 2.Stufe: decoding error
8511 Diagnose Erzeuger - Kollektortemperatur 1 Max: decoding error
8512 Diagnose Erzeuger - Kollektortemperatur 1 Min: decoding error
8513 Diagnose Erzeuger - dT Kollektor 1/TWW: decoding error
8514 Diagnose Erzeuger - dt Kollektor 1/Puffer: decoding error
8531 Diagnose Erzeuger - Betr`stunden Kollektor`überhitz: decoding error
8560 Diagnose Erzeuger - Feststoffkesseltemperatur: decoding error
8701 Diagnose Verbraucher - Außentemperatur Minimum: decoding error
8702 Diagnose Verbraucher - Außentemperatur Maximum: decoding error
8730 Diagnose Verbraucher - Heizkreispumpe Q2: decoding error
8731 Diagnose Verbraucher - Heizkreismischer Auf Y1: decoding error
8732 Diagnose Verbraucher - Heizkreismischer Zu Y2: decoding error
8760 Diagnose Verbraucher - Heizkreispumpe 2: decoding error
8761 Diagnose Verbraucher - Heizkreismischer 2 Auf: decoding error
8762 Diagnose Verbraucher - Heizkreismischer 2 Zu: decoding error
8820 Diagnose Verbraucher - Trinkwasserpumpe Q3: decoding error
8835 Diagnose Verbraucher - TWW Zirkulationstemperatur: decoding error
8930 Diagnose Verbraucher - Vorreglertemperatur: decoding error
8931 Diagnose Verbraucher - Vorreglersollwert: decoding error
8951 Diagnose Verbraucher - Schienenvorlaufsollwert: decoding error
8982 Diagnose Verbraucher - Pufferspeichertemperatur 2: decoding error
9000 Diagnose Verbraucher - Vorlaufsollwert H1: decoding error
9004 Diagnose Verbraucher - Vorlaufsollwert H3: decoding error
9005 Diagnose Verbraucher - Wasserdruck H1: decoding error
9009 Diagnose Verbraucher - Wasserdruck H3: decoding error
9031 Diagnose Verbraucher - Relaisausgang QX1: decoding error
9032 Diagnose Verbraucher - Relaisausgang QX2: decoding error
9033 Diagnose Verbraucher - Relaisausgang QX3: decoding error
9050 Diagnose Verbraucher - Relaisausgang QX21 Modul 1: decoding error
9051 Diagnose Verbraucher - Relaisausgang QX22 Modul 1: decoding error
9052 Diagnose Verbraucher - Relaisausgang QX23 Modul 1: decoding error
9053 Diagnose Verbraucher - Relaisausgang QX21 Modul 2: decoding error
9054 Diagnose Verbraucher - Relaisausgang QX22 Modul 2: decoding error
9055 Diagnose Verbraucher - Relaisausgang QX23 Modul 2: decoding error


Lässt sich daraus vielleicht ein (oder mehrere) bestimmte/r Datentyp/en feststellen, der/die (bei mir?) nicht korrekt dekodiert werden? Oder müsste ich dazu alle über 100 Parameter einmal aufrufen und mitschneiden lassen?

Bei den 9500er Parametern gibt es dazu noch "unknown type", falls das auch von Interesse ist:
9500 Feuerungsautomat - Vorlüftzeit: unknown type
9502 Feuerungsautomat - Gebl'ansteuerung Vorlüftung: unknown type
9504 Feuerungsautomat - Solldrehzahl Vorlüftung: unknown type
9510 Feuerungsautomat - Gebl'ansteuerung Zündung: unknown type
9512 Feuerungsautomat - Solldrehzahl Zündung: unknown type
9520 Feuerungsautomat - Gebl'ansteuerung Betrieb. Min: unknown type
9522 Feuerungsautomat - Gebl'ansteuerung Betrieb. Max: unknown type
9524 Feuerungsautomat - Solldrehzahl Betrieb Min: unknown type
9527 Feuerungsautomat - Solldrehzahl Betrieb Max: unknown type
9540 Feuerungsautomat - Nachlüftzeit: unknown type
9560 Feuerungsautomat - Gebl'ansteuerung Durchlad: unknown type
9563 Feuerungsautomat - Solldrehzahl Durchlasung: unknown type


Sag' einfach, welche Infos Du brauchst, und ich schaue, dass ich sie bereitstellen kann...

Danke und viele Grüße

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

gero

Das sieht ziemlich seltsam aus. Gib mir einfach mal irgendwelche Telegramme, die einen decoding error liefern, damit ich einen Anhaltspunkt bekomme.

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

freetz

Ok, mache ich am Mittwoch, wenn ich wieder zu Hause bin.

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

Hallo Gero,

hier also der Mitschnitt für ein paar der decode errors:

GET /4444/8330/8331/8332/8333/7330/7042/7043/6800/6801/9500 HTTP/1.1

/4444/8330/8331/8332/8333/7330/7042/7043/6800/6801/9500
HEIZ->RGT1 ERR 8330 Diagnose Erzeuger -  Betriebsstunden 1.Stufe: DWORD len error len!=5: 07
FIXPOINT len !=3: 07 HEIZ->RGT1 ERR 8331 Diagnose Erzeuger -  Startz√§hler 1.Stufe: DWORD len error len!=5: 07
FIXPOINT len !=3: 07 HEIZ->RGT1 ERR 8332 Diagnose Erzeuger -  Betriebsstunden 2.Stufe: DWORD len error len!=5: 07
FIXPOINT len !=3: 07 HEIZ->RGT1 ERR 8333 Diagnose Erzeuger -  Startz√§hler 2.Stufe: DWORD len error len!=5: 07
FIXPOINT len !=3: 07 FIXPOINT len !=3: 07 HEIZ->RGT1 ERR 7042 Wartung/Sonderbetrieb -  Brennerstarts Intervall: WORD len error len!=3: 07
FIXPOINT len !=3: 07 HEIZ->RGT1 ERR 7043 Wartung/Sonderbetrieb -  Brennerstarts seit Wartung: WORD len error len!=3: 07
FIXPOINT len !=3: 07 HEIZ->RGT1 ERR 6800 Fehler -  Historie 1 Datum/Zeit:  VT_DATETIME len !=9: 07
FIXPOINT len !=3: 07 HEIZ->RGT1 ERR 6801 Fehler -  Historie 1 Fehlercode:  VT_ERRORCODE len ==0: 07
FIXPOINT len !=3: 07 HEIZ->RGT1 ANS 9500 Feuerungsautomat -  Vorl√ºftzeit: 00 00 32
0.8


Ich hoffe, Du kannst etwas damit anfangen...
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

gero

Danke für den Mitschnitt. Aber so ganz reicht das noch nicht.
Die Heizung antwortet auf die Abfrage der Parameter mit einem Fehlercode 7. Was dieser genau bedeutet kann ich leider nicht sagen.
Die Fehler beim Feuerungsautomat liegen daran, dass ich so etwas nicht besitze und daher die Parametertypen noch nicht eingetragen habe.

Kannst du bitte mit V1 den Verbose Mode vorher aktivieren und anschließend ein paar von den Parametern per Hand am Display abrufen?
Im Verbose Mode wird die komplette Kommunikation auf dem Bus auf der seriellen Schnittstelle mitprotokolliert.

Beim Feuerungsautomat könntest du mir helfen und einmal das komplette Menue am Display durchgehen. Ich bräuchte den seriellen Mitschnitt im Verbose Mode und die Werte, die am Display angezeigt werden. Die mußt du leider per Hand mitprotokollieren. Aber laut meiner Liste sollten es nur 12 Stück sein.

Vielen Dank,
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

freetz

Hallo Gero,

ok, ich habe es mal versucht, habe allerdings kein Raumdisplay sondern nur das an der Therme und weiß daher nicht, ob das dann auch die Daten über den Bus schickt, wenn ich da an dem Rad drehe. Bei mir sind die Parameter für die Brennerstundenzahlen übrigens 8336 bis 8340 - die gibt es in Deiner Liste anscheinend gar nicht?

Hier also der Mitschnitt für diesen Bereich:
READY
free RAM:2669
GET /4444/V1 HTTP/1.1

/4444/V1
DISP->HEIZ QUR 8310 Diagnose Erzeuger -  Kesseltemperatur:
DC 8A 00 0B 06 3D 0D 05 19 4F 8C
HEIZ->DISP ANS 8310 Diagnose Erzeuger -  Kesseltemperatur: 39.4 °C
DC 80 0A 0E 07 0D 3D 05 19 00 09 DB 7F 05
DISP->HEIZ QUR 8310 Diagnose Erzeuger -  Kesseltemperatur:
DC 8A 00 0B 06 3D 0D 05 19 4F 8C
HEIZ->DISP ANS 8310 Diagnose Erzeuger -  Kesseltemperatur: 39.5 °C
DC 80 0A 0E 07 0D 3D 05 19 00 09 E2 D8 7F
DISP->HEIZ QUR 8311 Diagnose Erzeuger -  Kesselsollwert:
DC 8A 00 0B 06 3D 0D 09 23 9D F8
HEIZ->DISP ANS 8311 Diagnose Erzeuger -  Kesselsollwert: 0.0 °C
DC 80 0A 0E 07 0D 3D 09 23 00 00 00 70 E2
DISP->HEIZ QUR 8314 Diagnose Erzeuger -  Kesselr√ºcklauftemperatur:
DC 8A 00 0B 06 3D 11 05 1A 49 ED
HEIZ->DISP ANS 8314 Diagnose Erzeuger -  Kesselr√ºcklauftemperatur: 36.4 °C
DC 80 0A 0E 07 11 3D 05 1A 00 09 1B 58 85
DISP->HEIZ QUR 8316 Diagnose Erzeuger -  Abgastemperatur:
DC 8A 00 0B 06 3D 05 05 1D A6 A9
HEIZ->DISP ANS 8316 Diagnose Erzeuger -  Abgastemperatur: --- °C
DC 80 0A 0E 07 05 3D 05 1D 01 00 00 D1 E7
DISP->HEIZ QUR      113D0C82
DC 8A 00 0B 06 3D 11 0C 82 F1 C4
HEIZ->DISP ANS      113D0C82 00 00 00
DC 80 0A 0E 07 11 3D 0C 82 00 00 00 AA 67
DISP->HEIZ QUR      113D305D
DC 8A 00 0B 06 3D 11 30 5D 8B AE
HEIZ->DISP ANS      113D305D 00 00
DC 80 0A 0D 07 11 3D 30 5D 00 00 6D C1
DISP->HEIZ QUR      113D305F
DC 8A 00 0B 06 3D 11 30 5F AB EC
HEIZ->DISP ANS      113D305F 00 00
DC 80 0A 0D 07 11 3D 30 5F 00 00 03 A1
DISP->HEIZ QUR      113D3063
DC 8A 00 0B 06 3D 11 30 63 5C 33
HEIZ->DISP ANS      113D3063 00 00 16
DC 80 0A 0E 07 11 3D 30 63 00 00 16 AD 0B
DISP->HEIZ QUR      093D3034
DC 8A 00 0B 06 3D 09 30 34 9C E3
HEIZ->DISP ANS      093D3034 00 00
DC 80 0A 0D 07 09 3D 30 34 00 00 7F FD
DISP->HEIZ QUR      153D2FF0
DC 8A 00 0B 06 3D 15 2F F0 20 64
HEIZ->DISP ANS      153D2FF0 00 00 00
DC 80 0A 0E 07 15 3D 2F F0 00 00 00 22 DA
DISP->HEIZ QUR      093D3036
DC 8A 00 0B 06 3D 09 30 36 BC A1
HEIZ->DISP ANS      093D3036 00 00 13 E2 A0
DC 80 0A 10 07 09 3D 30 36 00 00 13 E2 A0 BD 50
DISP->HEIZ QUR      093D3035
DC 8A 00 0B 06 3D 09 30 35 8C C2
HEIZ->DISP ANS      093D3035 00 00 00 00 87
DC 80 0A 10 07 09 3D 30 35 00 00 00 00 87 4B D6
DISP->HEIZ QUR      193D2FEB
DC 8A 00 0B 06 3D 19 2F EB F6 5F
HEIZ->DISP ANS      193D2FEB 00 00 13 56 00
DC 80 0A 10 07 19 3D 2F EB 00 00 13 56 00 DE E8
DISP->HEIZ QUR      193D2FEC
DC 8A 00 0B 06 3D 19 2F EC 86 B8
HEIZ->DISP ANS      193D2FEC 00 00 00 70 80
DC 80 0A 10 07 19 3D 2F EC 00 00 00 70 80 31 52
DISP->HEIZ QUR      193D2FED
DC 8A 00 0B 06 3D 19 2F ED 96 99
HEIZ->DISP ANS      193D2FED 00 00 00 00 00
DC 80 0A 10 07 19 3D 2F ED 00 00 00 00 00 ED 23
DISP->HEIZ QUR 8510 Diagnose Erzeuger -  Kollektortemperatur 1:
DC 8A 00 0B 06 3D 49 05 2A 88 D1
HEIZ->DISP ANS 8510 Diagnose Erzeuger -  Kollektortemperatur 1: --- °C
DC 80 0A 0E 07 49 3D 05 2A 01 00 00 23 A4
DISP->HEIZ QUR 8310 Diagnose Erzeuger -  Kesseltemperatur:
DC 8A 00 0B 06 3D 0D 05 19 4F 8C
HEIZ->DISP ANS 8310 Diagnose Erzeuger -  Kesseltemperatur: 39.7 °C
DC 80 0A 0E 07 0D 3D 05 19 00 09 EA 59 77
DISP->HEIZ QUR 8310 Diagnose Erzeuger -  Kesseltemperatur:
DC 8A 00 0B 06 3D 0D 05 19 4F 8C
HEIZ->DISP ANS 8310 Diagnose Erzeuger -  Kesseltemperatur: 39.7 °C
DC 80 0A 0E 07 0D 3D 05 19 00 09 EA 59 77
DISP->HEIZ QUR 8310 Diagnose Erzeuger -  Kesseltemperatur:
DC 8A 00 0B 06 3D 0D 05 19 4F 8C
HEIZ->DISP ANS 8310 Diagnose Erzeuger -  Kesseltemperatur: 39.7 °C
DC 80 0A 0E 07 0D 3D 05 19 00 09 EA 59 77
DISP->HEIZ QUR 8310 Diagnose Erzeuger -  Kesseltemperatur:
DC 8A 00 0B 06 3D 0D 05 19 4F 8C
HEIZ->DISP ANS 8310 Diagnose Erzeuger -  Kesseltemperatur: 39.7 °C
DC 80 0A 0E 07 0D 3D 05 19 00 09 EA 59 77
DISP->HEIZ QUR 8310 Diagnose Erzeuger -  Kesseltemperatur:
DC 8A 00 0B 06 3D 0D 05 19 4F 8C
HEIZ->DISP ANS 8310 Diagnose Erzeuger -  Kesseltemperatur: 39.8 °C
DC 80 0A 0E 07 0D 3D 05 19 00 09 F1 FA 2D
DISP->HEIZ QUR 8310 Diagnose Erzeuger -  Kesseltemperatur:
DC 8A 00 0B 06 3D 0D 05 19 4F 8C
HEIZ->DISP ANS 8310 Diagnose Erzeuger -  Kesseltemperatur: 39.8 °C
DC 80 0A 0E 07 0D 3D 05 19 00 09 F1 FA 2D


Werte am Gerät:


8324 - Gebläsedrehzahl: 0
8326 - Relative Leistung: 0%
8327 - Wasserdruck: 2,2
8328 - Betriebsanzeige FA: 0
8329 - Ionisationsstrom: 0
8336 - Betriebsstunden Brenner: 362h
8337 -  Startzähler Brenner: 135
8338 - Betriebsstunden Heizbetrieb: 352h
8339 - Betriebsstunden TWW: 8h
8440 - Betriebsstunden Zonen: 0h


Das Mitschreiben für den Feuerungsautomat schaue ich mir morgen an und schiebe es dann hinterher - sind eigentlich nicht wichtige Daten, wollte es Dir nur der Vollständigkeit halber mitteilen...

Viele Grüße

Frederik
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