Arduino Firmata DS1820 Interval nach Neustart auf 9999

Begonnen von mago0211, 11 März 2015, 15:30:36

Vorheriges Thema - Nächstes Thema

mago0211

Hallo zusammen,

auf einem Arduino Mega habe ich die ConfigurableFirmata laufen und über LAN an Fhem angebunden soweit so gut.

An PIN 7 habe ich ein OWX definiert. Es sind drei Temperatursensoren daran angeschlossen Typ DS1820.

Per set Sensor_1 interval 300 habe ich die Intervall Zeit zum auslesen der Temperatur auf 5 min eingestellt.

Leider ist es nun so wenn ich den Arduino ausstecke und ihn danach wieder einstecke wird der Interval wieder auf 9999 also den Ursprungwert zurückgesetzt. Dies passiert nur wenn ich wie gesagt den Arduino vom Strom nehmen und ihn anschließend wieder einstecke.
Ich habe dem Arduino mal eine Woche durchlaufen lassen dabei hat sich die Intervall Zeit nicht verändert.

Kann mir da Bitte jemand weiterhelfen?

Gruß
Markus

The-Holgi

Hallo,
habe das problem mit dem interval 9999 habe ich auch. Bei mir werden nach einiger Zeit keine Werte mehr übertragen und interval springt auf 9999.
Wenn ich die temperatur dann mit get temperature aufrufe bekomme ich oft die Meldung:
OWTHERM: Could not get values from device Laube_Temp, return was 28.FF9D1E641403.30 has returned invalid data
Habe auch einen Arduino Mega mit einem ENC28J60 ethernet board und einem DS18B20.
Es sieht so aus als ob er hin und wieder die Netzwerkverbindung trennt. Nach Neustart des Arduino geht für einige Zeit alles wieder.
Habe mal zum testen ein Ethernet Shield mit W5100 geordert, vielleicht klappt es damit  besser. Oder hat noch jemand eine Idee was man machen könnte ?

Gruß Holgi

Raspberry Pi 5

mago0211

Hallo,

immerhin bin ich nicht alleine mit dem Problem.  ::)

Bei kam es auch vermehrt zu Verbindungsabbrüchen über LAN. Relais konnten z.B. nicht mehr geschalten werden. Da hilft eigentlich nur noch vom Strom nehmen und wieder einstecken  :'(.
Seit zwei Tagen habe ich den Arduino per USB angeschlossen, seitdem läuft es einwandfrei auch der Intervall bleibt auf dem eingetragenem Wert stehen. Es scheint wohl an der LAN Verbindung zu liegen???

Gruß
Markus

The-Holgi

Hallo Markus, direkt an USB habe ich auch keine Probleme. Welches Lan-Modul benutzt du ?
Raspberry Pi 5

mago0211

Hallo Holgi,

ich benutze das Orginale Ethernet Shield R3 von Arduino
http://www.arduino.cc/en/Main/ArduinoEthernetShield

Gestern hatte ich aber das gleiche Phänomen mit der USB Verbindung nach 2 1/2 Tagen Dauerbetrieb ging gar nichts mehr auf dem Arduino keine Relais keine Temp. Sensoren nichts, das einzige was half war den Stecker ziehen.

Insgesamt bin ich mittlerweile sehr enttäuscht von der configurable Firmata Geschichte. Ich wollte in meinem Gartenhäuschen ein paar Sachen damit machen(Relais schalten, Taster einbinden, Temperatur messen, Regensensor usw.) aber für einen Produktiven Einsatz ist das Ding absolut ungeeignet damit kann man ein bisschen rumspielen mehr aber leider nicht.
Was ich sehr schade finde da es auf den ersten Blick eine doch Preiswerte Alternative darstellte und mit Sicherheit einige Menschen dort viel Arbeit reingesteckt haben.

Kennt jemand eine gute Alternative?

Gruß
Markus

Wzut

Zitat von: mago0211 am 19 März 2015, 09:06:49
aber für einen Produktiven Einsatz ist das Ding absolut ungeeignet
Hier wage ich mal zu widersprechen - produktiv im wahren Sinne von Industrie vllt., aber im Heimbereich durchaus.
Ich selbst habe nun seit fast zwei Jahren drei verschiedene Kombinationen im Einsatz ( 1 x USB , 2x Ethernet) und bin sehr zufrieden damit !  Ich will damit nicht sagen das ich in den zwei Jahren keinerlei Hänger hatte, aber wenn doch mal ging es immer über einen Soft Reset weiter - brutal Stecker ziehen musste ich bisher nie.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

mago0211

