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

sust

Moin Schotty,

Mit dem bereitgestellten Signal wird nur die Frequenz bestimmt. Mittels Frequenzzähler. Sonst passiert mit dem Signal:-- nichts--.
Man könnte mehr.....     8)         
Der Oszi dient nur dazu die Qualität des Signals zu erkennen (so ein 30€ Teil müsste reichen...), damit auch ein preiswerter Zähler verwendet werden kann.

Meine Messung hat mir klar gezeigt, das  die Fehlfunktion der Nichterreichbarkeit meines Bediengerätes, nicht so sehr meinem noname Arduino Mega(Aufdruck: MADE IN CHINA) anzulasten ist , sondern eher dem Bediengerät.(Das hat  eine doppelt so große  Frequenzabweichung vom Nominalwert)
Also ist nicht meine Knauserigkeit Schuld an dem "Debakel" gewesen sondern die von S..mens Schw..z.  :P
Wenn man hier im Forum blättert....und liest.... erhält man einen ganz anderen Eindruck.

So ich schließ jetzt meinen Zwischenruf und mach nen Haken an die Sache. Wer kann und will hat die Möglichkeit zu checken ob und wie das Verfahren auf den Due übertragen werden kann oder ob der Due nicht schon von Natur aus was brauchbares bereitstellt ohne den Gammonvorschlag zu verwenden.

Gruß sust

Luposoft

Hat denn jemand schon Erfahrung gewonnen, inwieweit bei den 3,3V des Due der Pullup für die Onewire-Sensoren verändert werden sollte?
Aktuell habe ich 4,7k bei ca. 2m Kabellänge aber eben mit 5V.
Danke sehr
Raspi B+
CUL nano 433MHz
CUL nano 868MHz
ELCO Thision S Plus 19
Arduino Due

freetz

@Luposoft: Das hängt u.a. von der Entfernung und der Anzahl der Sensoren ab. Tendenziell würde ich schon etwas nach unten gehen, vielleicht auf 2k2. Einfach mal ausprobieren, kaputt gehen wird davon nichts.

@all: Wir haben im aktuellen Repo den Parameter 10100 (früher "Brennerstatus", jetzt "Systemstatus") anhand von Dokumentationen dekodieren können, den wir bisher schon zur Berechnung der Brennerlaufzeiten verwendet haben. Insbesonder das Bit 4 (dez. 8) ist aber noch unklar, dort heißt es in der Doku nur "Direktanzeige". Vielleicht könnt Ihr den Parameter mal mitloggen und dann schauen, was am Display oder sonstwo zu beobachten ist, wenn dieses Bit gesetzt wird. Grundsätzlich lassen sich damit perspektivisch auch eine allgemeine Fehlererkennung umsetzen, oder bei den verschiedenen Raumgerätenachbauten auch entsprechende Icons anzeigen 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

@Luposoft: Wie freetz schon sagte, hängt das von deiner Installation ab. Du kannst erstmal mit den 4k7 testen, ansonsten schrittweise verkleinern.
DS18B20 scheint aber bei 3,3V VDD auch gerne mal rumzuzicken (so zumindest meine Erfahrung), insbesondere was größere Installationen (Anzahl Sensoren & Kabellänge) angeht. Daher: Du kannst auch am Due die Versorgung mit 5V beibehalten und den PullUp dann zwischen DATA und 3,3V des Due platzieren - die DS18B20 sind 'open drain', d.h. die 5V kommen in dem Fall nicht am GPIO an, sondern dienen lediglich der Spannungsversorgung.
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

Luposoft

Danke für die Hilfe
ich habe nur 2 Sensoren.
Mir gings darum gleich beim Due-Kauf die richtigen Widerstände mitzubestellen.
Sowas hab ich nicht auf Halde.
Raspi B+
CUL nano 433MHz
CUL nano 868MHz
ELCO Thision S Plus 19
Arduino Due

Schotty

Dann am besten ein kleines Widerstandsset mitbestellen, damit du ein paar verschiedene Werte immer zur Hand hast. Wenn das für dich 'überdimensioniert' ist, dann vielleicht je einen mit ca 3k3 und 2k2 oder sowas. Aber wenn es bisher mit 4k7 problemlos lief, wird das vermutlich auch beim Due der Fall sein, denn an der Installation selbst (Anzahl Sensoren & Kabellängen) wird sich dann ja vermutlich nichts ändern..
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

