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

Zitat von: MoinMoin am 04 Januar 2021, 10:37:54
Hab noch ne Frage betreffend des Paramenters /W
Nun dachte ich, dass ich mit dem Wert W dies unterdrücken kann:
http://ip/WS710=20.0

Aber ich krieg dann gleichwohl eine HTML-Page zurück und zwar mit dem Parameter 0 (und nicht 710).
Oder wie sonst kann ich ein plain oder json-Wert zurückerhalten als response?

Hast Du das WEBSERVER Definement in der _config.h aktiviert? Das ist Voraussetzung für die Nutzung von /W.
Ansonsten kannst Du einen JSON-Wert über /JQ erhalten, da kommt dann nur eine JSON-Struktur.
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

Luposoft

So, der Due läuft  ;D

Kaum macht man's richtig, schon funktionierts

Wäre ich im Leben nicht allein drauf gekommen, (das es an der Bus-Konfig lag)
Ich war fest der Meinung die orginal config der 1.1 genommen zu haben...

Vielen Dank
Raspi B+
CUL nano 433MHz
CUL nano 868MHz
ELCO Thision S Plus 19
Arduino Due

Schotty

Also in der original config.h.default der v1.1 steht's zumindest DUE-spezifisch per default drin:

BSB bus(19,18); // BSB bus(68,69); // pin 68,69 = SoftwareSerial

..vielleicht die Macht der Gewohnheit oder eine alte config.h übernommen..?

Egal, viel Spaß mit dem neuen Setup. Nun trau dich und flashe endlich v2.x  ;D
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

Schotty

@all: Falls jemand mal ein Pinout-Schema für den DUE sucht, wird er jetzt auch im Handbuch fündig: https://1coderookie.github.io/BSB-LPB-LAN/anhang_b.html  ;)
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

Luposoft

Zitat von: Schotty am 05 Januar 2021, 14:34:12
Also in der original config.h.default der v1.1 steht's zumindest DUE-spezifisch per default drin:

BSB bus(19,18); // BSB bus(68,69); // pin 68,69 = SoftwareSerial

..vielleicht die Macht der Gewohnheit oder eine alte config.h übernommen..?

Egal, viel Spaß mit dem neuen Setup. Nun trau dich und flashe endlich v2.x  ;D

Ja, ich hatte versehentlich doch nicht die neue config genommen.
War mir aber sehr sicher gewesen, ich hätte es getan. Daher hatte ich in Richtung Hardware-Fehler gedacht ...

Die 2.0 kommt bald ran. Muß aber noch meine custom anpassen. Hat sich ja einiges geändert.  ;D
Raspi B+
CUL nano 433MHz
CUL nano 868MHz
ELCO Thision S Plus 19
Arduino Due

Luposoft

@freetz
mein Due läuft aktuell mit der 1.1 und meinem custom-Code
Nun bin ich an der 2.0.69
mit deaktivierter CUSTOM_COMMANDS läuft es.

mit aktivierter CUSTOM_COMMANDS kann auch alles kompiliert und hochgeladen werden
Aber:
Der SerMon bleibt in der Funktion SetDevID am Punkt
printFmtToDebug(PSTR("Device family: %d\r\nDevice variant: %d\r\n"), my_dev_fam, my_dev_var);
hängen
Die letzte Ausgabe ist 'Dev' und das wars

Ich habe vor dieser Zeile mal ein Serial.println("TEST"); eingefügt. Dann werden davon die ersten 2 Zeichen angezeigt, dann ist Schluß.
Irgendwas will keine Ausgabe mehr zulassen.

Mir ist grad absolut unklar, wo ich ansetzen muß. Muß ja mit meinem Code zu tun haben.

Daher die Frage: Kennst du solch ein Phänomen ?

Raspi B+
CUL nano 433MHz
CUL nano 868MHz
ELCO Thision S Plus 19
Arduino Due

Accureve

#5166
Hallo zusammen,

