Funksensor mit Bosch sensortec BME680 / Luftgüte

Begonnen von juergs, 28 Oktober 2017, 18:05:43

Vorheriges Thema - Nächstes Thema

juergs

#120
Der Einfluss der Luftfeuchte scheint stärker gewichtet zu sein wie den der Temperatur. (CO2, nicht der IAQ-Wert).

juergs


juergs

#122
Nach einigen Versuchen ist mir der Compile für den MapleMini STM32 ARM M3  ebenfalls gelungen:

*** Setup Bosch Maple
*** bsec_iot_init
[2509.00] T: 22.21| rH: 39.76| IAQ: 0.00 (0)
[5509.00] T: 22.22| rH: 39.75| IAQ: 0.00 (0)
[8509.00] T: 22.21| rH: 39.78| IAQ: 0.00 (0)
[11509.00] T: 22.20| rH: 39.78| IAQ: 0.00 (0)


[284509.00] T: 22.35| rH: 39.67| IAQ: 0.00 (0)
[287509.00] T: 22.35| rH: 39.68| IAQ: 0.00 (0)
[290509.00] T: 22.35| rH: 39.69| IAQ: 0.00 (0)
[293509.00] T: 22.35| rH: 39.70| IAQ: 0.00 (0)
[296509.00] T: 22.35| rH: 39.69| IAQ: 0.00 (0)
[299509.00] T: 22.35| rH: 39.68| IAQ: 0.00 (0)
[302509.00] T: 22.34| rH: 39.69| IAQ: 0.00 (0)
[305509.00] T: 22.35| rH: 39.70| IAQ: 25.00 (3)
[308509.00] T: 22.36| rH: 39.68| IAQ: 25.00 (3)
[311509.00] T: 22.35| rH: 39.71| IAQ: 25.00 (3)
[314509.00] T: 22.35| rH: 39.70| IAQ: 25.17 (3)
[317509.00] T: 22.35| rH: 39.70| IAQ: 25.28 (3)
[320509.00] T: 22.35| rH: 39.69| IAQ: 25.31 (3)
[323509.00] T: 22.35| rH: 39.69| IAQ: 25.31 (3)
[326509.00] T: 22.35| rH: 39.67| IAQ: 25.30 (3)
[329509.00] T: 22.35| rH: 39.68| IAQ: 25.38 (3)

[5558509] T: 22.59| rH: 40.09| IAQ: 248.11 (3)
[5561509] T: 22.60| rH: 40.09| IAQ: 247.76 (3)

Dann erwarte ich mal die OLED-Displays...  :)


ZitatC:\Users\<user>\Documents\Arduino\hardware\Arduino_STM32/tools/win/maple_upload.bat COM6 1 1EAF:0003 <path>bme680__BSEC_Bosch_Maple[0x77].ino.bin
I2C1 mit PIN 15 SDA und PIN16 SCL

hdgucken

#123
So, da bin ich mal wieder. Hab einiges geschafft, letzte Woche, mein Sensor läuft, samt Anbindung an FHEM  :D
Protokoll: CustomSensor, sendet auf 868,3 MHz über RFM69CW. Musste "nur" noch das Modul 36_CustomSensor.pm
erstellen  :o Das hat mich doch etwas aufgehalten  :-[ Aber es läuft erstmal. Jetzt kann ich mal ein wenig loggen ...
Anbei mal ein paar Impressionen  8)

Gruß Thomas

P:S: Das Log ist noch "etwas komisch" am Anfang, ist noch vom testen, aber ich wollte es Euch nicht vorenthalten  ;)

hdgucken

So, hier kurz das Log von heute...
Kurz vor sieben gings los, aufstehen. Im Nachbarraum Fenster geöffnet.
Kurz vor acht, Fenster wieder zu. Dann kaum Bewegung im Raum, alle Türen offen.
Von 16 -20 Uhr wieder etwas Bewegung. 20 Uhr dann kurz lüften im Nachbarraum,
diesmal geht der IAQ nach unten ?!

juergs

Hallo hdgucken,

ZitatProtokoll: CustomSensor, sendet auf 868,3 MHz über RFM69CW.
könntest bitte zu Deinem verwendeten Protokoll "CustomSensor" nähere Angaben machen?

Jürgen

hdgucken

#126
Na klar  ;)
Der Aufbau ist so:

OK CC  ID  T1 T2  HH  P1 P2  I1 I2  L1 L2  UB  G1 G2 G3 CRC     

100er + 10er bedeutet linkes Nibble 100er, rechtes Nibble 10er usw. (BCD Code) !

