Threshold
The threshold integration observes the state of another sensor. If the value is below or higher than the given threshold, then the state of the threshold sensor is changed. It also supports a range if both the upper and lower limits are given.
If the sensor is configured with no hysteresis and the sensor value is equal to the threshold, the sensor is turned off since it is not upper or lower with respect to the threshold.
Configuration
To add the Threshold helper to your Home Assistant instance, use this My button:
Manual configuration steps
If the above My button doesn’t work, you can also perform the following steps manually:
-
Browse to your Home Assistant instance.
-
At the top of the screen, select the tab: Helpers.
-
In the bottom right corner, select the
Create helper button. -
From the list, select Threshold.
-
Follow the instructions on screen to complete the setup.
YAML configuration
Alternatively, this integration can be configured and set up manually via YAML
instead. To enable the Integration sensor in your installation, add the
following to your configuration.yaml
The configuration.yaml file is the main configuration file for Home Assistant. It lists the integrations to be loaded and their specific configurations. In some cases, the configuration needs to be edited manually directly in the configuration.yaml file. Most integrations can be configured in the UI. [Learn more] file:
# Example configuration.yaml entry
binary_sensor:
- platform: threshold
entity_id: sensor.random
lower: 20
Configuration Variables
The entity to monitor. Only sensors are supported.
Sets the class of the device, changing the device state and icon that is displayed on the frontend.
The distance the observed value must be from the threshold before the state is changed.
Matrix of state change behavior
Sensor value rising
Set | Turns on when | Turns off when |
---|---|---|
only upper | sensor > (upper + hyst) | never |
only lower | never | sensor > (lower + hyst) |
upper & lower | sensor > (lower + hyst) | sensor > (upper + hyst) |
Sensor value falling
Set | Turns on when | Turns off when |
---|---|---|
only upper | never | sensor < (upper - hyst) |
only lower | sensor < (lower - hyst) | never |
upper & lower | sensor < (upper - hyst) | sensor < (lower - hyst) |
Examples
Is the temperature rising or falling
The hysteresis parameter can be used in this use-case to avoid frequent state changes around the maximum or the minimum of a temperature curve. We also have to utilize the derivative sensor for this use-case:
sensor:
- platform: derivative # will be positive for rising temperatures and negative for falling temperatures
source: sensor.temperature
unit_time: min
name: temperature derivative
time_window: 00:05:00
binary_sensor:
- platform: threshold # will switch state not at 0°C/min but 0.1°C/min or -0.1°C/min depending on the current state of the sensor, respectively
entity_id: sensor.temperature_derivative
upper: 0
hysteresis: 0.1 # sensor
name: temperature rising