DominikReber

Hallo zusammen

Ich beginne mich gerade mit IOBroker und FHEM auseinanderzusetzen und möchte unter Anderem unseren nicht sehr intelligenten Elco Thision S etwas unter die Armen greifen, indem ich gewisse Parameter anhand des Wetters verändere.
Generell läuft das Gerät solide, aber ist halt etwas eingeschränkt.

Daher würde ich gerne das Gerät anbinden an IOBroker und ev. FHEM.

Nun bin ich ein langjähriger C# und Kotlin-Programmierer, aber was Arduino angeht, blutiger Anfänger.

Hab mir die wirklich ausgezeichnete Anleitung mal durchgelesen und soweit bin ich auch überzeugt, dass dies so lösbar mit meinem Thision S.

Nur was ich nicht rausgefunden habe, ist, woher ich denn eigentlich so einen Adapter als Bausatz oder vormontiert herbekomme?
Würde das Projekt sehr gerne verwirklichen, aber kann mir da jemand helfen?

Herzlichen Dank

Dominik

Schotty

Zitat von: DominikReber am 22 Dezember 2020, 14:35:39
Hab mir die wirklich ausgezeichnete Anleitung mal durchgelesen und soweit bin ich auch überzeugt, dass dies so lösbar mit meinem Thision S.

Nur was ich nicht rausgefunden habe, ist, woher ich denn eigentlich so einen Adapter als Bausatz oder vormontiert herbekomme?

Danke für die Blumen  :D

Den Adapter kannst du bei freetz bekommen, steht eigtl auch so im Handbuch, schick ihm einfach eine Mail an bsb(ät)code-it(punkt)de  ;)
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

freetz

...und die Thision S habe ich auch hier am Laufen - die Anzahl konfigurierbarer Parameter hat sich durch BSB-LAN fast verdoppelt ;) - schon krass, warum Elco manche Parameter als OEM verbirgt, die anderswo frei zugänglich sind...
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

Frohe und gesunde Weihnachten allerseits und schonmal einen guten Rutsch!
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

freetz

Liebe alle,
quasi als verspätetes Weihnachtsgeschenk gibt es nun eine kostengünstige Möglichkeit, BSB-LAN über WiFi anzubinden, und zwar mit dem Projekt WiFiSpi von Jiri Bilek, das ich für BSB-LAN etwas angepasst habe und nun im BSB-LAN Repository zu finden ist.
Hierfür braucht man nur einen ESP8266, z.B. in Form eines NodeMCU oder eines Wemos D1 mini, den man dann mit sieben Jumper-Kabeln mit dem Arduino verbindet. Die Geräte kosten nicht mehr als ein paar Euro.