ich habe die Lösung mit dem Mega seit 4 Jahren erfolgreich im Einsatz.
Heute wollte ich das Programm von der aktuell genutzten V0.41 auf die V2.0 hochziehen und bekomme seitdem mit keinem der Programme (weder V0.41 noch V2.0) eine Antwort der Wärmepumpe.

1) Ich habe das aktuelle V2.0 Programm (mit kleinen Anpasungen, damit es auf den Mega passt) geladen. Webserver etc. problemlos erreichbar.
2) Ich habe den Parameter /Q ausprobiert, um ggf. neue Parameter zu finden - hier das Resultat (ohne neue Parameter):
Version: 2.0.69-20210105225538
Scanne nach Geräten...
Geräteadresse gefunden: 0
Geräteadresse gefunden: 10

Teste Geräteadresse 0...
Gerätefamilie: 170
Gerätevariante: 127
Geräte-Identifikation: RVS21.827D/127
Software-Version: 5.8
Entwicklungs-Index: 000000 - decoding error
Objektverzeichnis-Version: 200.9
Bootloader-Version: 4.0
EEPROM-Version: ---
Konfiguration - Info 2 OEM: (parameter not supported)
Zugangscode Inbetriebnahme?: .
Zugangscode Fachmannebene ?: .
Zugangscode OEM?: .
Zugangscode OEM2?: .
Bisher unbekannte Geräteabfrage: 20
Hersteller-ID (letzten vier Bytes): 127732
Bisher unbekannte Geräteabfrage: 14210000C8 - unknown type
Außentemperatur (10003): 2.0 °C
Außentemperatur (10004): 2.0 °C
6225;6226;6224;6220;6221;6227;6229;6231;6232;6233;6234;6235;6223;6236;6237;
170;127;RVS21.827D/127;5.8;;200.9;---;;.;.;.;.;20;127732;04010100C8;

Starte Test...

Test beendet.

Teste Geräteadresse 10...
Gerätefamilie: 118
Gerätevariante: 235
Geräte-Identifikation: AVS37.394/327
Software-Version: 6.7
Entwicklungs-Index: (parameter not supported)
Objektverzeichnis-Version: 102.0
Bootloader-Version: (parameter not supported)
EEPROM-Version: (parameter not supported)
Konfiguration - Info 2 OEM: (parameter not supported)
Zugangscode Inbetriebnahme?: (parameter not supported)
Zugangscode Fachmannebene ?: (parameter not supported)
Zugangscode OEM?: (parameter not supported)
Zugangscode OEM2?: (parameter not supported)
Bisher unbekannte Geräteabfrage: ---
Hersteller-ID (letzten vier Bytes): 1199797
Bisher unbekannte Geräteabfrage: (parameter not supported)
Außentemperatur (10003): °C (parameter not supported)
Außentemperatur (10004): °C (parameter not supported)
6225;6226;6224;6220;6221;6227;6229;6231;6232;6233;6234;6235;6223;6236;6237;
118;235;AVS37.394/327;6.7;;102.0;;;;;;;---;1199797;;

Starte Test...

Test beendet.

Fertig.

=> Der Arduino hat von der WP eine entsprechende Antwort bekommen.

3) Ich habe anschließend den Arduino neu gestartet - dabei ist mir aufgefallen, dass BSB-LAN weder die Device-Family noch die -Variant erkennen konnte:
Device family: 0
Device variant: 0


