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

postman

Hallo zusammen,
ich hab mich länger nicht gemeldet, da ich das Problem mit dem nicht mehr erreichen des BSB-Web erst mal lösen wollte.
Ich glaube, ich habe die Ursache gefunden.
Schotty, ja es liegt am Ethernetshield  :o
Ich habe länger rumprobiert und dabei festgestellt, dass die Ursache der Microsdport ist. Ist eine SD Karte eingesetzt, dann  der BSB-Lan nicht mehr erreichbarist und zwar immer in Abständen von ca. einer Woche. Das kann am Ethernetshield aber auch an der SD-Karte liegen (das habe ich jetzt nicht weiter verfolgt). Seitdem ich die SD-Karte entfernt habe, tritt dieses Phänomen nur noch sporadisch auf und zwar meistens nach einem restart des FHEM (z.B. nach Updates). Ich verwende übrigens die Version 0.40 vom 17.01.2018.
Die SD-Karte ist mir auch nicht so wichtig, da ich logs mit FHEM verarbeite ;)

Vielleicht hilft das ja.

Gruß Uwe
Raspberry Pi Version 2 QUAD-CORE CPU und 1 GB RAM, CUL V3 868 MHz,  stapelbarer CC1101 (SCC) 433 MHz, Enocean-Stick,Jeelink-Stick, BSB-Lanadapter

Spruch eines Ausbilders: Theorie ist, wenn man alles weiss und nichts funktioniert; Praxis ist, wenn alles funktioniert und keiner weiss warum...

Scherheinz

Hallo,
Ich vermute das dieses Shield einen weg hat bei dir, ich hatte wie schon erwähnt mal ähnliche Probleme mit einem China Klon. Hast du trotzdem mal eine andere SD Karte ausprobiert oder mal neu formatiert?

Aber schön das dein System jetzt läuft  :)

Gruß

Schotty

Wie groß war denn die mSD-Karte?

Das SD-Logging hast du aber nun in der config auch deaktiviert, oder?

Merkwürdig finde ich, dass die Nichterreichbarkeit des Adapters nun nach einem Restart von FHEM auftritt..

So oder so:
Ich persönlich würde sicherheitshalber nochmal die 10€ investieren und das Shield tauschen (zB https://www.amazon.de/AZDelivery-Ethernet-Shield-MicroSD-Karten-Arduino/dp/B079GZZVR8/). Sollte es dann noch immer nicht zuverlässig laufen, dann nochmal 15€ und den Ardu zusätzlich tauschen. Billigere Komponenten (z.B. 3€-Shields) würde ich nicht empfehlen..

Außerdem:
Immer die aktuelle Version von BSB-LAN nutzen. Gerade hinsichtlich SD-Logging gab es kurzzeitig irgendwann mal einen Bug, den freetz dann behoben hat.
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

postman

#2358
Moin Schotty,
Ich habe nur die SD-Karte entfernt; sie steckt aber noch im Slot - halt nur nicht eingerastet. Daich, wie schon geschrieben, das Logging nicht benötige, habe ich es auch nicht mehr mit einer anderen probiert.
Die Größe müsste 8GB sein.
Das Logging habe ich nicht deaktiviert.
Ich habe die Tests ja mit der neuesten Version begonnen und immer wieder dieses Phänomen gehabt; deshalb die etwas ältere Version; die funktionierte Anfang des Jahres nämlich ohne Probleme.
Dass das immer nach einem Restart des FHEM geschieht wird wohl daran liegen, dass FHEM dann ab und zu mal nach einem Restart alle eingerichteten Abfragen gleichzeitig zum BSB-Lan sendet, denn auch da ( beim Restart) geschieht das nicht immer. Das Shield selbst ist aber immer per ping erreichbar. Zur Zeit funktionert es mittlerweile schon fast einen Monat wieder ohne Probleme. Bei Gelegenheit werde ich mir noch mal die aktuelle Version installieren und gucken, was passiert; obwohl die alte IT-Weisheit: Never change a running system ;D

Gruß Uwe
Raspberry Pi Version 2 QUAD-CORE CPU und 1 GB RAM, CUL V3 868 MHz,  stapelbarer CC1101 (SCC) 433 MHz, Enocean-Stick,Jeelink-Stick, BSB-Lanadapter

Spruch eines Ausbilders: Theorie ist, wenn man alles weiss und nichts funktioniert; Praxis ist, wenn alles funktioniert und keiner weiss warum...

Schotty

Einige Shields haben u.U. Probleme mit Karten >4GB.
Wenn du das SD-Logging nicht nutzt, so würde ich empfehlen, es in der config auch zu deaktivieren. Nicht, dass das u.U. mal irgendwelche diffusen Probleme bereitet.
Ja, das mit deiner Version hatte ich noch so in Erinnerung, aber komisch finde ich es trotzdem. Prinzipiell weiß man ja noch nicht, was in Zukunft noch so bei BSB-LAN kommt, daher wäre es ja schon ganz gut, wenn es auch mit der jeweils aktuellen Version läuft.
Mich persönlich würde es stören und nerven, daher auch meine Empfehlung, zumindest das Shield sicherheitshalber mal zu tauschen - aber wenn es dir so reicht, dann ists ja schön, wenn du nun eine für dich zufriedenstellende lauffähige Lösung gefunden hast ;)
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