OK CC - fest für CustomSensor Protokoll
ID - Sensor ID (0-FF)
T1 - (Temp + 40 * 10): 100er
T2 - (Temp + 40 * 10): 10er + 1er
HH - humidity 1-99
P1 - pressure = 1000er + 100er                                   
P2 - pressure = 10er + 1er
I1 - IAQ = 100er
I2 - IAQ = 10er + 1er
L1 - LightLevel = 1000er + 100er
L2 - LightLevel = 10er + 1er
UB - BatteryVoltage * 10 = (0-255; 3,3V = 33)
G1 - gas resistance = 100.000er + 10.000er
G2 - gas resistance = 1.000er + 100er
G3 - gas resistance = 10er + 1er
CRC - crc byte

IAQ muss ich evtl. noch auf 100er, 10er und 1er Stelle ändern.
erledigt  ;)

Gruß Thomas

juergs

#127
Neue BSEC LIb ist verfügbar mit weiteren Controller-Libs:
https://www.bosch-sensortec.com/bst/products/all_products/bsec

Inklusive Raspi und 8Bit-AVR-Support:
AVR_8bit AVR-GCC 41k 1k MegaAVR, XMEGA

Z.B. AVR-XMEGA mit Oled:
https://www.element14.com/community/docs/DOC-71436

und Arduino-Integration: Xmegaduino

Hier gibt es weitere Anleitungen  BSEC Library Version 1.4.5.1 vom 16.11.2017:
bme680-mit-nodemcu-an-ttn in LoRaWAN-Ausführung.
uftguetesensor-mit-bme680-und-mh-z14a 

In puncto 8Bit-Controller eine interessante Alternative zur Berechnung/Bewertung des Widerstandwertes ohne BSEC-Lib
unter Einbeziehung von Temperatur und Luftfeuchte: BME680-Example

juergs

Schöne Korrelation zwischen Widerstand-Reading BME und CO2-Wert AMS-iAQ-core.

SusisStrolch

Welche Einheit/Skalierung haben die Werte?
BME in kOhm? Und IAQ-Core?
Synology DS1515+, 16GB RAM, 4x 6TB WD-Red
- Docker (FHEM), MariaDB, MariaDB10, Surveillance Station
Gateways: LCG miniCUL433, LCG miniCUL868, AVR-X4000, VU-Solo SE, Kodi
ESP8266: ESPEasy (S0-Counter, Temp/Hum), Sonoff TH, Sonoff 4ch

hdgucken

Hier meine Aufzeichnung von gestern, die Spitzen sind evtl. "heftige Luftbewegungen" in der Nähe des Sensors,
können aber auch von FHEM Neustarts stammen, bin noch am arbeiten mit "Firmata" und dem ESP8266. Auch nicht ganz unproblematisch  :)

Hab noch ein kleines Problemchen mit der Übertragung beim CC-Protokoll:
Ab und zu gibt es CRC-Fehler. Obwohl mein Sensor wirklich alle Werte korrekt verarbeitet und auch richtig an den RFM69 übergibt, kommen am LGW einige Pakete mit CRC Fehler raus.
Bin schon am suchen, auch im LGW Code, konnte aber bisher nichts verdächtiges finden. Vielleicht gehen Sie ja auch "over the air" verloren.
Aber im großen und ganzen funktioniert es sehr gut.
Wenn jemand Interesse am Quellcode hat, einfach bescheid sagen  ;)

@PeMue: Meine Platinen sind gestern angekommen, vielen Dank !!!

Gruß Thomas

juergs

Hallo Thomas,

"Bescheid"  ;) :D :D :D ;D

Habe mir mal einige RFMs bestellt  ;)

Grüße,
Jürgen

juergs

#132
@SusisStrolch
ich benutze ja OOK mit dem LaCrosse Protokoll zum Übertragen.
Leider bleibt es bei den Wertigkeiten etwas beschränkt, so dass ich die Orginalwerte im Moment duch 10 teilen muss.
Bei Werten über 110 gibt es leider noch ein Problem, das ich noch lösen muss.
Als Alternative wäre auch eine Division durch 100 möglich.

Bem iAq sind es CO2- in ppm, beim BME ist es der Resistance-Wert.
Diese Werte sind start Luftfeuchte und Temepratur-Gradientabhängig, so dass man eigentlich nur bei stabilen Rahmenbedingungen
vernünftige Werte zum Auswerten bekommt. Bei starken Delta-T und -HUMs  müsste man über z.B. Standardabweichung oder Varianz
die starken Schwankungen herausrechnen. Der iAQ nimmt Schwankungen in den Rahmenbedingungen eher etwas länger übel.

Die reinen Absolutwerte sind, meiner Meinung nach, eher von geringerem Interessse, sondern eher die Tendenz (Steigung) und das Erreichen von Schwellwerten.

Mal schauen ob ich das in einen kompakten Sensor packen kann...

Grüße,
Jürgen

hdgucken


juergs

Hallo Thomas,

vielen Dank fürs Teilen.
Bin leider noch in der Warteschleife für die RFMs ....

Grüße,
Jürgen