4) Ich habe die Device-Family und -Variant in der Config hinterlegt, aber auch jetzt kommt keine Antwort mehr von der Therme:
READY
8
DC 8A 7F 14 02 05 00 00 6C 00 79 01 06 03 13 06 26 00 4A D6
LL  INF    0 Uhrzeit und Datum - Datum/Zeit: 06.01.2021 19:06:38
DC 8A 7F 14 02 05 00 00 6C 00 79 01 06 03 13 06 26 00 4A D6
⸮READY
Address EEPROM option 0: 0
Address EEPROM option 1: 1
Address EEPROM option 2: 2
Address EEPROM option 3: 6
Address EEPROM option 4: 226
Address EEPROM option 5: 306
Address EEPROM option 6: 0
Address EEPROM option 7: 0
Address EEPROM option 8: 0
Address EEPROM option 9: 0
Address EEPROM option 10: 0
Address EEPROM option 11: 0
Address EEPROM option 12: 0
Address EEPROM option 13: 0
Address EEPROM option 14: 0
Address EEPROM option 15: 0
Address EEPROM option 16: 0
Address EEPROM option 17: 0
Address EEPROM option 18: 0
Address EEPROM option 19: 0
Address EEPROM option 20: 0
Address EEPROM option 21: 0
Address EEPROM option 22: 0
Address EEPROM option 23: 0
Address EEPROM option 24: 0
Address EEPROM option 25: 0
Address EEPROM option 26: 0
Address EEPROM option 27: 0
Address EEPROM option 28: 0
Address EEPROM option 29: 0
Address EEPROM option 30: 0
Address EEPROM option 31: 0
Address EEPROM option 32: 0
Address EEPROM option 33: 0
Address EEPROM option 34: 0
Address EEPROM option 35: 0
Address EEPROM option 36: 0
Address EEPROM option 37: 0
Address EEPROM option 38: 0
Address EEPROM option 39: 0
Address EEPROM option 40: 0
Address EEPROM option 41: 0
Address EEPROM option 42: 0
Address EEPROM option 43: 0
Address EEPROM option 44: 0
Address EEPROM option 45: 0
Address EEPROM option 46: 0
Address EEPROM option 47: 0
Address EEPROM option 48: 0
Size of cmdtbl1: 20876
Size of cmdtbl2: 27353
Size of cmdtbl3: 18598
free RAM: 3342
Init One Wire bus...
numSensors: 0
PPS settings:
Starting SD..failed
192.168.x.x
255.255.255.0
192.168.x.x
Waiting 3 seconds to give Ethernet shield time to get ready...
Calculating free space on SD...0 MB free
Start network services
DC C2 00 0B 06 3D 05 00 0B C3 A1
Device family: 170
Device variant: 127

Setup complete
DISP->HEIZ QUR 8006 Status - Status Wärmepumpe:
DC 8A 00 0B 06 3D 05 17 DC 0A D5
HEIZ->DISP ANS 8006 Status - Status Wärmepumpe: 50 - Freigegeben, Verd bereit
DC 80 0A 0E 07 05 3D 17 DC 00 00 32 75 0F
GET /684131/ZS HTTP/1.0

/684131/ZS
DISP->HEIZ QUR 8006 Status - Status Wärmepumpe:
DC 8A 00 0B 06 3D 05 17 DC 0A D5
HEIZ->DISP ANS 8006 Status - Status Wärmepumpe: 50 - Freigegeben, Verd bereit
DC 80 0A 0E 07 05 3D 17 DC 00 00 32 75 0F
GET /684131/7804-7807/8413/8003/8006/ HTTP/1.0

/684131/7804-7807/8413/8003/8006/
DC C2 00 0B 06 3D 05 05 6B 50 F2
query failed
DC C2 00 0B 06 3D 05 05 6B 50 F2
query failed
DC C2 00 0B 06 3D 05 05 6B 50 F2
query failed
7804
DC C2 00 0B 06 3D 05 05 6C 20 15
query failed
DC C2 00 0B 06 3D 05 05 6C 20 15
query failed
DC C2 00 0B 06 3D 05 05 6C 20 15
query failed
7805
DC C2 00 0B 06 3D 05 07 91 78 C5
query failed
DC C2 00 0B 06 3D 05 07 91 78 C5
query failed
DC C2 00 0B 06 3D 05 07 91 78 C5

Die Leuchten flackern, d.h. prinzipiell funktioniert die Kommunikation (es wird auch die Kommunikation zwischen WP und Display mitgelesen). Jegliche Abfragen laufen aber in einen Timeout.

An der Hardware habe ich nichts geändert. Habe sowohl die WP als auch den Arduino schon neu gestartet, aber ohne Erfolg.

