[vz-users] DHT22 Bash Script optimieren

Christian Schnellrieder schnellrieder.cs at gmail.com
Fri Aug 14 12:49:30 CEST 2015


>
> ich hab leider einen BUG dabei,
> * keine Zeilenumbrüche.*Kann das mal jemand fixen?
> mir wäre wichtig das das für die Nachwelt dokumentiert wird.


Hallo.

Hab deine Code Zeilen mit <code> und </code> auskommentiert.

Grüße

Am 14. August 2015 um 12:30 schrieb Andreas Götz <cpuidle at gmail.com>:

> Evtl brauchst Du zwei Umbrüche damit einer raus kommt?
>
> Viele Grüße,
> Andreas
>
> Am 14.08.2015 um 10:55 schrieb Christian Meckler <christian at meckler.org>:
>
> Hallo zusammen,
>
> also das Script wird nur 1 Mal pro Stunde ausgeführt, zum Test hatte ich
> es alle 5 Minuten ausgeführt.
> Dabei gab es tatsächlich Probleme das das alte Script noch nicht fertig
> war und das nächste schon anfing.
> Werde irgendwann bei Gelegenheit mal das Oszi anschließen um mal zu
> zuschauen was aufm Bus los ist.
> vermutlich falscher PullUp widerstand oder schlechte Lötstellen...
>
> auf jedenfall bin ich bisher zufrieden.
> Mit der Validierung gibt es keine utopische 1000°C mehr in der DB.
> hab direkt einen Thread im WIKI erstellt:
>
> *http://wiki.volkszaehler.org/dht22 <http://wiki.volkszaehler.org/dht22>*
>
> Ich hab leider einen BUG dabei,* keine Zeilenumbrüche.*
> Kann das mal jemand fixen?
> mir wäre wichtig das das für die Nachwelt dokumentiert wird.
>
> Gruß
> Chris
> und Danke an alle für die Unterstützung.
>
>
> Am 13.08.2015 um 14:33 schrieb Viper:
>
> Das Fehlen und die falschen Werte können auch in der relativ schnellen
> Wiederabfrage liegen.
> 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.
>
> Gruß Andre
>
> Am 13. August 2015 12:44:13 MESZ, schrieb Christian Schnellrieder
> <schnellrieder.cs at gmail.com> <schnellrieder.cs at gmail.com>:
>>
>> Danke Nils.
>>
>> Das Puzzle wird nun immer klarer.
>>
>> Gibt es in Bash die Möglichkeit den Wert zu Validieren?
>>> Also Luftfeuchte mus zwischen 1 und 100 liege und Temperatur zwischen
>>> -20 und 50.
>>
>>
>>
>> Ja einfach durch if abfragen.
>> 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.
>>
>>
>> if [ "$(echo $Hum| sed 's/\.//g')" -gt "0" ] && [ "$(echo $Hum | sed
>> 's/\.//g')" -lt "10000" ];then
>> wget  -O /dev/null "http://
>> <url>middleware.php/data/<id>.json?operation=add&value=$Hum"
>> fi
>>
>>
>> if [ "$(echo $Temp | sed 's/\.//g')" -gt "-2000" ] && [ "$(echo $Temp |
>> sed 's/\.//g')" -lt "5000" ];then
>> wget  -O /dev/null "http://<url>/middleware.php/d
>> ata/<id>.json?operation=add&value=$Temp"
>> fi
>>
>>
>> Grüße
>>
>>
>> Am 13. August 2015 um 12:15 schrieb Nils op den Winkel <nils at kusemuckl.de
>> >:
>>
>>> Hallo Christian!
>>>
>>> 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)
>>> Die falschen Werte erklärt das aber nicht.
>>>
>>> Du kannst ja dein Skript mal umbauen indem du
>>> a) prüfst, ob loldht noch läuft, bevor du es ein zweites mal aufrufst
>>> b) den Rückgabewert von loldht prüfst (nur bei 0 hat er ein Ergebnis
>>> geliefert)
>>> c) im Fehlerfall die komplette Ausgabe (oder zumindest die letzte Zeile
>>> oder so) in die Logdatei schreibst.
>>>
>>> Viel Erfolg
>>> *Nils*
>>>
>>> *​*
>>>
>>
>>
>
> * -- Diese Nachricht wurde von meinem Android-Mobiltelefon mit K-9 Mail
> gesendet. *
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20150814/272bfa61/attachment-0001.html>


More information about the volkszaehler-users mailing list