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

Danke für das Lob, aber 90% des Codes sind immer noch von Gero, ich habe ja nur die Aufgabe des Maintainers und dem Hinzubasteln von kleineren Features übernommen :)... (BTW: Das Logging der Telegramme auf SD-Karte ist fast fertig)

Was die Portierung auf ESP angeht, wäre das prinzipiell sicher möglich, vielleicht hat der ESP ja auch einen Hardware-UART, dann könnte man sich SoftwareSerial möglicherweise sogar sparen. Weiter vorne im Thread gab es glaube ich auch schon mal jemanden, der sich an einer Umsetzung versucht hat und auch Code gepostet hat, vielleicht hilft das weiter?

Was die Platine angeht, würde diese sicher größer als der ESP ausfallen, vielleicht schafft man es in NodeMCU-Größe, aber kleiner wird es wohl nicht. Ich sitze gerade an einer neuen Revision der Platine, um diese sowohl in unserem Projekt, als auch im Rahmen des BSBGateway-Projekts von Johannes Löhnert auf dem Raspberry Pi einzusetzen. Wenn klar ist, ob und auf welchem Formfaktur Du die ESP-Anbindung umsetzt, könnten wir das noch mit berücksichtigen.

Ich sehe den Vorteil einer ESP-Umsetzung allerdings höchstens in teilweise geringeren Kosten für die Hardware. Allerdings gehen bei so einer Lösung auch die einfache Anbindung von Relais und anderen physikalisch angebundenen Aktoren sowie das SD-Karten-Logging verloren. Wer das alles nicht braucht, für den könnte das von Interesse sein, aber für alle anderen dürfte die Ersparnis dann nur noch relativ gering sein und den Umsetzungsaufwand kaum rechtfertigen, zumal man die WLAN-Anbindung ja einfach über LAN-WLAN-Bridges umsetzen, die vielleicht gut 10 Euro kosten.

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

Einen Wemos D1 bekommt man bei Ali für 2,80€, der hat dann sogar 4MB Flash.
Ein SD-Shield für den Wemos D1 gibts ab ca. 1€.
Ein Prototyp Shield für 1€.
Und ein Relais für 1,50€.
Ich find das schon unschlagbar günstig. [emoji4]


Gesendet von iPhone mit Tapatalk
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

freetz

Ok, der Wemos D1 Mini ist schon sehr günstig und anscheinend lassen sich die Shields dort auch stacken. Wenn es also einer von Euch auf die Plattform portieren will, dann wäre das sicher nicht verkehrt. Dadurch, dass die Command-IDs ja in eine extra Datei ausgelagert sind, könntet Ihr auch ohne Probleme darauf zugreifen. Nur der Code des Hauptprogramms ist inzwischen an verschiedenen Stellen sehr auf den Arduino zugeschnitten, da Gero auch das SoftwareSerial noch mal speziell für den BSB angepasst hat (daher heißt die Bib auch BSBSerial).
Ich selber werde da neben dem, was ich für den Arduino-Code mache, keine weiteren Energien hineinstecken können, aber wenn es Fragen gibt, versuche ich gern zu helfen.

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

arzmi

...ich mach mich da mal dran...
Relais und Co sind mir im Moment nicht so wichtig, Hauptsache ich bekomm' meine Brötje Therme "intelligent" angebunden.
Die ESP haben sowohl einen UART als auch 8 GPIOs (falls man doch mal Relais, DHTs oder sonstwas will).
Hauptknackpunkt wird in der Tat der Softwareserial werden. Direkt den UART werde ich nicht nehmen können, weil wir ja zumindest zum Senden CSMA/CD machen müssen, was mit dem UART nicht geht.

Werde erst mal mit reinem "Zuhören" und decodieren anfangen.

Scherheinz

Zitat von: freetz am 21 März 2017, 18:20:36
Nur der Code des Hauptprogramms ist inzwischen an verschiedenen Stellen sehr auf den Arduino zugeschnitten, da Gero auch das SoftwareSerial noch mal speziell für den BSB angepasst hat (daher heißt die Bib auch BSBSerial).

Und deshalb kann man auch nicht einfach eine Hardware Serial benutzen. Der Mega besitzt mehrere Hardware Serials aber trotzdem wurde aus diesem Grund Software Serial benutzt.

Gruß

freetz

Hm, zumindest Johannes Löhnerts BSBGateway auf dem Raspberry läuft über den Hardware-UART dort, aber das ist natürlich eine ganz andere Software. Ich hatte daraus nur geschlossen, dass es prinzipiell auch ohne Bit-Banging möglich sein müsste, aber im Detail habe ich mich damit nicht befasst...
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