Kann es ggf. an der /Q-Abfrage liegen, dass die etwas zerschossen hat oder aufgrund der vielen Anfragen der Arduino auf einer "schwarzen Liste" der WP gelandet ist?
Anpassung der "own_bsb_address" auf 0x43 hat allerdings auch keine Besserung gebracht...

Gruß & Danke für alle Ideen :-)

freetz

@Luposoft: Also ich habe bei mir auch Custom Code am Laufen und das ohne diese Probleme. Dass der Arduino so aussteigt hatte ich allerdings schon ein paar Mal bei Fehlern im Programm, meist war das ein Pufferüberlauf oder sowas, aber das aus der Ferne zu diagnostizieren, ist nicht so einfach. Wenn es aber so früh passiert, vermute ich Probleme in der BSB_lan_custom_setup.h

@Accureve: Also die WP führt keine "schwarzen Listen" oder so etwas, und normalerweise gibt es dafür auch die "NACK" oder "ERR" Telegramme, von denen da keine zu sehen sind. Geht denn /Q jetzt noch? Denn für mich sieht es so aus, als wäre da etwas auf dem Sendepfad nicht (mehr) in Ordnung. Ansonsten würde ich versuchen, noch einmal eine ältere Version zu testen, ob es damit wieder geht. Falls ja, dann ist die 2.0 (in der Konfiguration) vielleicht "too much" für den Mega.
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

Luposoft

@freetz
danke für deine Antwort.
Das custom-Code läuft, die Erfahrung mache ich auch schon seit längerem.
Die custom_setup wird erst nach SetDevID gestartet und ist bei mir leer.
Damit will ich dich nun aber nicht weiter belästigen, hast schon genug zu tun.
Ich werd den Wurm schon finden... (wird was ganz triviales sein)

Raspi B+
CUL nano 433MHz
CUL nano 868MHz
ELCO Thision S Plus 19
Arduino Due

freetz

Was Du sonst mal probieren kannst, ist die einzelnen include-Zeilen für die jeweiligen custom-code Abschnitte im BSB_lan.ino Sourcecode auszukommentieren, bzw. alle auszukommentieren und dann nach und nach wieder zu aktivieren. Wenn es wirklich daran liegt, müsste es sich darüber ja eingrenzen lassen...
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 06 Januar 2021, 21:02:48
Ansonsten würde ich versuchen, noch einmal eine ältere Version zu testen, ob es damit wieder geht.
@Accureve: Nur als Tipp: Achte in dem Fall dann auch darauf, jeweils die versionsspezifische config.h zu nutzen und die korrekten Pins für die SW-Serial des Mega einzustellen (68,69). Toitoitoi
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

Accureve

@freetz:
Die Abfrage /Q bringt jetzt nur noch folgendes:
Version: 2.0.69-20210105225538
Scanne nach Geräten...
Geräteadresse gefunden: 0

Teste Geräteadresse 0...
Gerätefamilie: query failed
Gerätevariante: query failed
Geräte-Identifikation: query failed
Software-Version: query failed
Entwicklungs-Index: query failed
Objektverzeichnis-Version: query failed
Bootloader-Version: query failed
EEPROM-Version: query failed
Konfiguration - Info 2 OEM: query failed
Zugangscode Inbetriebnahme?: query failed
Zugangscode Fachmannebene ?: query failed
Bisher unbekannte Geräteabfrage: query failed
Hersteller-ID (letzten vier Bytes): query failed
Bisher unbekannte Geräteabfrage: query failed
Außentemperatur (10003): query failed
Außentemperatur (10004): query failed
6225;6226;6224;6220;6221;6227;6229;6231;6232;6233;6234;6235;6223;6236;6237;
;;;;;;;;;;;;;;;

Starte Test...

=> Die WP wird gefunden aber antwortet nicht (mehr).

