Ausfälle Arduinos mit ConfigurableFirmata und mehreren Sensoren DS18B20

Begonnen von Audi_Coupe_S, 01 Februar 2021, 07:20:03

Vorheriges Thema - Nächstes Thema

Audi_Coupe_S

Hallo,

ich habe in meiner Installation sechs Arduinos (Mega 2560) mit ConfigurableFirmata über Ethernet.
Angeschlossen sind jeweils Ein/Ausgänge und DS18B20 Temperatursensoren.

Zwei der Arduinos fallen sporadisch aus.

2021.02.01 00:22:58 1: 3032 disconnected, waiting to reappear (Arduino_Mega_2_XXXXXXXXXXXXXXXXX)

und kommen automatisch wieder.

2021.02.01 00:23:04 3: Arduino_Mega_2: Firmata device has reconnected
2021.02.01 00:23:04 3: Arduino_Mega_2: querying Firmata versions
2021.02.01 00:23:04 3: Arduino_Mega_2: Firmata Firmware Version Fhem_XXXXXXX_Mega_2.ino V_2_10 (using Protocol Version V_2_06)

Ich habe schon sehr viel probiert. Auch die Spannungsversorgung verbessert und andere Ethernetshields probiert.

An den Ausfällen ändert sich nichts. Sporadisch heißt ein bis mehrfach am Tag.

Jetzt ist mir folgendes aufgefallen:
Es scheint nur die Arduinos zu betreffen, die mehrere DS18B20 haben. (die Sensoren hängen an mehreren 1-wire Bussen, nie mehr als 2 zusammen))
Die Sensoren werden zyklisch abgefragt (zwischen 120 und 900s) aber dadurch immer in der selben Sekunde.

Also werden z.B. alle Sensoren in xx.xx.58 abgefragt.
Und das disconnected passiert immer xx.xx.58. Also könnte da ein Zusammenhang bestehen.

Hat das schonmal jemand beobachtet?
Und wie kann ich das zeitliche Zusammentreffen verhindern?
Selbst wenn ich die Intervalle jeweils um 1Sekunde variiere, fallen ja doch die Sensoren irgendwann mal wieder zusammen. Es würde mit alignTime gehen, das gibt es aber für OWX Devices nicht.

Danke für Eure Ideen.

Gruß









Wzut

Zitat von: Audi_Coupe_S am 01 Februar 2021, 07:20:03
Zwei der Arduinos fallen sporadisch aus.
Vllt vergessen im Sketch die MAC Adresse anzupassen und diese beiden haben nun die gleiche ?
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

xenos1984

Ich kenne die Firmware nicht, aber vielleicht kommt es beim Versuch mehrere Sensoren gleichzeitig zu lesen zu einem Timeout und Reboot? Programmiert die vielleicht den Watchdog, um so einen Reboot auszulösen?

Audi_Coupe_S

Zitat von: Wzut am 01 Februar 2021, 07:30:04
Vllt vergessen im Sketch die MAC Adresse anzupassen und diese beiden haben nun die gleiche ?

Nein, das kann ich definitiv ausschließen. Alle Arduinos haben unterschiedliche Mac-Adressen.

Prof. Dr. Peter Henning


buec65

Welche Alternative mit LAN wäre da zuverlässiger?

Bei mir gibt es auch ab und zu Probleme mit Arduino Nano mit W5500 und 1 oder 2 DS18b20.

Audi_Coupe_S

#6
So, ich habe weitere Erkenntnisse. aber leider noch keine Lösung....

Ich habe das Intervall für alle Temperatursensoren auf 0 gesetzt und frage sie jetzt alle einzeln mit je einem at ab. Also jede 5 sec einen anderen. Nie mehr als einen gleichzeitig.

Einer der beiden Arduinos ist seit dem unauffällig. Der andere fällt immer noch sporadisch aus, wenn ein bestimmter Sensor abgefragt wird.
Das ist aber nur, weil mit diesem Sensor ein Notify gestartet wird, was meinen Heizungsmischer schaltet.

Dieser Heizungsmischer scheint den Arduino zu stören. Leider sind bislang alle Versuche gescheitert, diesen Mischer zu entstören.
Ein (Entstör-) Kondensator zischen Phase und N je Wicklung, funktioniert nicht, weil dann ein Gegendrehmoment erzeugt wird und der Mischer nicht mehr (vernünftig) fährt.
Ein im Nulldurchgang schaltendes SolidStateRelais hat einen Leckstrom, der reicht, um den Mischer fahren zu lassen.....

Mir fällt gerade nix mehr ein....




Wzut

