Skip to the content.

Configuration

Once you take control in ESPHome, there are two sections you need to configure, substitutions: and packages:. In the substitutions: section you will find settings for many of the available sensors.

With yaml all substitutions are strings and should be in 'single quotes' or
"double quotes" even if the value is a float or a boolean value.

substitutions:
  name: "sensor-pkg-a-c4001"
  friendly_name: "Indoor Multi-Sensor Pkg A Radar C4001"
  version_suffix: "-1"

  # Settings
  use_pir_in_presence: "true"
  # Status LED Configuration
  status_day_brightness: "0.5"
  status_night_brightness: "0.20"
  status_daytime_lux: "12.0"
  status_nighttime_lux: "7.0"
  # Temperature Configuration
  temperature_offset: "0.0"
  # Humidity Configuration
  humidity_offset: "0.0"
  # CO₂ Configuration
  co2_calibration_date: "Not Set"
  # CO Configuration
  co_temp_id: "temperature"
  co_offset: "0.0"
  co_sensitivity: "2.000e-9"
  co_manufacture_date: "Not Set"
  co_serial_number: "Not Set"
  # Automatically controlled Vent
  vent_ha_entity: fan.vent_id
  vent_use_humidity: "true"
  vent_use_co2: "true"
  vent_min_on_time: "15"
  vent_hum_on_trigger: "10.0"
  vent_hum_off_trigger: "2.5"
  vent_co2_on_trigger: "1100"
  vent_co2_off_trigger: "900"
  # Smoke Alarm Configuration
  alarm_use_co: "true"
  alarm_use_co2: "true"
  alarm_use_pm: "true"

The packages: section will allow you to disable sensors by commenting out it’s included package.

packages:
  # Main Config Files for Sensor Package-A and C4001 Radar
  common: github://mikelawrence/esphome-indoor-multi-sensor-config/common/common.yaml@main
  sen6x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkga-sen6x.yaml@main
  radar: github://mikelawrence/esphome-indoor-multi-sensor-config/common/radar-c4001.yaml@main

  # ADDITIONAL SENSORS
  # Carbon Dioxide (CO) - Figaro TGS5141 sensor
  co: github://mikelawrence/esphome-indoor-multi-sensor-config/common/add-co.yaml@main
  # Energy Usage - INA2XX sensor to measure Voltage, Power and Energy Usage
  ina2xx: github://mikelawrence/esphome-indoor-multi-sensor-config/common/add-ina2xx.yaml@main
  # Light Level - TSL2591 sensor
  tsl2591: github://mikelawrence/esphome-indoor-multi-sensor-config/common/add-tsl2591.yaml@main
  # Barometric Pressure - BMP581 sensor
  bmp581: github://mikelawrence/esphome-indoor-multi-sensor-config/common/add-bmp581.yaml@main
  # Microphone - Adds Sound Level meter
  mic: github://mikelawrence/esphome-indoor-multi-sensor-config/common/add-microphone.yaml@main

  # FEATURES
  # SEN6X Pressure Compensation - Adds pressure compensation to SEN6X
  press-comp: github://mikelawrence/esphome-indoor-multi-sensor-config/common/feat-sen6x-press-comp.yaml@main
  # SCD4X Pressure Compensation - Adds pressure compensation to SCD4X
  # press-comp: github://mikelawrence/esphome-indoor-multi-sensor-config/common/feat-scd4x-press-comp.yaml@main
  # Automatic Vent - Use humidity and CO₂ to control a bathroom vent
  # auto-vent: github://mikelawrence/esphome-indoor-multi-sensor-config/common/feat-auto-vent.yaml@main
  # Smoke Alarm - Use PM and CO₂ for smoke alarm functionality
  # smoke-alarm: github://mikelawrence/esphome-indoor-multi-sensor-config/common/feat-smoke-alarm.yaml@main

The Main Config Files vary based on Sensor Package and Radar. Only these combinations of Main Config Files will work.

  # Main Config Files for Sensor Package-A and C4001 Radar
  common: github://mikelawrence/esphome-indoor-multi-sensor-config/common/common.yaml@main
  sen6x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkga-sen6x.yaml@main
  radar: github://mikelawrence/esphome-indoor-multi-sensor-config/common/radar-c4001.yaml@main

  # Main Config Files for Sensor Package-A and LD2410 Radar
  common: github://mikelawrence/esphome-indoor-multi-sensor-config/common/common.yaml@main
  sen6x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkga-sen6x.yaml@main
  radar: github://mikelawrence/esphome-indoor-multi-sensor-config/common/radar-ld2410.yaml@main

  # Main Config Files for Sensor Package-A and LD2450 MTMZ Radar
  common: github://mikelawrence/esphome-indoor-multi-sensor-config/common/common.yaml@main
  sen6x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkga-sen6x.yaml@main
  radar: github://mikelawrence/esphome-indoor-multi-sensor-config/common/radar-ld2450ml-mtmz.yaml@main

  # Main Config Files for Sensor Package-A and LD2450 STSZ Radar
  common: github://mikelawrence/esphome-indoor-multi-sensor-config/common/common.yaml@main
  sen6x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkga-sen6x.yaml@main
  radar: github://mikelawrence/esphome-indoor-multi-sensor-config/common/radar-ld2450ml-stsz.yaml@main

  # Main Config Files for Sensor Package-B and C4001 Radar
  common: github://mikelawrence/esphome-indoor-multi-sensor-config/common/common.yaml@main
  sht4x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkgb-sht4x.yaml@main
  scd4x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkgb-scd4x.yaml@main
  sgp4x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkgb-sgp4x.yaml@main
  radar: github://mikelawrence/esphome-indoor-multi-sensor-config/common/radar-c4001.yaml@main

  # Main Config Files for Sensor Package-B and LD2410 Radar
  common: github://mikelawrence/esphome-indoor-multi-sensor-config/common/common.yaml@main
  sht4x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkgb-sht4x.yaml@main
  scd4x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkgb-scd4x.yaml@main
  sgp4x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkgb-sgp4x.yaml@main
  radar: github://mikelawrence/esphome-indoor-multi-sensor-config/common/radar-ld2410.yaml@main

  # Main Config Files for Sensor Package-B and LD2450 MTMZ Radar
  common: github://mikelawrence/esphome-indoor-multi-sensor-config/common/common.yaml@main
  sht4x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkgb-sht4x.yaml@main
  scd4x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkgb-scd4x.yaml@main
  sgp4x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkgb-sgp4x.yaml@main
  radar: github://mikelawrence/esphome-indoor-multi-sensor-config/common/radar-ld2450ml-mtmz.yaml@main

  # Main Config Files for Sensor Package-B and LD2450 STSZ Radar
  common: github://mikelawrence/esphome-indoor-multi-sensor-config/common/common.yaml@main
  sht4x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkgb-sht4x.yaml@main
  scd4x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkgb-scd4x.yaml@main
  sgp4x: github://mikelawrence/esphome-indoor-multi-sensor-config/common/pkgb-sgp4x.yaml@main
  radar: github://mikelawrence/esphome-indoor-multi-sensor-config/common/radar-ld2450ml-stsz.yaml@main

