diff --git a/_weather_sensor_8h_source.html b/_weather_sensor_8h_source.html
index 7ddea10..6a109c0 100644
--- a/_weather_sensor_8h_source.html
+++ b/_weather_sensor_8h_source.html
@@ -166,377 +166,379 @@
-
-
-
-
-
- 88 #ifndef WeatherSensor_h
- 89 #define WeatherSensor_h
-
-
-
-
- 94 #include <Preferences.h>
-
-
+
+
+
+
+
+
+ 89 #ifndef WeatherSensor_h
+ 90 #define WeatherSensor_h
+
+
+
+
+ 95 #include <Preferences.h>
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 112 #define SENSOR_TYPE_WEATHER0 0
- 113 #define SENSOR_TYPE_WEATHER1 1
- 114 #define SENSOR_TYPE_THERMO_HYGRO 2
- 115 #define SENSOR_TYPE_POOL_THERMO 3
- 116 #define SENSOR_TYPE_SOIL 4
- 117 #define SENSOR_TYPE_LEAKAGE 5
- 118 #define SENSOR_TYPE_AIR_PM 8
- 119 #define SENSOR_TYPE_RAIN 9
- 120 #define SENSOR_TYPE_LIGHTNING 9
- 121 #define SENSOR_TYPE_CO2 10
- 122 #define SENSOR_TYPE_HCHO_VOC 11
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 113 #define SENSOR_TYPE_WEATHER0 0
+ 114 #define SENSOR_TYPE_WEATHER1 1
+ 115 #define SENSOR_TYPE_THERMO_HYGRO 2
+ 116 #define SENSOR_TYPE_POOL_THERMO 3
+ 117 #define SENSOR_TYPE_SOIL 4
+ 118 #define SENSOR_TYPE_LEAKAGE 5
+ 119 #define SENSOR_TYPE_AIR_PM 8
+ 120 #define SENSOR_TYPE_RAIN 9
+ 121 #define SENSOR_TYPE_LIGHTNING 9
+ 122 #define SENSOR_TYPE_CO2 10
+ 123 #define SENSOR_TYPE_HCHO_VOC 11
-
- 126 #define WEATHER0_RAIN_OV 1000
- 127 #define WEATHER1_RAIN_OV 100000
-
+
+
+ 127 #define WEATHER0_RAIN_OV 1000
+ 128 #define WEATHER1_RAIN_OV 100000
-
- 131 #define DATA_COMPLETE 0x1
- 132 #define DATA_TYPE 0x2
- 133 #define DATA_ALL_SLOTS 0x8
-
-
- 136 #define DECODER_5IN1 0x01
- 137 #define DECODER_6IN1 0x02
- 138 #define DECODER_7IN1 0x04
- 139 #define DECODER_LIGHTNING 0x08
- 140 #define DECODER_LEAKAGE 0x10
-
-
- 143 #define MSG_BUF_SIZE 27
-
-
- 146 typedef enum DecodeStatus {
- 147 DECODE_INVALID, DECODE_OK, DECODE_PAR_ERR, DECODE_CHK_ERR, DECODE_DIG_ERR, DECODE_SKIP, DECODE_FULL
-
-
+
+
+ 132 #define DATA_COMPLETE 0x1
+ 133 #define DATA_TYPE 0x2
+ 134 #define DATA_ALL_SLOTS 0x8
+
+
+ 137 #define DECODER_5IN1 0x01
+ 138 #define DECODER_6IN1 0x02
+ 139 #define DECODER_7IN1 0x04
+ 140 #define DECODER_LIGHTNING 0x08
+ 141 #define DECODER_LEAKAGE 0x10
+
+
+ 144 #define MSG_BUF_SIZE 27
+
+
+ 147 typedef enum DecodeStatus {
+ 148 DECODE_INVALID, DECODE_OK, DECODE_PAR_ERR, DECODE_CHK_ERR, DECODE_DIG_ERR, DECODE_SKIP, DECODE_FULL
+
-
-
-
-
-
+
+
+
+
+
-
-
- 171 Preferences cfgPrefs;
- 172 std::vector<uint32_t> sensor_ids_inc;
- 173 std::vector<uint32_t> sensor_ids_exc;
-
-
-
-
-
-
-
-
- 209 bool getData(uint32_t timeout, uint8_t flags = 0, uint8_t type = 0,
void (*func)() = NULL);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 240 #ifdef WIND_DATA_FLOATINGPOINT
- 241 float wind_direction_deg = 0.0;
- 242 float wind_gust_meter_sec = 0.0;
- 243 float wind_avg_meter_sec = 0.0;
-
- 245 #ifdef WIND_DATA_FIXEDPOINT
-
-
-
- 249 uint16_t wind_direction_deg_fp1 = 0;
- 250 uint16_t wind_gust_meter_sec_fp1 = 0;
- 251 uint16_t wind_avg_meter_sec_fp1 = 0;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+ 172 Preferences cfgPrefs;
+ 173 std::vector<uint32_t> sensor_ids_inc;
+ 174 std::vector<uint32_t> sensor_ids_exc;
+ 175 uint8_t maxSensorsDefault;
+
+
+ 183 int16_t
begin(uint8_t max_sensors_default = MAX_SENSORS_DEFAULT);
+
+
+
+
+
+ 211 bool getData(uint32_t timeout, uint8_t flags = 0, uint8_t type = 0,
void (*func)() = NULL);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 242 #ifdef WIND_DATA_FLOATINGPOINT
+ 243 float wind_direction_deg = 0.0;
+ 244 float wind_gust_meter_sec = 0.0;
+ 245 float wind_avg_meter_sec = 0.0;
+
+ 247 #ifdef WIND_DATA_FIXEDPOINT
+
+
+
+ 251 uint16_t wind_direction_deg_fp1 = 0;
+ 252 uint16_t wind_gust_meter_sec_fp1 = 0;
+ 253 uint16_t wind_avg_meter_sec_fp1 = 0;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 320 #pragma GCC diagnostic push
- 321 #pragma GCC diagnostic ignored "-Wclass-memaccess"
- 322 memset(
this, 0,
sizeof(*
this));
- 323 #pragma GCC diagnostic pop
-
-
-
-
-
-
-
-
-
- 338 bool genMessage(
int i, uint32_t
id = 0xff, uint8_t s_type = 1, uint8_t channel = 0, uint8_t startup = 0);
-
-
-
-
- 351 for (
size_t i=0; i<
sensor.size(); i++) {
- 352 if ((type == 0xFF) || (
sensor[i].s_type == type)) {
-
- 354 sensor[i].complete =
false;
-
- 356 if (
sensor[i].s_type == SENSOR_TYPE_WEATHER1) {
- 357 sensor[i].w.temp_ok =
false;
- 358 sensor[i].w.humidity_ok =
false;
- 359 sensor[i].w.light_ok =
false;
- 360 sensor[i].w.uv_ok =
false;
- 361 sensor[i].w.wind_ok =
false;
- 362 sensor[i].w.rain_ok =
false;
-
-
-
-
-
-
-
- 385 int findType(uint8_t type, uint8_t channel = 0xFF);
-
-
-
-
-
- 410 void setSensorsCfg(uint8_t max_sensors, uint8_t rx_flags, uint8_t en_decoders = 0xFF);
-
-
-
-
-
- 437 void getSensorsCfg(uint8_t &max_sensors, uint8_t &rx_flags, uint8_t &en_decoders);
-
-
- 440 struct Sensor *pData;
-
- 451 void initList(std::vector<uint32_t> &list,
const std::vector<uint32_t> list_def,
const char *key);
-
- 470 int findSlot(uint32_t
id, DecodeStatus * status);
-
-
- 473 #ifdef BRESSER_5_IN_1
- 483 DecodeStatus decodeBresser5In1Payload(
const uint8_t *msg, uint8_t msgSize);
-
- 485 #ifdef BRESSER_6_IN_1
- 497 DecodeStatus decodeBresser6In1Payload(
const uint8_t *msg, uint8_t msgSize);
-
- 499 #ifdef BRESSER_7_IN_1
- 509 DecodeStatus decodeBresser7In1Payload(
const uint8_t *msg, uint8_t msgSize);
-
- 511 #ifdef BRESSER_LIGHTNING
- 521 DecodeStatus decodeBresserLightningPayload(
const uint8_t *msg, uint8_t msgSize);
-
- 523 #ifdef BRESSER_LEAKAGE
- 533 DecodeStatus decodeBresserLeakagePayload(
const uint8_t *msg, uint8_t msgSize);
-
-
-
- 540 uint16_t lfsr_digest16(uint8_t
const message[],
unsigned bytes, uint16_t gen, uint16_t key);
-
- 550 int add_bytes(uint8_t
const message[],
unsigned num_bytes);
-
- 562 uint16_t crc16(uint8_t
const message[],
unsigned nBytes, uint16_t polynomial, uint16_t init);
-
- 564 #if CORE_DEBUG_LEVEL >= ARDUHAL_LOG_LEVEL_DEBUG
- 576 void log_message(
const char *descr,
const uint8_t *msg, uint8_t msgSize) {
-
- 578 const char txt[] =
"Byte #: ";
-
- 580 int len1 = strlen(txt);
- 581 int len2 = strlen(descr) + 2;
- 582 int prefix_len = max(len1, len2);
-
- 584 memset(buf,
' ', prefix_len);
- 585 buf[prefix_len] =
'\0';
- 586 offs = (len1 < len2) ? (len2 - len1) : 0;
- 587 strcpy(&buf[offs], txt);
-
-
- 590 for (
size_t i = 0 ; i < msgSize; i++) {
- 591 sprintf(&buf[strlen(buf)],
"%02d ", i);
-
-
-
- 595 memset(buf,
' ', prefix_len);
- 596 buf[prefix_len] =
'\0';
- 597 offs = (len1 > len2) ? (len1 - len2) : 0;
- 598 sprintf(&buf[offs],
"%s: ", descr);
-
- 600 for (
size_t i = 0 ; i < msgSize; i++) {
- 601 sprintf(&buf[strlen(buf)],
"%02X ", msg[i]);
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 322 #pragma GCC diagnostic push
+ 323 #pragma GCC diagnostic ignored "-Wclass-memaccess"
+ 324 memset(
this, 0,
sizeof(*
this));
+ 325 #pragma GCC diagnostic pop
+
+
+
+
+
+
+
+
+
+ 340 bool genMessage(
int i, uint32_t
id = 0xff, uint8_t s_type = 1, uint8_t channel = 0, uint8_t startup = 0);
+
+
+
+
+ 353 for (
size_t i=0; i<
sensor.size(); i++) {
+ 354 if ((type == 0xFF) || (
sensor[i].s_type == type)) {
+
+ 356 sensor[i].complete =
false;
+
+ 358 if (
sensor[i].s_type == SENSOR_TYPE_WEATHER1) {
+ 359 sensor[i].w.temp_ok =
false;
+ 360 sensor[i].w.humidity_ok =
false;
+ 361 sensor[i].w.light_ok =
false;
+ 362 sensor[i].w.uv_ok =
false;
+ 363 sensor[i].w.wind_ok =
false;
+ 364 sensor[i].w.rain_ok =
false;
+
+
+
+
+
+
+
+ 387 int findType(uint8_t type, uint8_t channel = 0xFF);
+
+
+
+
+
+ 412 void setSensorsCfg(uint8_t max_sensors, uint8_t rx_flags, uint8_t en_decoders = 0xFF);
+
+
+
+
+
+ 439 void getSensorsCfg(uint8_t &max_sensors, uint8_t &rx_flags, uint8_t &en_decoders);
+
+
+ 442 struct Sensor *pData;
+
+ 453 void initList(std::vector<uint32_t> &list,
const std::vector<uint32_t> list_def,
const char *key);
+
+ 472 int findSlot(uint32_t
id, DecodeStatus * status);
+
+
+ 475 #ifdef BRESSER_5_IN_1
+ 485 DecodeStatus decodeBresser5In1Payload(
const uint8_t *msg, uint8_t msgSize);
+
+ 487 #ifdef BRESSER_6_IN_1
+ 499 DecodeStatus decodeBresser6In1Payload(
const uint8_t *msg, uint8_t msgSize);
+
+ 501 #ifdef BRESSER_7_IN_1
+ 511 DecodeStatus decodeBresser7In1Payload(
const uint8_t *msg, uint8_t msgSize);
+
+ 513 #ifdef BRESSER_LIGHTNING
+ 523 DecodeStatus decodeBresserLightningPayload(
const uint8_t *msg, uint8_t msgSize);
+
+ 525 #ifdef BRESSER_LEAKAGE
+ 535 DecodeStatus decodeBresserLeakagePayload(
const uint8_t *msg, uint8_t msgSize);
+
+
+
+ 542 uint16_t lfsr_digest16(uint8_t
const message[],
unsigned bytes, uint16_t gen, uint16_t key);
+
+ 552 int add_bytes(uint8_t
const message[],
unsigned num_bytes);
+
+ 564 uint16_t crc16(uint8_t
const message[],
unsigned nBytes, uint16_t polynomial, uint16_t init);
+
+ 566 #if CORE_DEBUG_LEVEL >= ARDUHAL_LOG_LEVEL_DEBUG
+ 578 void log_message(
const char *descr,
const uint8_t *msg, uint8_t msgSize) {
+
+ 580 const char txt[] =
"Byte #: ";
+
+ 582 int len1 = strlen(txt);
+ 583 int len2 = strlen(descr) + 2;
+ 584 int prefix_len = max(len1, len2);
+
+ 586 memset(buf,
' ', prefix_len);
+ 587 buf[prefix_len] =
'\0';
+ 588 offs = (len1 < len2) ? (len2 - len1) : 0;
+ 589 strcpy(&buf[offs], txt);
+
+
+ 592 for (
size_t i = 0 ; i < msgSize; i++) {
+ 593 sprintf(&buf[strlen(buf)],
"%02d ", i);
+
+
+
+ 597 memset(buf,
' ', prefix_len);
+ 598 buf[prefix_len] =
'\0';
+ 599 offs = (len1 > len2) ? (len1 - len2) : 0;
+ 600 sprintf(&buf[offs],
"%s: ", descr);
+
+ 602 for (
size_t i = 0 ; i < msgSize; i++) {
+ 603 sprintf(&buf[strlen(buf)],
"%02X ", msg[i]);
+
+
+
+
-
-Receive, decode and store Bresser Weather Sensor Data Uses CC1101 or SX1276 radio module for receivin...
Definition: WeatherSensor.h:169
-DecodeStatus getMessage(void)
Tries to receive radio message (non-blocking) and to decode it. Timeout occurs after a multitude of e...
Definition: WeatherSensor.cpp:317
-int findId(uint32_t id)
Definition: WeatherSensor.cpp:427
-void radioReset(void)
Reset radio transceiver.
Definition: WeatherSensor.cpp:233
-uint8_t rxFlags
receive flags (see getData())
Definition: WeatherSensor.h:330
-float rssi
received signal strength indicator in dBm
Definition: WeatherSensor.h:329
-void getSensorsCfg(uint8_t &max_sensors, uint8_t &rx_flags, uint8_t &en_decoders)
Definition: WeatherSensorConfig.cpp:179
-bool getData(uint32_t timeout, uint8_t flags=0, uint8_t type=0, void(*func)()=NULL)
Wait for reception of data or occurrance of timeout. With BRESSER_6_IN_1, data is distributed across ...
Definition: WeatherSensor.cpp:243
-void setSensorsCfg(uint8_t max_sensors, uint8_t rx_flags, uint8_t en_decoders=0xFF)
Definition: WeatherSensorConfig.cpp:163
-uint8_t enDecoders
enabled Decoders
Definition: WeatherSensor.h:331
-void sleep(void)
Set transceiver into sleep mode.
Definition: WeatherSensor.cpp:238
-int16_t begin(void)
Presence check and initialization of radio module.
Definition: WeatherSensor.cpp:136
-int findType(uint8_t type, uint8_t channel=0xFF)
Definition: WeatherSensor.cpp:440
-uint8_t getSensorsInc(uint8_t *payload)
Definition: WeatherSensorConfig.cpp:116
-bool genMessage(int i, uint32_t id=0xff, uint8_t s_type=1, uint8_t channel=0, uint8_t startup=0)
Generates data otherwise received and decoded from a radio message.
Definition: WeatherSensor.cpp:369
-struct Sensor sensor_t
Shortcut for struct Sensor.
Definition: WeatherSensor.h:327
-std::vector< sensor_t > sensor
sensor data array
Definition: WeatherSensor.h:328
-void setSensorsInc(uint8_t *bytes, uint8_t size)
Definition: WeatherSensorConfig.cpp:93
-uint8_t getSensorsExc(uint8_t *payload)
Definition: WeatherSensorConfig.cpp:151
-void clearSlots(uint8_t type=0xFF)
Clear sensor data.
Definition: WeatherSensor.h:349
+
+
+
+Receive, decode and store Bresser Weather Sensor Data Uses CC1101 or SX1276 radio module for receivin...
Definition: WeatherSensor.h:170
+DecodeStatus getMessage(void)
Tries to receive radio message (non-blocking) and to decode it. Timeout occurs after a multitude of e...
Definition: WeatherSensor.cpp:319
+int findId(uint32_t id)
Definition: WeatherSensor.cpp:429
+void radioReset(void)
Reset radio transceiver.
Definition: WeatherSensor.cpp:235
+uint8_t rxFlags
receive flags (see getData())
Definition: WeatherSensor.h:332
+float rssi
received signal strength indicator in dBm
Definition: WeatherSensor.h:331
+void getSensorsCfg(uint8_t &max_sensors, uint8_t &rx_flags, uint8_t &en_decoders)
Definition: WeatherSensorConfig.cpp:180
+bool getData(uint32_t timeout, uint8_t flags=0, uint8_t type=0, void(*func)()=NULL)
Wait for reception of data or occurrance of timeout. With BRESSER_6_IN_1, data is distributed across ...
Definition: WeatherSensor.cpp:245
+void setSensorsCfg(uint8_t max_sensors, uint8_t rx_flags, uint8_t en_decoders=0xFF)
Definition: WeatherSensorConfig.cpp:164
+uint8_t enDecoders
enabled Decoders
Definition: WeatherSensor.h:333
+int16_t begin(uint8_t max_sensors_default=MAX_SENSORS_DEFAULT)
Presence check and initialization of radio module.
Definition: WeatherSensor.cpp:137
+void sleep(void)
Set transceiver into sleep mode.
Definition: WeatherSensor.cpp:240
+int findType(uint8_t type, uint8_t channel=0xFF)
Definition: WeatherSensor.cpp:442
+uint8_t getSensorsInc(uint8_t *payload)
Definition: WeatherSensorConfig.cpp:117
+bool genMessage(int i, uint32_t id=0xff, uint8_t s_type=1, uint8_t channel=0, uint8_t startup=0)
Generates data otherwise received and decoded from a radio message.
Definition: WeatherSensor.cpp:371
+struct Sensor sensor_t
Shortcut for struct Sensor.
Definition: WeatherSensor.h:329
+std::vector< sensor_t > sensor
sensor data array
Definition: WeatherSensor.h:330
+void setSensorsInc(uint8_t *bytes, uint8_t size)
Definition: WeatherSensorConfig.cpp:94
+uint8_t getSensorsExc(uint8_t *payload)
Definition: WeatherSensorConfig.cpp:152
+void clearSlots(uint8_t type=0xFF)
Clear sensor data.
Definition: WeatherSensor.h:351
DecodeStatus decodeMessage(const uint8_t *msg, uint8_t msgSize)
Decode message Tries the available decoders until a decoding was successful.
Definition: WeatherSensorDecoders.cpp:143
-void setSensorsExc(uint8_t *bytes, uint8_t size)
Definition: WeatherSensorConfig.cpp:128
-Mapping of sensor IDs to names.
Definition: WeatherSensor.h:156
-std::string name
Name of sensor (e.g. for MQTT topic)
Definition: WeatherSensor.h:158
-uint32_t id
ID if sensor (as transmitted in radio message)
Definition: WeatherSensor.h:157
-Definition: WeatherSensor.h:282
-bool co2_init
measurement value invalid due to initialization
Definition: WeatherSensor.h:284
-uint16_t co2_ppm
CO2 concentration in ppm.
Definition: WeatherSensor.h:283
-Definition: WeatherSensor.h:273
-uint16_t pm_1_0
air quality PM1.0 in µg/m³
Definition: WeatherSensor.h:274
-bool pm_10_init
measurement value invalid due to initialization
Definition: WeatherSensor.h:279
-bool pm_2_5_init
measurement value invalid due to initialization
Definition: WeatherSensor.h:278
-uint16_t pm_2_5
air quality PM2.5 in µg/m³
Definition: WeatherSensor.h:275
-bool pm_1_0_init
measurement value invalid due to initialization
Definition: WeatherSensor.h:277
-uint16_t pm_10
air quality PM10 in µg/m³
Definition: WeatherSensor.h:276
-Definition: WeatherSensor.h:287
-bool hcho_init
measurement value invalid due to initialization
Definition: WeatherSensor.h:290
-uint8_t voc_level
volatile organic oompounds; 1 - bad air quality .. 5 - very good air quality
Definition: WeatherSensor.h:289
-bool voc_init
measurement value invalid due to initialization
Definition: WeatherSensor.h:291
-uint16_t hcho_ppb
formaldehyde concentration in ppb
Definition: WeatherSensor.h:288
-Definition: WeatherSensor.h:269
-bool alarm
water leakage alarm (only water leakage)
Definition: WeatherSensor.h:270
-Definition: WeatherSensor.h:261
-uint16_t unknown1
unknown part 1
Definition: WeatherSensor.h:264
-uint8_t distance_km
lightning distance in km (only lightning)
Definition: WeatherSensor.h:262
-uint16_t unknown2
unknown part 2
Definition: WeatherSensor.h:265
-uint16_t strike_count
lightning strike counter (only lightning)
Definition: WeatherSensor.h:263
-sensor data and status flags
Definition: WeatherSensor.h:299
-bool battery_ok
battery o.k.
Definition: WeatherSensor.h:305
-float rssi
received signal strength indicator in dBm
Definition: WeatherSensor.h:301
-bool complete
data is split into two separate messages is complete (only 6-in-1 WS)
Definition: WeatherSensor.h:307
-uint8_t s_type
sensor type
Definition: WeatherSensor.h:302
-bool startup
startup after reset / battery change
Definition: WeatherSensor.h:304
-uint32_t sensor_id
sensor ID (5-in-1: 1 byte / 6-in-1: 4 bytes / 7-in-1: 2 bytes)
Definition: WeatherSensor.h:300
-uint8_t chan
channel
Definition: WeatherSensor.h:303
-bool valid
data valid (but not necessarily complete)
Definition: WeatherSensor.h:306
-Definition: WeatherSensor.h:256
-float temp_c
temperature in degC
Definition: WeatherSensor.h:257
-uint8_t moisture
moisture in % (only 6-in-1)
Definition: WeatherSensor.h:258
-Definition: WeatherSensor.h:228
-float light_klx
Light KLux (only 7-in-1)
Definition: WeatherSensor.h:236
-bool light_ok
light o.k. (only 7-in-1)
Definition: WeatherSensor.h:231
-float light_lux
Light lux (only 7-in-1)
Definition: WeatherSensor.h:237
-bool temp_ok
temperature o.k. (only 6-in-1)
Definition: WeatherSensor.h:229
-float temp_c
temperature in degC
Definition: WeatherSensor.h:235
-uint8_t humidity
humidity in %
Definition: WeatherSensor.h:253
-float uv
uv radiation (only 6-in-1 & 7-in-1)
Definition: WeatherSensor.h:238
-bool humidity_ok
humidity o.k.
Definition: WeatherSensor.h:230
-bool wind_ok
wind speed/direction o.k. (only 6-in-1)
Definition: WeatherSensor.h:233
-bool uv_ok
uv radiation o.k. (only 6-in-1)
Definition: WeatherSensor.h:232
-float rain_mm
rain gauge level in mm
Definition: WeatherSensor.h:239
-bool rain_ok
rain gauge level o.k.
Definition: WeatherSensor.h:234
+void setSensorsExc(uint8_t *bytes, uint8_t size)
Definition: WeatherSensorConfig.cpp:129
+Mapping of sensor IDs to names.
Definition: WeatherSensor.h:157
+std::string name
Name of sensor (e.g. for MQTT topic)
Definition: WeatherSensor.h:159
+uint32_t id
ID if sensor (as transmitted in radio message)
Definition: WeatherSensor.h:158
+Definition: WeatherSensor.h:284
+bool co2_init
measurement value invalid due to initialization
Definition: WeatherSensor.h:286
+uint16_t co2_ppm
CO2 concentration in ppm.
Definition: WeatherSensor.h:285
+Definition: WeatherSensor.h:275
+uint16_t pm_1_0
air quality PM1.0 in µg/m³
Definition: WeatherSensor.h:276
+bool pm_10_init
measurement value invalid due to initialization
Definition: WeatherSensor.h:281
+bool pm_2_5_init
measurement value invalid due to initialization
Definition: WeatherSensor.h:280
+uint16_t pm_2_5
air quality PM2.5 in µg/m³
Definition: WeatherSensor.h:277
+bool pm_1_0_init
measurement value invalid due to initialization
Definition: WeatherSensor.h:279
+uint16_t pm_10
air quality PM10 in µg/m³
Definition: WeatherSensor.h:278
+Definition: WeatherSensor.h:289
+bool hcho_init
measurement value invalid due to initialization
Definition: WeatherSensor.h:292
+uint8_t voc_level
volatile organic oompounds; 1 - bad air quality .. 5 - very good air quality
Definition: WeatherSensor.h:291
+bool voc_init
measurement value invalid due to initialization
Definition: WeatherSensor.h:293
+uint16_t hcho_ppb
formaldehyde concentration in ppb
Definition: WeatherSensor.h:290
+Definition: WeatherSensor.h:271
+bool alarm
water leakage alarm (only water leakage)
Definition: WeatherSensor.h:272
+Definition: WeatherSensor.h:263
+uint16_t unknown1
unknown part 1
Definition: WeatherSensor.h:266
+uint8_t distance_km
lightning distance in km (only lightning)
Definition: WeatherSensor.h:264
+uint16_t unknown2
unknown part 2
Definition: WeatherSensor.h:267
+uint16_t strike_count
lightning strike counter (only lightning)
Definition: WeatherSensor.h:265
+sensor data and status flags
Definition: WeatherSensor.h:301
+bool battery_ok
battery o.k.
Definition: WeatherSensor.h:307
+float rssi
received signal strength indicator in dBm
Definition: WeatherSensor.h:303
+bool complete
data is split into two separate messages is complete (only 6-in-1 WS)
Definition: WeatherSensor.h:309
+uint8_t s_type
sensor type
Definition: WeatherSensor.h:304
+bool startup
startup after reset / battery change
Definition: WeatherSensor.h:306
+uint32_t sensor_id
sensor ID (5-in-1: 1 byte / 6-in-1: 4 bytes / 7-in-1: 2 bytes)
Definition: WeatherSensor.h:302
+uint8_t chan
channel
Definition: WeatherSensor.h:305
+bool valid
data valid (but not necessarily complete)
Definition: WeatherSensor.h:308
+Definition: WeatherSensor.h:258
+float temp_c
temperature in degC
Definition: WeatherSensor.h:259
+uint8_t moisture
moisture in % (only 6-in-1)
Definition: WeatherSensor.h:260
+Definition: WeatherSensor.h:230
+float light_klx
Light KLux (only 7-in-1)
Definition: WeatherSensor.h:238
+bool light_ok
light o.k. (only 7-in-1)
Definition: WeatherSensor.h:233
+float light_lux
Light lux (only 7-in-1)
Definition: WeatherSensor.h:239
+bool temp_ok
temperature o.k. (only 6-in-1)
Definition: WeatherSensor.h:231
+float temp_c
temperature in degC
Definition: WeatherSensor.h:237
+uint8_t humidity
humidity in %
Definition: WeatherSensor.h:255
+float uv
uv radiation (only 6-in-1 & 7-in-1)
Definition: WeatherSensor.h:240
+bool humidity_ok
humidity o.k.
Definition: WeatherSensor.h:232
+bool wind_ok
wind speed/direction o.k. (only 6-in-1)
Definition: WeatherSensor.h:235
+bool uv_ok
uv radiation o.k. (only 6-in-1)
Definition: WeatherSensor.h:234
+float rain_mm
rain gauge level in mm
Definition: WeatherSensor.h:241
+bool rain_ok
rain gauge level o.k.
Definition: WeatherSensor.h:236
diff --git a/class_weather_sensor-members.html b/class_weather_sensor-members.html
index cf8f7d5..c2d2b0c 100644
--- a/class_weather_sensor-members.html
+++ b/class_weather_sensor-members.html
@@ -89,7 +89,7 @@
This is the complete list of members for WeatherSensor, including all inherited members.
|
-int16_t | begin (void) |
- | Presence check and initialization of radio module. More...
|
- |
+int16_t | begin (uint8_t max_sensors_default=MAX_SENSORS_DEFAULT) |
+ | Presence check and initialization of radio module. More...
|
+ |
void | radioReset (void) |
| Reset radio transceiver.
|
@@ -193,8 +193,8 @@
Receive, decode and store Bresser Weather Sensor Data Uses CC1101 or SX1276 radio module for receiving FSK modulated signal at 868 MHz.
-
-◆ begin()
+
+◆ begin()
diff --git a/class_weather_sensor.js b/class_weather_sensor.js
index 433afbb..083c9cd 100644
--- a/class_weather_sensor.js
+++ b/class_weather_sensor.js
@@ -9,7 +9,7 @@ var class_weather_sensor =
[ "Soil", "struct_weather_sensor_1_1_soil.html", "struct_weather_sensor_1_1_soil" ],
[ "Weather", "struct_weather_sensor_1_1_weather.html", "struct_weather_sensor_1_1_weather" ],
[ "sensor_t", "class_weather_sensor.html#ae38bcb7791c9c49d5f23c150d4517dc4", null ],
- [ "begin", "class_weather_sensor.html#a9b84d8518edf33a2f796288bb482eb8b", null ],
+ [ "begin", "class_weather_sensor.html#a69fb340800d9fef5cb81921760a15a45", null ],
[ "clearSlots", "class_weather_sensor.html#af7d1085b72f2f41e8b349e63d2628b0c", null ],
[ "decodeMessage", "class_weather_sensor.html#af964b214e398132f25d4e783dffe708a", null ],
[ "findId", "class_weather_sensor.html#a0adf85658be20d05e43e34c6b728b989", null ],
diff --git a/functions.html b/functions.html
index 26e2b69..fc9583c 100644
--- a/functions.html
+++ b/functions.html
@@ -99,7 +99,7 @@ - b -
diff --git a/functions_func.html b/functions_func.html
index d39cdbe..ef5b9ec 100644
--- a/functions_func.html
+++ b/functions_func.html
@@ -84,7 +84,7 @@
- begin()
-: WeatherSensor
+: WeatherSensor
- clearSlots()
: WeatherSensor
diff --git a/navtreeindex0.js b/navtreeindex0.js
index ee30f02..408da32 100644
--- a/navtreeindex0.js
+++ b/navtreeindex0.js
@@ -37,8 +37,8 @@ var NAVTREEINDEX0 =
"class_weather_sensor.html#a558191760f9d9b9bf12f79f6f3e5370a":[1,0,5,15],
"class_weather_sensor.html#a62203c24af7924cc8e86bdff40fb9281":[1,0,5,21],
"class_weather_sensor.html#a652b68eb82bf73157e591094bb8f4f42":[1,0,5,25],
+"class_weather_sensor.html#a69fb340800d9fef5cb81921760a15a45":[1,0,5,9],
"class_weather_sensor.html#a7f48011241803c5d42d45f2c3e5d3794":[1,0,5,24],
-"class_weather_sensor.html#a9b84d8518edf33a2f796288bb482eb8b":[1,0,5,9],
"class_weather_sensor.html#ac0d3ac40d2ac605badcbb8e1631d64fa":[1,0,5,13],
"class_weather_sensor.html#ac6f489c26a476d658c2ce5161ea48441":[1,0,5,19],
"class_weather_sensor.html#adffc6603766560fe6aa0cdd1200fc2a0":[1,0,5,14],
diff --git a/search/all_1.js b/search/all_1.js
index 31b0773..bd4851a 100644
--- a/search/all_1.js
+++ b/search/all_1.js
@@ -1,5 +1,5 @@
var searchData=
[
['battery_5fok_5',['battery_ok',['../struct_weather_sensor_1_1_sensor.html#a179014c02826f68faabbddbc9a57ff90',1,'WeatherSensor::Sensor']]],
- ['begin_6',['begin',['../class_weather_sensor.html#a9b84d8518edf33a2f796288bb482eb8b',1,'WeatherSensor']]]
+ ['begin_6',['begin',['../class_weather_sensor.html#a69fb340800d9fef5cb81921760a15a45',1,'WeatherSensor']]]
];
diff --git a/search/functions_0.js b/search/functions_0.js
index e2b5d85..33592b7 100644
--- a/search/functions_0.js
+++ b/search/functions_0.js
@@ -1,4 +1,4 @@
var searchData=
[
- ['begin_103',['begin',['../class_weather_sensor.html#a9b84d8518edf33a2f796288bb482eb8b',1,'WeatherSensor']]]
+ ['begin_103',['begin',['../class_weather_sensor.html#a69fb340800d9fef5cb81921760a15a45',1,'WeatherSensor']]]
];