Sensor Configurations
Ressoucenwächter supports a variety of IEQ-related sensor configurations that can be combined as required. Most sensors (e.g. sensors that communicate via I2C) can be recognized automatically. Some sensors, especially analog sensors, need to be configured in the firmware (Code/Arduino/.../module_cfg.h
).
The following table shows the categorization of the supported hardware, the measured parameters from the sensors and the corresponding parameter names in the firmware, etc.
Category | Measurement parameters / function | Supported sensors | Setting in module_cfg.h | Labeling on PCB |
Sensor – Temperature | Air temperature in °C | Bosch BME280 | bool BME280isAvailable; // auto check in setup() | J1 |
Sensor – Humidity | rel. Humidity in % | Bosch BME280 | bool BME280isAvailable; // auto check in setup() | J1 |
Sensor – Air pressure | Barometric pressure (air pressure) in hPa | Bosch BME280 | bool BME280isAvailable; // auto check in setup() | J1 |
Sensor – Radiant temperature | Mean radiant temperature in °C | Dallas DS18B20 | bool RadTempSensorisAvailable = false; // Manual entry | Pin 15 (J4) |
Sensor – Light | Illuminance in lux | Vishay VEML7700 | bool VEML7700isAvailable; // auto check in setup() | J2 |
Sensor – VOC | VOC index between 0 and 500 | Sensirion SGP40 | bool SGP40isAvailable; // auto check in setup() | J7 |
Sensor – CO2 | CO2 concentration in ppm | Sensirion SCD30 | bool SCD30isAvailable; // auto check in setup() | J6 |
Sensor – Sound | Sound level in dB(A) | DFROBOT SEN0232 Gravity: Analog Sound Level Meter | bool SoundSensorisAvailable = true; // Manual entry | J13 |
Sensor – Wind | Wind speed in m/s | Modern Device Wind Sensor Rev. C | bool WindSensorisAvailable = true; // Manual entry | J12 |
Sensor – Window sensor | Binary status of the window (0: closed, 1: open) | Any reed switch (reed contacts / window contacts) | bool WindowSensorisAvailable = false; // Manual entry | J15 |
Sensor – Power | Measured electric power in watts | YHDC Current Transformer SCT-013-xxx (default: SCT-013-000) | bool PowerSensorisAvailable = true; // Manual entry Module selection: bool PowerSensorCurrentOutput = true; // Manual entry, true if using power sensor with current signal output e.g. 0-50mA | J14 |
RFID | (Optional) Replacement of the physical buttons | RFID-RC522 | bool RFIDisAvailable = false; // Manual entry | U2 |
SD card module | Data storage | DEBO MICROSD 2 or similar micro SD card modules via SPI | bool SDisAvailable = true; // Manual entry | J9 |
RTC | Time and date | RTC-DS3231 | (required) | J8 |
Microcontroller | Control unit | Espressif ESP-32 DevKitC (WROOM-32D/E) | (required) | U1 |
Development boards from any manufacturer (e.g. Adafruit) can be purchased for the hardware mentioned above. When purchasing, pay attention to the model number and the pin assignment of the board. There can be completely different board designs even for the same chip. A typical example is the BME280 development board, which is available in both a 3.3V and a 5V version.
Therefore, 3.3V and 5V power supplies are provided on the boards for each sensor interface to accommodate as many variants as possible. The pin sequence must be observed when installing the sensors. In some cases it would not be possible to plug the development board directly into the designated pin socket and it may be necessary to use jumper wires to adjust the pin order.
Note for I2C sensors:
If the purchased sensor has a different I2C address, this can be changed in Code/Arduino/.../pin_cfg.h
.