Zitat von: Audi_Coupe_S am 09 Februar 2021, 12:41:17
Mir fällt gerade nix mehr ein....
Vllt hast ja Lust einen radikaleren Weg zu gehen. Als ich meinen ersten Arduino Uno bekommen habe war Firmata ein Fremdwort für mich.
Da ich damals (FHEM kannte ich auch noch nicht) unbedingt einige Temperaturen der Heizung erfassen wollte war das erste Projekt ein simpler OW Bus mit sechs DS1820 im Heizungskeller. Der Arduino sammelt alle 60 Sekunden die Temperaturwerte und gibt sie auf HTTP Anfrage als primitiv HTML Seite aus :
<html><body><pre>
OW|45
10083b57|431
10bca84d|467
10d64157|601
10eeac4d|195
10e52257|-20
102f3d57|478
Counter1|18712
Counter2|54710
K1|1
K2|0
Druck|2.02
Online|3027645
</pre></body></html>

das lief bzw. läuft heute noch so gut und stabil das ich das nie ersthaft saniert habe, im Gegenteil es kamen noch andere Werte im Laufe der Jahre dazu (Wasseruhr, Druck im Heizungssystem, etc) Der Sketch ist fast nur copy&paste aus den Arduino Beispielen OneWire und Webserver.
Sind natürlich alles "nur" Abfragen, aber selbst wenn ich unbedingt einen Ausgang bräuchte könnte ich ihn dem primitiv Arduino Webserver beibringen.

Für das zweite Projekt hatte ich dann auf FIRMATA Getzt , u.a. auch weil ich inzischen FHEM kannte. Allerdings läuft da bis heute um Welten schlechter als die Heizung und wird wohl demnächst in Frührente gehen.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Audi_Coupe_S

Das "mir fällt nix mehr ein war" eigentlich auf die Entstörung des Heizungsmischers bezogen.

Die Temperaturmessung funktioniert ja gut, solange ich den Mischer nicht fahren möchte.......

Prof. Dr. Peter Henning

Ich habe seit 2014 ganz stabil am Laufen: 1-Wire Bus mit DS2408B Interface an einem LAN/Seriell-Konverter. Nix Firmata, dem ich nicht so ganz über den Weg traue...

https://wiki.fhem.de/wiki/1W-IF-ETH

LG

pah

Jostar

https://wiki.fhem.de/wiki/1W-IF-ETH scheint es nicht mehr zu geben, die Links sind down, die Firma scheint nur noch ein großes Produkt im Sortiment zu haben.

Das Modul scheint mir eine Spannungsversorgung 5V z u benötigen. Wäre es nicht total clever, ein Baustein: Ethernet (PoE) - 1-wire-Master zu haben?
Raspberry Pi(s) mit FHEM auf Rasbian Jessie/Strech, DbLog/DbRep mit mySQL, piface, 1Wire-USB-Master von SMS-GUARD, RFXtrx433E

Prof. Dr. Peter Henning

 ::) ::)
Zitatscheint es nicht mehr zu geben
ist ja wohl Käse! Das verlinkte Modul ist doch nur ein Beispiel gewesen, es gibt dutzendweise fertige Schaltungen Ethernet<->Seriell zu kaufen. Und es gibt auch hier im Forum mehrere Leute, die entsprechende Adapter gebaut und und Selbstkostenpreis vertrieben haben.

LG

pah

Jostar

Aua. Da macht einer dem Ruf des Forums bezüglich Freundlichkeit aber keine Ehre! Man kann auch sagen: "ok, danke für den Hinweis, ich entfernte die toten Links, dann haben potentielle zukünftige Besucher auch was davon" oder noch besser "Hinweis: Es gibt viele Alternativen, die sich mit dem Modul betreiben lassen, zu beziehen link-hier und link-da oder selber bauen".

Vielleicht bekomme ich auch noch eine Antwort auf meine Frage?

Vielen Dank und Grüße!
Raspberry Pi(s) mit FHEM auf Rasbian Jessie/Strech, DbLog/DbRep mit mySQL, piface, 1Wire-USB-Master von SMS-GUARD, RFXtrx433E

Prof. Dr. Peter Henning

Es steht jedem frei, im Wiki etwas zu schreiben oder Hardware zu bauen, die er als "cool" empfindet.

pah

Jostar

Unbestritten.

Aber das ist hier nicht der Punkt, sondern Freundlichkeit (da haben Abwertungen wie "Käse" kein Platz) bzw. aus einer anderen Sicht Fehlerkultur (tote Links auf welcher Wiki-Seite auch immer sind sinnfrei). Muss ich dass wirklich einem Professor erklären?

Gruß
Raspberry Pi(s) mit FHEM auf Rasbian Jessie/Strech, DbLog/DbRep mit mySQL, piface, 1Wire-USB-Master von SMS-GUARD, RFXtrx433E