Feinstaubsensor bauen (luftdaten.info)

Begonnen von igami, 08 Februar 2017, 06:23:27

Vorheriges Thema - Nächstes Thema

Frank_Huber

Ja, ging dann auch wieder.

Verbindung abgelehnt war imho noch nie. "normale" Störungen zeigen nur "Server offline"

ABer alles wieder OK. ;-)

igami

Zitat von: svlsbrg am 07 Juli 2018, 12:30:32
scheinbar müsste man dann 2 Devices anlegen, oder? Ich finde diese Variante nicht sehr intuitiv.
Was spricht gegen die Lösung, die anderen Sensoren sauber als eigene readings anzulegen?
Es gibt noch eine Variante, die allerdings nicht dokumenter ist (muss ich noch nachholen). Setz das Attribut rawReading auf 1.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

zgadgeter

Zitat von: reibuehl am 02 April 2017, 19:16:25
Das State Attribut könnte meiner Meinung nach etwas "informativer" gestaltet werden. Ich hab es bei mir mal über das Attribut stateFormat abgeändert:

state = {sprintf("PM10: %.1f µg/m³ / ",ReadingsVal("Feinstaub","PM10",0)).sprintf("PM2.5: %.1f µg/m³ / ",ReadingsVal("Feinstaub","PM2.5",0)).sprintf("Temp: %.1f °C / ",ReadingsVal("Feinstaub","temperature",0)).sprintf("Hum: %.1f %%", ReadingsVal("Feinstaub","humidity",0))}

Damit sieht der State des Device dann so aus:

PM10: 17.0 µg/m³ / PM2.5: 15.3 µg/m³ / Temp: 16.5 °C / Hum: 57.6 %
Irgendwie bekomme ich es nicht hin das im State meine Temp und Hum gezeight wird.  Meins sieht so aus:

STATE     PM10: 20.5 µg/m³ / PM2.5: 11.2 µg/m³ / Temp: 0.0 °C / Hum: 0.0 %

