usermods/BME68X_v2/README.md
This usermod was developed for a BME680/BME68X sensor. The BME68X is not compatible with the BME280/BMP280 chip. It has its own library. The original 'BSEC Software Library' from Bosch was used to develop the code. The measured values are displayed on the WLED info page.
<p align="center"></p>In addition, the values are published on MQTT if this is active. The topic used for this is: 'wled/[MQTT Client ID]'. The Client ID is set in the WLED MQTT settings.
<p align="center"></p>If you use HomeAssistance discovery, the device tree for HomeAssistance is created. This is published under the topic 'homeassistant/sensor/[MQTT Client ID]' via MQTT.
<p align="center"></p>A device with the following sensors appears in HomeAssistant. Please note that MQTT must be activated in HomeAssistant.
<p align="center"></p>Raw sensor types
Temperature +/- 1.0 °C/°F -40 to 85 °C Humidity +/- 3 % 0 to 100 % Pressure +/- 1 hPa 300 to 1100 hPa Gas Resistance Ohm The BSEC Library calculates the following values via the gas resistance
IAQ value between 0 and 500 Static IAQ same as IAQ but for permanently installed devices CO2 PPM VOC PPM Gas-Percentage % In addition the usermod calculates
Absolute humidity g/m³ Dew point °C/°F
The IAQ is divided into the following value groups.
<p align="center"></p>For more detailed information, please consult the enclosed Bosch product description (BME680.pdf).
The gas sensor of the BME68X must be calibrated. This differs from the BME280, which does not require any calibration. There is a range of additional information for this, which the driver also provides. These values can be found in HomeAssistant under Diagnostics.
Furthermore, all GAS based values have their own accuracy value. These have the following meaning:
The IAQ index is therefore only meaningful if IAQ Accuracy = 3. In addition to the value for IAQ, BSEC also provides us with CO2 and VOC equivalent values. When using the sensor, the calibration value should also always be read out and displayed or transmitted.
Reasonably reliable values are therefore only achieved when accuracy displays the value 3.
The settings of the usermods are set in the usermod section of wled.
<p align="center"></p>The possible settings are
Applies to all sensors. The number of decimal places is set here. If the sensor is set to -1, it will no longer be published. In addition, the IAQ values can be activated here in verbal form.
It is recommended to use the Static IAQ for the IAQ values. This is recommended by Bosch for statically placed devices.
Data is published over MQTT - make sure you've enabled the MQTT sync interface.
In addition to outputting via MQTT, you can read the values from the Info Screen on the dashboard page of the device's web interface.
Methods also exist to read the read/calculated values from other WLED modules through code.
To enable, compile with BME68X in custom_usermods (e.g. in platformio_override.ini)
Example:
extends = env:esp32dev
custom_usermods = ${env:esp32dev.custom_usermods} BME68X