Version 0.30 ist auf GitHub verfügbar. Das Logging von Bus-Telegrammen auf SD-Karte ist nun mit dem Logging-Parameter 30000 möglich. Dabei kann mit der Variable log_unknown_only bzw. URL-Befehl "/LU=1" das Logging auf bisher unbekannte Command IDs begrenzt werden. So ist es dann einfacher möglich, zu schauen, bei welcher Aktion (z.B. Brenner ein/aus) die Heizung Broadcast Nachrichten verschickt.
Achtung: Der /V Befehl wirkt sich nun auch auf das Logging auf SD-Karte aus, damit füllt sich die Karte ggf. recht schnell, wenn viel auf dem Bus los ist.

Außerdem ist ab jetzt die Time Library von Paul Stoffregen notwendig und liegt dem Paket bei. Damit wird für das Logging vermieden, dass bei jedem Eintrag die Uhrzeit von der Heizung geholt werden muss, sondern dies nur einmal pro Minute passieren muss. Beim Update also einfach den Ordner in den entsprechenden Library-Ordner der Arduino IDE kopieren.

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

Scherheinz

Zitat von: freetz am 21 März 2017, 22:52:12
Hm, zumindest Johannes Löhnerts BSBGateway auf dem Raspberry läuft über den Hardware-UART dort, aber das ist natürlich eine ganz andere Software. Ich hatte daraus nur geschlossen, dass es prinzipiell auch ohne Bit-Banging möglich sein müsste, aber im Detail habe ich mich damit nicht befasst...

Prinzipiell funktioniert das mit Sicherheit, aber welche Änderungen nötig sind bzw wie hoch der Aufwand ist kann ich nicht sagen.....

Quant

Ich bekomme beim Versuch, die 0.30 zu kompilieren, die Fehlermeldung
BSB_lan:2464: error: 'LogTelegram' was not declared in this scope Time Library habe ich ergänzt. Muss ich (gegenüber der 0.29) noch weitere Einstellungen vornehmen?

Viele Grüße
Thomas

freetz

Oops, da ist mir ein Ausklammern der Logging-Funktion durchgerutscht, für Leute, die die nicht verwenden.
Hab's auf GitHub gefixt, Du kannst sonst die Zeile auch einfach in
#ifdef LOGGER
             LogTelegram(msg);
#endif

ändern.

Sorry und 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


JohannesL

Zitat von: Scherheinz am 22 März 2017, 22:50:53
Prinzipiell funktioniert das mit Sicherheit, aber welche Änderungen nötig sind bzw wie hoch der Aufwand ist kann ich nicht sagen.....

Hab es hier an meinem Raspberry schon laufen gehabt. Das wesentliche Problem das sich ergibt, ist dass die BSB-Lan Platine gegenüber Standard-UART invertierte Pegel nutzt. D.h. man braucht je 1 Inverter an Rx und Tx, die ich hier versuchsweise auf einem Breadboard zusammengesteckt hab. Kann nur sagen es funktioniert. :-)

Was nicht geht ist Kollisionserkennung; aber von schnellem Überfliegen von BSBSoftwareSerial.cpp gibts das in der Arduino-Lösung auch nicht. Scheint also nicht so wichtig zu sein :-)

Scherheinz


frank

#703
wie oft sendet eigentlich ein echtes, originales RGT die raumtemperatur an den regler? hat das vielleicht mal jemand genauer beobachtet? wird in festen abständen gesendet oder variabel? und wie lang ist der grösste abstand?

mein "fhem-RGT" sendet zur zeit immer bei temperaturänderung und zusätzlich, wenn seit 5 minuten keine änderung erfolgte, die letzte temperatur erneut.

ich hatte bei mir mal beobachtet, dass mindestens alle 10 bis 20 minuten eine temperatur gesendet werden muss. ansonnsten wird die raumgeführte regelung automatisch auf witterungsgeführt umgeschaltet, bis erneut raumtemperaturen eintreffen. da mir manchmal das regelverhalten etwas träge vorkommt, kam mir nun die idee, dass die raumtemperaturen vielleicht etwas öfter gesendet werden müssten. andererseits möchte ich auch nicht öfter senden als nötig.

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

freetz

#704
Wie oft ein echtes RGT sendet, kann ich mangels Hardware nicht sagen, aber die Anlage schaltet nach 10 Minuten ohne Raumtemperatur auf witterungsgeführt. Die Therme selber sendet bestimmte Status-Broadcasts (Brenner-, TWW- und Betriebsart-Status) auch relativ regelmäßig alle 10 Minuten (und bei jeder Änderung natürlich), von daher wäre anzunehmen, dass das RGT sich ähnlich verhält.

Ich sende Ist- und Solltemperaturen immer alle fünf Minuten - öfter macht in meinen Augen wenig Sinn, denn so schnell ändern sich die Raumtemperaturen nicht, und wenn versehentlich mal jemand den Thermostat springt die Anlage nicht sofort aus dem Schlaf... Auf jeden Fall reagiert die Therme bei mir (Elco Thision) sofort, wenn Ist- und Soll-Temperatur schon moderat auseinanderliegen (1 Grad reicht da schon). Ist bei Schaltzeitwechseln sehr gut zu beobachten...
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