
Unit ENV-Pro は高集積の環境検出ユニットで、BME688 センサーソリューションを内蔵しています。VOC(揮発性有機化合物)、CO₂ 換算値、室内空気質(IAQ)、温度、湿度、大気圧などの複数の環境パラメータの測定に対応します。
本ドキュメントでは Unit ENV-Pro を Home Assistant に統合する方法を示します。主な参照:
BSEC2 を使用しており、BSEC2 ライブラリはそのソフトウェアライセンス契約に同意した後でのみ使用可能です。設定でこのコンポーネントを有効にすることで、BSEC ライセンスの条項に明示的に同意したものとみなされます。なお、このライセンスは、このコンポーネントを含むコンパイル済みファームウェアの配布を禁止しています。ESPHome の設定で I²C コンポーネントを有効にする必要があります:
# Example configuration entry for ESP32
i2c:
sda: GPIOXX
scl: GPIOXX
scan: true使用するホストデバイスによって GPIO ピンは異なります。例: Atom Lite をホストにする場合:
# I2C Bus on Grove Port (HY2.0-4P)
i2c:
sda: GPIO26
scl: GPIO32Unit ENV-Pro の設定例
text_sensor:
- platform: bme68x_bsec2
iaq_accuracy:
name: "BME68x IAQ Accuracy"
- platform: template
name: "BME68x IAQ Classification"
lambda: |-
if ( int(id(iaq).state) <= 50) {
return {"Excellent"};
}
else if (int(id(iaq).state) >= 51 && int(id(iaq).state) <= 100) {
return {"Good"};
}
else if (int(id(iaq).state) >= 101 && int(id(iaq).state) <= 150) {
return {"Lightly polluted"};
}
else if (int(id(iaq).state) >= 151 && int(id(iaq).state) <= 200) {
return {"Moderately polluted"};
}
else if (int(id(iaq).state) >= 201 && int(id(iaq).state) <= 250) {
return {"Heavily polluted"};
}
else if (int(id(iaq).state) >= 251 && int(id(iaq).state) <= 350) {
return {"Severely polluted"};
}
else if (int(id(iaq).state) >= 351) {
return {"Extremely polluted"};
}
else {
return {"error"};
}
sensor:
- platform: bme68x_bsec2
temperature:
name: "Temperature"
pressure:
name: "Pressure"
humidity:
name: "Humidity"
iaq:
id: iaq
name: "IAQ"
co2_equivalent:
name: "CO2 Equivalent"
breath_voc_equivalent:
name: "Breath VOC Equivalent"BSEC2 ライブラリを使用するため、センサーの update_interval オプションは使えません(ポーリング間隔を設定できません)。データの処理と公開は専有ライブラリによって行われます。設定とアップロードを完了したら、Home Assistant にセンサーを追加してください。