The additional Sensors and Features packages can mostly be included or not based on whether or not the sensors are populated on the board.

As an example, if you enable SCD4X pressure compensation but don’t have a SCD4X sensor installed it’s not going to work.

Settings

substitutions:
  version_suffix: "-1"
  # Settings
  use_pir_in_presence: "true"
  # Status LED Configuration
  status_day_brightness: "0.5"
  status_night_brightness: "0.20"
  status_daytime_lux: "12.0"
  status_nighttime_lux: "7.0"
  # Temperature Configuration
  temperature_offset: "0.0"
  # Humidity Configuration
  humidity_offset: "0.0"
  # CO₂ Configuration
  co2_calibration_date: "Not Set"

These are base settings available for any configuration.

Carbon Monoxide(CO) Configuration

packages:
  # Carbon Dioxide (CO) - Figaro TGS5141 sensor
  co: github://mikelawrence/esphome-indoor-multi-sensor-config/common/add-co.yaml@main

If you have included this package the CO sensor is enabled and there are substitutions you need to edit.

substitutions:
  # CO Configuration
  co_temp_id: "temperature"
  co_offset: "0.0"
  co_sensitivity: "2.000e-9"
  co_manufacture_date: "Unknown"
  co_serial_number: "111111111111111111"

Energy Usage Configuration

packages:
  # Energy Usage - INA2XX sensor to measure Voltage, Power and Energy Usage
  ina2xx: github://mikelawrence/esphome-indoor-multi-sensor-config/common/add-ina2xx.yaml@main

If you have included this package the Energy Usage Sensor is enabled. Voltage, Power and Energy Usage will be reported as sensors. There are no substitutions to edit.

Light Sensor Configuration

packages:
  # Light Level - TSL2591 sensor
  tsl2591: github://mikelawrence/esphome-indoor-multi-sensor-config/common/add-tsl2591.yaml@main

If you have included this package the TSL2591 Light Level Sensor is enabled. Light Level in lux will be reported as a sensor. There are no substitutions to edit.

Barometric Pressure Sensor Configuration

packages:
  # Barometric Pressure - BMP581 sensor
  bmp581: github://mikelawrence/esphome-indoor-multi-sensor-config/common/add-bmp581.yaml@main

If you have included this package the BMP581 Barometric Pressure Sensor is enabled. The sensor reports absolute pressure. There are no substitutions to edit.

Microphone Configuration

packages:
  # Microphone - Adds Sound Level meter
  mic: github://mikelawrence/esphome-indoor-multi-sensor-config/common/add-microphone.yaml@main

If you have included this package the ICS-43434 MEMS microphone is enabled. The microphone measures sound levels and reports to levels a one minute average and one minute peak. There are no substitutions to edit.

Automatically controlled Vent Configuration

packages:
  # Automatic Vent - Use humidity and CO₂ to control a bathroom vent
  auto-vent: github://mikelawrence/esphome-indoor-multi-sensor-config/common/feat-auto-vent.yaml@main

If you have included this package the Automatic Vent control is enabled and there are substitutions you need to edit.

substitutions:
  # Automatically controlled Vent
  vent_ha_entity: fan.vent_id
  vent_use_humidity: "true"
  vent_use_co2: "true"
  vent_min_on_time: "15"
  vent_hum_on_trigger: "10.0"
  vent_hum_off_trigger: "2.5"
  vent_co2_on_trigger: "1100"
  vent_co2_off_trigger: "900"

Smoke Alarm Configuration

packages:
  # Smoke Alarm - Use PM and CO₂ for smoke alarm functionality
  smoke-alarm: github://mikelawrence/esphome-indoor-multi-sensor-config/common/feat-smoke-alarm.yaml@main

If you have included this package the you can use multiple sensors to approximate a smoke detector. This is not a certified smoke detector and my not work at all. You have been warned!

substitutions:
  # Smoke Alarm Configuration
  alarm_use_co: "true"
  alarm_use_co2: "true"
  alarm_use_pm: "true"

back