postman

Hallo Schotty,
ja, so wie es jetzt ist, funktioniert es. Ich verwende für die Abfrage mehrere HTTPMods, da das BSB Modul bei mir leider nicht mehr funktioniert (hatte es zu Anfang mal :-\).
Da es mehrere HTTPMods sind (Ich lasse sie in unterschiedlichen Abständen abfragen), scheint es ab und zu mal zu passieren, dass sie nach einem Restart alle gleichzeitig abfragen; dann ist das BSB auch bei der Eingabe der Adresse im Browser nicht erreichbar. witziger Weise rappelt es sich manchmal aber nach einer mehr oder weniger kurzen Zeit  wieder hoch und funktioniert dann wieder. Wenn es mal nicht passiert, reicht es aus, auf dem Raspi die IDE für den Arduino zu starten (der BSB hängt über einen USB-Hub am FHEM) und alles funktioniert wieder. Da es wie geschrieben, mittlerweile wieder mehrere Wochen funktioniert, bin ich so ganz zufrieden.
Noch eine Frage, funktioniert das BSB-Modul bei Dir? ich habe irgentwo gelesen, dass es bei Dir auch nicht mehr funktioniert.

Gruß
Raspberry Pi Version 2 QUAD-CORE CPU und 1 GB RAM, CUL V3 868 MHz,  stapelbarer CC1101 (SCC) 433 MHz, Enocean-Stick,Jeelink-Stick, BSB-Lanadapter

Spruch eines Ausbilders: Theorie ist, wenn man alles weiss und nichts funktioniert; Praxis ist, wenn alles funktioniert und keiner weiss warum...

Schotty

Ja, das mit der gleichzeitigen Abfrage mehrerer Parameter ist immer so eine Sache - der Ardu (und schätzwungsweise der Heizungsregler ebenfalls ;) ) ist eben nicht multitaskingfähig, da wird eine Abfrage nach der anderen bearbeitet. In der Zeit 'reagiert' das System auch nicht mehr auf andere Abfragen. Schön zu sehen, wenn man mal eine Komplettabfrage (/0-10000) via Webinterface macht: Während der Ausgabe der Abfrageergebnisse kann man nichts anderes mehr machen, da hilft dann wie du schon sagtest nur ein Reset zum Abbrechen - oder eben laufen lassen.

