<html><head></head><body>Das Fehlen und die falschen Werte können auch in der relativ schnellen Wiederabfrage liegen. <br>
Der DHT22 braucht eine gewisse Zeit damit er wieder abgefragt werden kann. Und da weder Temperatur noch Luftfeuchtigkeit sich schnell ändern solltest du mal versuchen nur jede Minute oder noch Länger einen Wert abzufragen. <br>
<br>
Gruß Andre <br><br><div class="gmail_quote">Am 13. August 2015 12:44:13 MESZ, schrieb Christian Schnellrieder <schnellrieder.cs@gmail.com>:<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div dir="ltr">Danke Nils.<div><br /></div><div>Das Puzzle wird nun immer klarer.</div><div><br /></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span style="font-size:12.8000001907349px">Gibt es in Bash die Möglichkeit den Wert zu Validieren?<br /></span><span style="font-size:12.8000001907349px">Also Luftfeuchte mus zwischen 1 und 100 liege und Temperatur zwischen -20 und 50.</span></blockquote><div><br /></div><div><br /></div><div>Ja einfach durch if abfragen.</div><div>Dazu muss man sagen. Bash kann nicht direkt mit Komma umgehen. Also würde ich es einfach rauslöschen bei der Validierung. Aus 58.00 wird dann 5800 etc.</div><div><br /></div><div><br /></div><div><div>if [ "$(echo $Hum| sed 's/\.//g')" -gt "0" ] && [ "$(echo $Hum | sed 's/\.//g')" -lt "10000" ];then</div></div><div>wget  -O
/dev/null "http://<url>middleware.php/data/<id>.json?operation=add&value=$Hum"<br /></div><div>fi</div><div><br /></div><div><br /></div><div><div>if [ "$(echo $Temp | sed 's/\.//g')" -gt "-2000" ] && [ "$(echo $Temp | sed 's/\.//g')" -lt "5000" ];then</div><div><span style="font-size:12.8000001907349px">wget  -O /dev/null "http://<url>/middleware.php/d</span><span style="font-size:12.8000001907349px">ata/<id>.json?operation=add&va</span><span style="font-size:12.8000001907349px">lue=$Temp"</span><br /></div><div>fi</div></div><div><br /></div><div><br /></div><div>Grüße</div><div> </div></div><div class="gmail_extra"><br /><div class="gmail_quote">Am 13. August 2015 um 12:15 schrieb Nils op den Winkel <span dir="ltr"><<a href="mailto:nils@kusemuckl.de" target="_blank">nils@kusemuckl.de</a>></span>:<br /><blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hallo Christian!<div><br /></div><div>Ich bin weder der bash- noch der c- guru. Aber Deiner logdatei entnehme ich, dass du loldht alle 5 Sekunden aufrufst. wenn loldht aber länger als 5 Sekunden braucht, um einen Wert zu bekommen (es wird ja jede sekunde versucht), bricht der zweite Aufruf ab.Ich denke, deine Fehlenden Werte kommen, wenn loldht eigentlich "Lock file is in use, exiting..." ausgibt (dann liefert dein grep natürlich nix)<br />Die falschen Werte erklärt das aber nicht.<br /></div><div><br /></div><div>Du kannst ja dein Skript mal umbauen indem du </div><div>a) prüfst, ob loldht noch läuft, bevor du es ein zweites mal aufrufst</div><div>b) den Rückgabewert von loldht prüfst (nur bei 0 hat er ein Ergebnis geliefert)</div><div>c) im Fehlerfall die komplette Ausgabe (oder zumindest die letzte Zeile oder so) in die Logdatei schreibst.</div><div><br /></div><div>Viel Erfolg</div><div><br
/></div><div>Nils</div><div><br /></div>​</div>
</blockquote></div><br /></div>
</blockquote></div><br>
-- <br>
Diese Nachricht wurde von meinem Android-Mobiltelefon mit K-9 Mail gesendet.</body></html>