Hier die Schritt für Schritt-Anleitung (@Schotty, vielleicht ist das auch was für's Handbuch?):

- Zuerst muss der ESP8266 mit der Firmware WiFiSpiESP geflasht werden. Dafür muss in der Arduino IDE die Unterstützung für ESP8266 hinzugefügt werden, wie das geht, steht hier.

- Dann verbindet man den 6-Pin SPI-Header des Arduino, der sich direkt oberhalb der BSB-LAN-Platine befindet, folgendermaßen mit dem ESP:
SPI-Due ESP
1 D6
3 D5
4 D7
6 GND

Pin 2 des SPI-Headers liefert 5 Volt. Diesen kann man beim Wemos D1 Mini zur Stromversorgung verwenden und mit dem 5V-Pin verbinden. Der NodeMCU erwartet auf seinem 3V3-Pin nicht mehr als besagte 3,3 Volt, so dass man hier die Stromversorgung vom Arduino über den entsprechenden 3V3-Pin an der seitlichen Pinreihe abgreifen muss.

Zuletzt muss noch Pin D8 des ESP mit Pin 13 des Arduino verbunden werden, das war's dann auch schon. Wenn keine weiteren SPI-Geräte (wie z.B. Ethernet-Shield oder SD-Karten-Leser) verwendet werden, kann man diese Verbindung auch probeweise weglassen. Das hätte den Vorteil, dass man dann bei einem Wemos z.B. alle nötigen Leitungen am SPI-Header abgreifen kann.

Um WLAN dann in BSB-LAN zu verwenden, muss im aktuellen Repository noch #define WIFI in der BSB_lan_config.h hinzugefügt werden, sowie die beiden Variablen wifi_ssid und wifi_pass entsprechend geändert werden. Möglicherweise werden wir das aber auch noch über das Webinterface konfigurierbar machen, wenn klar ist, dass das Ganze stabil läuft. Dann einfach BSB-LAN auf den Arduino flashen und sich freuen, wenn die WLAN-Verbindung klappt (im Serial Monitor kann man sehen, welche IP Adresse vergeben wurde, falls man DHCP verwendet).

Erste Tests hier bei mir sind aber schon mal sehr positiv gelaufen, deutlich schneller auf jeden Fall, als mit der Serial-to-ESP-Krücke, die es für den Mega gab. Das einzige Problem hier ist, dass man diese fliegende Verkabelung irgendwie halbwegs sauber hinbekommen muss. Am besten geht dies vermutlich, wenn man sich auf den SPI-Header beschränkt und mit einem entsprechenden 2x3 Jumper-Kabel auf ein entsprechendes ESP-Board geht, das man dann auch gut in einem eigenen Gehäuse verstauen kann.

Einzige Funktionseinschränkung (hoffentlich nur momentan) ist, dass die trusted_ip_addr Funktion nicht verwendet werden kann. Bitte beachten, falls dies relevant sein sollte.

Bitte gebt mal Rückmeldung, ob das soweit auch gut bei Euch funktioniert, bzw. wo Probleme auftreten. Einen NodeMCU oder Wemos hat ja vielleicht der eine oder andere bei sich herumfliegen... Insbesondere, wenn im Serial Monitor Fehlermeldungen wie diese hier auftauchen sollten, bitte ich um Rückmeldung:
[espspi_proxy.h:300] W: Slave rx is not ready, status 0                         
[espspi_proxy.h:300] W: Slave rx is not ready, status 0                         
[espspi_proxy.h:329] W: Slave tx is not ready, status 0                         
[wifispi_drv.cpp:79] W: Error waitResponse   


Theoretisch sollte das Ganze auch auf dem Mega laufen (entprechende Konfiguration vorausgesetzt, dass der Sketch noch in den Speicher passt). Auch hier wäre eine kurze Rückmeldung hilfreich.

Viel Spaß damit!
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

Coooole Sache!  8)

Hab mir das gerade mal auf dem Schreibtisch zurechtgelegt und puzzle ein wenig rum..

Zitat von: freetz am 27 Dezember 2020, 12:17:24
Pin 2 des SPI-Headers liefert 5 Volt. Diesen kann man beim Wemos D1 Mini zur Stromversorgung verwenden und mit dem 5V-Pin verbinden. Der NodeMCU erwartet auf seinem 3V3-Pin nicht mehr als besagte 3,3 Volt, so dass man hier die Stromversorgung vom Arduino über den entsprechenden 3V3-Pin an der seitlichen Pinreihe abgreifen muss.
Anmerkung:
Man kann die 5V auch beim NodeMCU als Stromversorgung nutzen, dazu muss man die 5V dann an den "Vin"-Pin des NodeMCU anlegen.

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

freetz

Man kann die 5V auch beim NodeMCU als Stromversorgung nutzen, dazu muss man die 5V dann an den "Vin"-Pin des NodeMCU anlegen.

Das dachte ich auch (und habe es auch ausprobiert), aber zumindest mein LoLin NodeMCU 3 hat sich da nicht gerührt, bei 3,3 Volt über den entprechenden Pin allerdings schon. Hier habe ich auch gefunden, dass VIN beim NodeMCU zwischen 7 und 12 Volt liegen muss, was das Verhalten erklären würde:
https://diyi0t.com/what-is-the-esp8266-pinout-for-different-boards/
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

Hmm, ok, das wäre/ist natürlich schlecht.. Naja, dann wird's halt ein Wemos, ist ja eh kleiner und wenn Pin13 nicht zwingend benötigt wird, auch besser anzuschließen  :)
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

freetz

Hast Du es denn mit dem NodeMCU geschafft? Vielleicht sind das ja einfach unterschiedliche Hersteller. Hat mich zumindest auch gewundert, dass man da mit den Standard-5V nichts erreichen kann.

Ich habe den SPI-SS Pin jetzt über das Definement WIFI_SPI_SS_PIN konfigurierbar gemacht. Je nach Aufbau und anderen Shields kann es Sinn machen, den anderswo abzugreifen.
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