@Schotty: Die Config.h habe ich bei beiden Versionen separat befüllt. Das Eintragen der Pins hat auch keine Besserung gebracht.
Es funktionieren weder die V0.41, die jetzt über ein Jahr problemlos im Einsatz war, noch die V2.0 :-(

Ich habe jetzt alle Versionen, die ich bislang im Einsatz hatte versucht (V0.19, V0.21, V0.33, V0.41, V2.0) - leider ergebnislos. Bei jeder Version kommt der query-Fehler. Habe den Arduino-Download auch mit einem zweiten Rechner probiert, um Installationsprobleme ausschließen zu können.

Das einzige, was ich an der Wärmepumpe gemacht habe, ist mich zwischenzeitig als OEM anzumelden - habe aber keine Änderungen durchgeführt. Ich kann mir auch nicht vorstellen, dass es daran liegen könnte...

Wäre super, wenn noch jemand nen ultimative Tipp hat um das System wieder auf Spur zu bekommen. :-)

freetz

Also an dem was und wie der Adapter bzw. die Software etwas sendet und empfängt, hat sich nichts geändert. Vielleicht ist die Platine beim Umstecken etwas rausgerutscht oder so? Denn jetzt sieht es ja auch nicht mehr danach aus, als ob Daten reinkommen würden.
Ein query failed, wenn trotzdem noch Bustelegramme gelesen werden, deutet auf Probleme im TX-Pfad hin, einfach, weil die Heizung nichts mehr empfängt. Wenn Du ein Oszilloskop hast, kannst Du beim TX-Pin auch mal schauen, ob da Aktivität ist, bzw. ansonsten auch direkt auf dem Bus mal schauen, ob da was zu sehen ist, wenn Du sendest.
Nach vier Jahren könnte evtl. auch ein Optokoppler mal das zeitliche segnen, das würde man dann daran sehen, dass Du auf Arduino-Seite auf dem TX-Pin noch etwas auf dem Oszi siehst, aber nicht auf der Bus-Seite.

Und wenn Du alle Versionen ausprobiert hast, hast Du auch immer die jeweils mitgelieferte _config.h genommen, nicht Deine alte? Denn Du musst sowohl beim Sprung von 0.44 auf 1.0 als auch beim Sprung von 1.0 auf 2.0 jeweils andere Einstellungen in der Bus-Konfiguration vornehmen.
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

Accureve

DANKE für die Unterstützung - es läuft jetzt! Ich hatte den Mega etwas unprofessionell an der Hutschiene eines Sicherungskastens befestigt - nachdem ich ihn abgenommen habe funktioniert es jetzt. Scheinbar gab es über die Hutschiene evtl. einen Schluss von Pins - anders kann ich mir das gerade nicht erklären.
Habe jetzt wieder meine V0.41 am laufen, da bei der V2.0 ein Nutzername/Passwort für die Weboberfläche angefordert wird. Da schaue ich heute Abend nach woran das liegen kann, da ich in den Einstellungen nichts vergeben habe (USER_PASS_B64[64] = "").

@freetz: Ich habe mir, wie schon vor längerer Zeit angekündigt, eine Anbindung meiner Zirkulationspumpe integriert (über eine Funksteckdose mit einem entsprechenden Funkmodul am Arduino). Mein Ziel war es die bisherige Zeitschaltuhr zu ersetzen, sodass die Zirkulation nur zu sinnvollen Zeiten läuft und nicht ständig durch die Zirkulation das Brauchwasser abkühlen lässt:

  • Zirkulationszeiten über Config definierbar
  • Zirkulationszeiten über Weboberfläche änderbar
  • Aktivierung der Zirkulation bei Nutzung des Legionellenprogramms
  • Über Befehl der Hausautomatisierung lässt sich die Zirkulation zeitweise deaktivieren (z.B. wenn niemand anwesend ist)
  • Über Befehl der Hausautomatisierung lässt sich die Zirkulation aktivieren und direkt starten (z.B. wenn jemand nach Hause kommt)
Wenn ich die V2.0 am laufen habe, schicke ich dir den Code und den HW-Aufbau, falls das noch eine interessante Sache zur Integration ist. Oder soll ich das besser über ein Issue in Github weiterleiten?

Gruß

freetz

Schicks uns auf jeden Fall, zur Diskussion vielleicht erst mal hier hin und dann, wenn es final ist, auf GitHub
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