Mein stateFormat sieht so aus:
{sprintf("PM10: %.1f µg/m³ / ",ReadingsVal("SDS011","pm100",0)).sprintf("PM2.5: %.1f µg/m³ / ",ReadingsVal("SDS011","pm25",0)
NUC FHEM mit vielen Intertechno/FS20/Flamingo schalter
und Busware CUL und nanoCUL

igami

Zitat von: zgadgeter am 04 August 2018, 17:42:22
Mein stateFormat sieht so aus:
Das ist anscheinend nicht vollständig.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

rcmcronny

#439
Hi Igami,

ich habe meinen Sensor local angebunden, ich bekomme nun sehr oft (<90%der Fälle der Abfragen) ein error, log zeigt:


2018.08.04 20:46:27 2: LuftdatenInfo (luftdatensensor1) - error while request: read from http://x.x.x.x:80 timed out
2018.08.04 21:06:05 2: LuftdatenInfo (luftdatensensor1) - error while request: http://x.x.x.x/data.json: empty answer received


Allerdings kann ich per SSH Shell und wget problemlos im 20sekunden takt die json Daten abrufen, es gibt nie ein timeout oder eine leere Antwort, hast Du eine Idee, was die Ursache hier sein könnte ?
Ich hatte die Definitionen alle entfernt und neu eingegeben, hat aber nichts gebracht.

Danke Ronny


Internals:
   ADDRESS    x.x.x.x
   CFGFN     
   DEF        local x.x.x.x
   INTERVAL   300
   MODE       local
   NAME       luftdatensensor1
   NR         164
   STATE      PM10: 0.00 µg/m³ / PM2.5: 0.00 µg/m³ / Temp: 0.00 °C / Hum: 0.00 %
   TIMEOUT    5
   TYPE       LuftdatenInfo
   READINGS:
     2018-08-04 21:05:04   PM10            12.03
     2018-08-04 21:05:04   PM2.5           11.23
     2018-08-04 21:05:04   humidity        37.10
     2018-08-04 21:05:04   signal          -81
     2018-08-04 16:32:46   softwareVersion NRZ-2018-103
     2018-08-04 21:07:05   state           error
     2018-08-04 21:05:04   temperature     32.50
Attributes:
   disable    0
   room       diverses2
   stateFormat {sprintf("PM10: %.2f µg/m³ / ",ReadingsVal("Feinstaub","PM10",0)).sprintf("PM2.5: %.2f µg/m³ / ",ReadingsVal("Feinstaub","PM2.5",0)).sprintf("Temp: %.2f °C / ",ReadingsVal("Feinstaub","temperature",0)).sprintf("Hum: %.2f %%", ReadingsVal("Feinstaub","humidity",0))}


Verbose 5 sagt nur:

2018.08.04 21:17:07 5: LuftdatenInfo (luftdatensensor1) - entering LuftdatenInfo_statusRequest
2018.08.04 21:17:07 5: LuftdatenInfo (luftdatensensor1) - entering LuftdatenInfo_GetHttpResponse
2018.08.04 21:17:09 5: LuftdatenInfo (luftdatensensor1) - entering LuftdatenInfo_ParseHttpResponse
2018.08.04 21:17:09 2: LuftdatenInfo (luftdatensensor1) - error while request: http://x.x.x.x/data.json: empty answer received

igami

Zitat von: rcmcronny am 04 August 2018, 21:16:15
hast Du eine Idee, was die Ursache hier sein könnte ?
Leider nein. Du könntest ja mal ein Presence auf den Feinstaubsensor definieren und schauen ob er da auch mal weg ist.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

rcmcronny

Schade,

PRESENCE ist definiert, das ist und bleibt aber bei present

Ich hab es nun mal auf den lokalen Intranet server umgebogen und der holt die Datei vom Sensor, mal gucken, wie sich das so verhält.
Sie bisher aber 1a aus, keine Fehler.

Könnte man bei verb 5 nicht noch das http get zeugs mit ausgeben, vielleicht sieht man da mehr infos ?

Ronny

zgadgeter

Zitat von: igami am 04 August 2018, 20:14:44
Das ist anscheinend nicht vollständig.
Ja, stimmt, sorry, hier nochmal:
{sprintf("PM10: %.1f µg/m³ / ",ReadingsVal("SDS011","pm100",0)).sprintf("PM2.5: %.1f µg/m³ / ",ReadingsVal("SDS011","pm25",0)).sprintf("Temp: %.1f °C / ",ReadingsVal("SDS011","temperature",0)).sprintf("Hum: %.1f %%", ReadingsVal("SDS011","humidity",0))}
Ich komme selbst nicht auf den fehler, bin aber nicht erfahren hier.
NUC FHEM mit vielen Intertechno/FS20/Flamingo schalter
und Busware CUL und nanoCUL

Gernott

Zitat von: rcmcronny am 04 August 2018, 21:16:15
Hi Igami,

ich habe meinen Sensor local angebunden, ich bekomme nun sehr oft (<90%der Fälle der Abfragen) ein error, log zeigt:


2018.08.04 20:46:27 2: LuftdatenInfo (luftdatensensor1) - error while request: read from http://x.x.x.x:80 timed out
2018.08.04 21:06:05 2: LuftdatenInfo (luftdatensensor1) - error while request: http://x.x.x.x/data.json: empty answer received


Ich glaube zwar nicht, daß es daran liegt, aber setze mal den Timeout auf 10. Standard ist 5 Sekunden.
Ich vermute eher ein WLAN-Problem

igami

Zitat von: Gernott am 05 August 2018, 12:57:07
Ich glaube zwar nicht, daß es daran liegt, aber setze mal den Timeout auf 10. Standard ist 5 Sekunden.
Ich vermute eher ein WLAN-Problem
Wenn das ein "häufigeres" Problem ist werde ich den Standard auf 10 Sekunden anheben.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

igami

Zitat von: zgadgeter am 05 August 2018, 09:58:24
Ich komme selbst nicht auf den fehler, bin aber nicht erfahren hier.
Sieht für mich soweit ganz gut aus, nur dass das device SDS011 keine temperature und humidity Readings hat. Poste doch mal bitte ein list von dem device.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

zgadgeter

Zitat von: igami am 05 August 2018, 17:02:00Poste doch mal bitte ein list von dem device.
Hallo, anbei ein list von dem device:
Internals:
   BUSY       0
   DEF        http://192.168.178.46/data.json 60
   Interval   60
   LASTSEND   1533481602.77883
   MainURL    http://192.168.178.46/data.json
   ModuleVersion 3.5.1 - 5.7.2018
   NAME       SDS011
   NR         222
   STATE      PM10: 20.5 µg/m³ / PM2.5: 11.2 µg/m³ / Temp: 0.0 °C / Hum: 0.0 %
   TRIGGERTIME 1533481662.77707
   TRIGGERTIME_FMT 2018-08-05 17:07:42
   TYPE       HTTPMOD
   addr       http://192.168.178.46:80
   auth       0
   buf       
   code       404
   compress   1
   conn       
   data       
   displayurl http://192.168.178.46/data.json
   header     Content-Type: application/json
   host       192.168.178.46
   httpheader HTTP/1.0 404 Not Found
Content-Type: text/html
Content-Length: 345
Connection: close
Date: Sat, 18 Oct 2014 04:13:14 GMT
Server: lighttpd/1.4.32
   httpversion 1.0
   hu_blocking 0
   hu_filecount 148
   hu_port    80
   hu_portSfx
   ignoreredirects 0
   loglevel   4
   path       /data.json
   protocol   http
   redirects  0
   timeout    2
   url        http://192.168.178.46/data.json
   value      0
   QUEUE:
   READINGS:
     2017-12-19 15:38:29   pm100           20.47
     2017-12-19 15:38:29   pm25            11.17
     2018-08-05 17:06:42   relpressure     25.7
     2017-12-19 15:38:29   software_version NRZ-2017-099
   REQUEST:
     data       
     header     Content-Type: application/json
     ignoreredirects 0
     retryCount 0
     type       update
     url        http://192.168.178.46/data.json
     value      0
   sslargs:
Attributes:
   reading01Name temperature
   reading01Regex "temperature","value":"(0|\d*\.\d+)"}.*
   reading02Name humidity
   reading02Regex "humidity","value":"(0|\d*\.\d+)"}.*
   reading03Name BMP_temperature
   reading03Regex "BMP_temperature","value":"(0|\d*\.\d+)"}.*
   reading04Name BMP_abs_pressure
   reading04Regex "BMP_pressure","value":"(0|\d*+)"}.*
   reading05Name software_version
   reading05Regex "software_version": "(.*?)".*
   reading06Name pm100
   reading06Regex "SDS_P1","value":"(0|\d*\.\d+)"}.*
   reading07Name pm25
   reading07Regex "SDS_P2","value":"(0|\d*\.\d+)"}.*
   requestHeader Content-Type: application/json
   room       LivingRoom,Wetter
   stateFormat {sprintf("PM10: %.1f µg/m³ / ",ReadingsVal("SDS011","pm100",0)).sprintf("PM2.5: %.1f µg/m³ / ",ReadingsVal("SDS011","pm25",0)).sprintf("Temp: %.1f °C / ",ReadingsVal("SDS011","temperature",0)).sprintf("Hum: %.1f %%", ReadingsVal("SDS011","humidity",0))}
   userReadings relpressure { ReadingsVal("SDS011","BMP_abs_pressure",0)/100+25.7; }
   userattr   reading01Name reading01Regex reading02Name reading02Regex reading03Name reading03Regex reading04Name reading04Regex reading05Name reading05Regex reading06Name reading06Regex reading07Name reading07Regex requestHeader stateFormat
   verbose    1