Zum Modul: Ich muss gestehen, dass ich es derzeit nicht in Verwendung habe (FHEM generell aber derzeit auch nicht, da muss ich echt mal ran.. ;) ). Damals hakte es mal irgendwo, stimmt, dann lief es soweit auch mal - aber ich kann mich gerade nicht mehr erinnern, wie da jetzt letztlich der Stand der Dinge bei mir mit dem Testaufbau war, sorry :(
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

frank

mit dem attr alignTime kannst du die httpmod abfragen "entzerren", so dass sie nicht gleichzeitig erfolgen.
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

Schotty

Zitat von: frank am 30 September 2018, 12:01:44
mit dem attr alignTime kannst du die httpmod abfragen "entzerren", so dass sie nicht gleichzeitig erfolgen.

Das klingt gut, den Tipp würde ich gerne ins Handbuch-FAQ mit übernehmen! Könntest du mir eine n00b-gerechte Zeile oder genauere Erklärung/Formulierung dazu schreiben, wie das umzusetzen ist? Das wäre super!
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

postman

Schotty,
ist nicht so schlimm. Ich habe mittlerweile einiges mit FHEM und BSB realisiert (siehe BilD). Die HTTPMods werden mit DOIFs weiterbearbeitet. Allerdings muss dem DOIF gesagt werden, dass es nur den Dezimalwert der Ausgabe auswerten soll, siehe Codefenster. Hier die Trinkwasserabfrage für den Floorplan   ;D
DEF
([Trinkwasserstatus:Status_Trinkwasser:d] eq "96") (set ThermeTW TWW) DOELSEIF ([Trinkwasserstatus:Status_Trinkwasser:d] eq "99") (set ThermeTW Aus)

Wert 96 = Ladung Trinkwasser Wert 99 = Geladen, Nenntemperatur
Damit lassen sich dann Dummys, in denen entsprechende Grafiken hinterlegt sind im Floorplan anzeigen

Gruß Uwe
Raspberry Pi Version 2 QUAD-CORE CPU und 1 GB RAM, CUL V3 868 MHz,  stapelbarer CC1101 (SCC) 433 MHz, Enocean-Stick,Jeelink-Stick, BSB-Lanadapter

Spruch eines Ausbilders: Theorie ist, wenn man alles weiss und nichts funktioniert; Praxis ist, wenn alles funktioniert und keiner weiss warum...

Schotty

Danke @Uwe, das werde ich mal im Hinterkopf behalten, wenn ich wieder an FHEM rangehe. Wobei ich gestehen muss, dass ich noch aufs Modul hoffe (und insgeheim warte ;) ).. Sogar die Wartung hast du eingetragen - vorbildlich!  ;D
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

postman

ZitatSogar die Wartung hast du eingetragen - vorbildlich!  ;D
Ja, ich bekomme sogar eine Mail, wenns soweit ist. Ich vergesse so etwas mal ganz gern  ;D
Gruß
Raspberry Pi Version 2 QUAD-CORE CPU und 1 GB RAM, CUL V3 868 MHz,  stapelbarer CC1101 (SCC) 433 MHz, Enocean-Stick,Jeelink-Stick, BSB-Lanadapter

Spruch eines Ausbilders: Theorie ist, wenn man alles weiss und nichts funktioniert; Praxis ist, wenn alles funktioniert und keiner weiss warum...

frank

alignTime gibt es zb auch beim "at", vielleicht besser zum testen.

at1 startet alle 60 min
at2 startet alle 5 min
ohne alignTime "kollidieren" sie bei fhem start und jede weitere stunde.

mit
alignTime1=00:21
alignTime2=00:23

startet at1 immer 21min nach der vollen stunde.
at2 startet immer 23min nach der vollen stunde, sowie natürlich jeweils alle weiteren +/- n x 5min.

somit sollten sich beide at nie treffen.

aktionen zur vollen stunde versuche ich in fhem grundsätzlich zu umgehen, um auch anderen periodischen aktionen auszuweichen, die nicht durch alignTime zu verschieben sind. je "krummer" die uhrzeit, desto weniger scheint in fhem los zu sein.

ZitatalignTime
Applies only to relative at definitions: adjust the time of the next command execution so, that it will also be executed at the desired alignTime. The argument is a timespec, see above for the definition.
Example:
# Make sure that it chimes when the new hour begins
define at2 at +*01:00 set Chime on-for-timer 1
attr at2 alignTime 00:00

sekundengenaue synchronisierung mit der uhrzeit sollte auch funktionieren, also zb mit

alignTime=00:21:21
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

Schotty

#2368
Super, vielen Dank @frank!
Den Hinweis werde ich so mit Link zu deinem Beitrag ins Handbuch übernehmen.
Eine Verständnisfrage habe ich aber leider doch nochmal dazu: Die 'volle Stunde' bezieht sich dabei sozusagen auf die Laufzeit ab FHEM-Start und nicht auf die eigentliche volle Stunde in der Uhrzeit (also bspw 14:00, 15:00 etc)? D.h., at1 würde also 21min nach FHEM-Neustart ausgeführt werden und dann wieder 60min später, at2 würde 23min nach Start ausgeführt werden und dann alle fünf Minuten?

EDIT: Hm, nein, unten hattest du ja "sekundengenaue synchronisation mit der uhrzeit" geschrieben - dann verstehe ich aber die Verzögerung beim Start nicht.. *kopfkratz*
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

Schotty

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