Naja ich kann natürlich nur berichten wie es bei mir läuft, und da ist es absolut unzuverlässig. Ich sage ja auch nicht das es nie einen Hänger haben darf wie du ja schon sagtest es ist eben keine Industriequalität. Aber alle 2 - 3 Tage das ganze über Stecker ziehen und neustarten ist doch etwas sinnlos für einen vernüftigen Einsatz.
Wenn man das ganze wenigsten irgendwie Softwareseitig automatisch neu starten könnte wäre mir ja auch schon geholfen. Aber bei denen Hängern die ich habe hilft absolut nichts anderes als Stecker ziehen oder Reset Taste auf dem Arduino. (Da bräuchte ich so nen Roboterarm der die Reset Taste betätigt  8) )

Und meist nach derartigen Hängern spingt beispielsweise der Intervall der Sensoren wieder auf 9999 warum wieso weshalb? Keine Ahnung  :'(

Wie umfangreich sind den deine Installationen? Meine ist derzeit noch überschaubar sollte aber noch erweitert werden  ::).

Derzeit habe ich
1x Taster
1x Display über i2c
1x Relais Board 8 Fach
3x 1-Wire Temp. Sensoren

Grüße
Markus

Wzut

Zitat von: mago0211 am 20 März 2015, 11:25:47
Und meist nach derartigen Hängern spingt beispielsweise der Intervall der Sensoren wieder auf 9999 warum wieso weshalb? Keine Ahnung  :'(

ja klar , die 9999 kommen von OWTHERM das mit OW (oder OW_ASYNC) redet welches dann wieder mit FRM spricht.
Hat OW ein Problem mit FRM schlägt das als Fehler zu OWTHERM nach unten durch :
#-- process results
  if( defined($ret)  ){
    $hash->{ERRCOUNT}=$hash->{ERRCOUNT}+1;
    if( $hash->{ERRCOUNT} > 5 ){
      $hash->{INTERVAL} = 9999;
    }
    return "OWTHERM: Could not get values from device $name for ".$hash->{ERRCOUNT}." times, reason $ret";

also immer schön den ERRCCOUNT im Auge behalten damit er nicht über 5 geht, kannst ja mal http://forum.fhem.de/index.php/topic,34738.0.html dazu lesen ....

Zitat von: mago0211 am 20 März 2015, 11:25:47
Wie umfangreich sind den deine Installationen? Meine ist derzeit noch überschaubar sollte aber noch erweitert werden  ::).
Überschaubar sind meine auch :
UNO + W5100  ->  10 x DS1820  , 1 x  I/O IN
UNO + USB -> 4 x DS1820 , 1 x  DS2423 Clone , 4 x I/O IN . 1 x I/O Out
Nano + ENC28J60 -> 1x DS1820
Überall 4,7K am Arduino zwischen 1W Pin und 5V , 1-W Bus immer  nur mit 2 Adern (GND + DATA)
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

mago0211

Hallo nochmal,

mein Problem besteht nach wie vor da ich ja bereits Feststellen konnte das es immer wieder zu Abstürzen den Arduinos kommt habe ich mich mal auf die suche gemacht warum.
Ich habe sämtlich Verkabelungen abgenommen vom Arduino bis auf die 3 DS1820 (irgendwie musste ich ja überprüfen ob die Verbindung noch funktioniert ::)) leider nichts.
Dann habe ich einen neuen Arduino Mega gekauft und eingebaut. Das gleiche Problem wieder.
Ein Befreundeter Elektriker war da und hat sich das ganze mal angeschaut nicht das ich irgendwelche Kurzschlüsse etc. gebaut habe. Ergebnis alles soweit ok er hat auch keine Ahnung an was es hacken könnte.
Zuvor hatte ich die DS1820 mit 3 Kabeln angeschlossen mit 4,7k zwischen 1-W un 5+ habe ich dann umgebaut auf 2 Kabel ebenfalls mit 4,7k zwischen 1-W und 5+. Die Abstürze bleiben.

Da ich den Arduino mittlerweile per USB angeschlossen habe kann ich ihn zumindest über Fhem Reseten was ich derzeit mit einem AT alle 15 min mache. Das ist aber keine Sinnvolle Lösung, Lampen die an den Relais hängen gehen so alle 15 min mal kurz aus und dann wieder an wegen des Resets. :'(

Kein Ahnung mehr an was es liegen könnte.

Ich hatte noch die Idee das es evtl. an dem Arduino Mega liegen könnte? Ich habe ja noch einen UNO im Einsatz mit DS1820 und ein Paar Relais dran da hatte ich noch nie ein Problem. Deshalb die Frage benutz sonst noch jemand den Mega im Täglichen Einsatz. Vielleicht gibt es ein Problem speziell mit dem Arduino Mega?

Gruß
Markus