NUC FHEM mit vielen Intertechno/FS20/Flamingo schalter
und Busware CUL und nanoCUL

igami

Zitat von: zgadgeter am 05 August 2018, 17:09:25
Hallo, anbei ein list von dem device:
Wenn du weiterhin HTTPMOD verwenden willst, beschreibe dein Problem in dem entsprechenden Forumsbereich. Ansonsten stell doch einfach auf das Modul LuftdatenInfo um ;)

define SDS011 LuftdatenInfo local 192.168.178.46

State Format kannst du dann so übernehmen.
Ansonsten ist es wie vermutet: dein Device hat keine temperature und humidity readings.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

zgadgeter

Zitat von: igami am 05 August 2018, 17:24:43
Wenn du weiterhin HTTPMOD verwenden willst, beschreibe dein Problem in dem entsprechenden Forumsbereich. Ansonsten stell doch einfach auf das Modul LuftdatenInfo um ;)

define SDS011 LuftdatenInfo local 192.168.178.46

State Format kannst du dann so übernehmen.
Ansonsten ist es wie vermutet: dein Device hat keine temperature und humidity readings.
Hi, und danke, ich probiere das mit dem Umstellen gleich. Aber anbei ist ein Screenshot von dem Device. Das ist Temp/Hum drauf...??
NUC FHEM mit vielen Intertechno/FS20/Flamingo schalter
und Busware CUL und nanoCUL

igami

Zitat von: zgadgeter am 05 August 2018, 17:27:06
Das ist Temp/Hum drauf...??
Ja, da hast du einen Temp/Hum Sensor, der wird vom LuftdatenInfo Moudul automatisch erkannt.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED