Convert sensor_schema to use kwargs (#2094)

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
This commit is contained in:
Otto Winter 2021-08-01 12:21:32 +02:00 committed by GitHub
parent 81ae6709e4
commit 5c65f9f9ad
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
115 changed files with 1337 additions and 1371 deletions

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_ID, CONF_ID,
CONF_PIN, CONF_PIN,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_VOLT, UNIT_VOLT,
) )
@ -37,7 +36,10 @@ ADCSensor = adc_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 2, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -8,7 +8,6 @@ from esphome.const import (
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_VOLT, UNIT_VOLT,
UNIT_AMPERE, UNIT_AMPERE,
@ -32,27 +31,34 @@ CONFIG_SCHEMA = (
cv.GenerateID(): cv.declare_id(ADE7953), cv.GenerateID(): cv.declare_id(ADE7953),
cv.Optional(CONF_IRQ_PIN): pins.input_pin, cv.Optional(CONF_IRQ_PIN): pins.input_pin,
cv.Optional(CONF_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 1, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=1,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CURRENT_A): sensor.sensor_schema( cv.Optional(CONF_CURRENT_A): sensor.sensor_schema(
UNIT_AMPERE, unit_of_measurement=UNIT_AMPERE,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_CURRENT,
DEVICE_CLASS_CURRENT, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CURRENT_B): sensor.sensor_schema( cv.Optional(CONF_CURRENT_B): sensor.sensor_schema(
UNIT_AMPERE, unit_of_measurement=UNIT_AMPERE,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_CURRENT,
DEVICE_CLASS_CURRENT, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_ACTIVE_POWER_A): sensor.sensor_schema( cv.Optional(CONF_ACTIVE_POWER_A): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 1, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=1,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_ACTIVE_POWER_B): sensor.sensor_schema( cv.Optional(CONF_ACTIVE_POWER_B): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 1, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=1,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -5,7 +5,6 @@ from esphome.const import (
CONF_GAIN, CONF_GAIN,
CONF_MULTIPLEXER, CONF_MULTIPLEXER,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_VOLT, UNIT_VOLT,
CONF_ID, CONF_ID,
@ -53,7 +52,10 @@ ADS1115Sensor = ads1115_ns.class_(
CONF_ADS1115_ID = "ads1115_id" CONF_ADS1115_ID = "ads1115_id"
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 3, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=3,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_TEMPERATURE, CONF_TEMPERATURE,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_PERCENT, UNIT_PERCENT,
@ -23,18 +22,16 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(AHT10Component), cv.GenerateID(): cv.declare_id(AHT10Component),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -9,7 +9,6 @@ from esphome.const import (
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
ICON_EMPTY,
UNIT_PERCENT, UNIT_PERCENT,
) )
@ -25,18 +24,16 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(AM2320Component), cv.GenerateID(): cv.declare_id(AM2320Component),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -3,7 +3,6 @@ import esphome.config_validation as cv
from esphome.components import sensor from esphome.components import sensor
from esphome.const import ( from esphome.const import (
CONF_TYPE, CONF_TYPE,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_PERCENT, UNIT_PERCENT,
ICON_LIGHTBULB, ICON_LIGHTBULB,
@ -21,7 +20,10 @@ TYPES = {
} }
CONFIG_SCHEMA = sensor.sensor_schema( CONFIG_SCHEMA = sensor.sensor_schema(
UNIT_PERCENT, ICON_LIGHTBULB, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_PERCENT,
icon=ICON_LIGHTBULB,
accuracy_decimals=1,
state_class=STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{ {
cv.Required(CONF_TYPE): cv.one_of(*TYPES, upper=True), cv.Required(CONF_TYPE): cv.one_of(*TYPES, upper=True),

View file

@ -4,10 +4,8 @@ from esphome.components import sensor
from esphome.const import ( from esphome.const import (
CONF_DISTANCE, CONF_DISTANCE,
CONF_LIGHTNING_ENERGY, CONF_LIGHTNING_ENERGY,
DEVICE_CLASS_EMPTY,
STATE_CLASS_NONE, STATE_CLASS_NONE,
UNIT_KILOMETER, UNIT_KILOMETER,
UNIT_EMPTY,
ICON_SIGNAL_DISTANCE_VARIANT, ICON_SIGNAL_DISTANCE_VARIANT,
ICON_FLASH, ICON_FLASH,
) )
@ -19,14 +17,15 @@ CONFIG_SCHEMA = cv.Schema(
{ {
cv.GenerateID(CONF_AS3935_ID): cv.use_id(AS3935), cv.GenerateID(CONF_AS3935_ID): cv.use_id(AS3935),
cv.Optional(CONF_DISTANCE): sensor.sensor_schema( cv.Optional(CONF_DISTANCE): sensor.sensor_schema(
UNIT_KILOMETER, unit_of_measurement=UNIT_KILOMETER,
ICON_SIGNAL_DISTANCE_VARIANT, icon=ICON_SIGNAL_DISTANCE_VARIANT,
1, accuracy_decimals=1,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_NONE,
STATE_CLASS_NONE,
), ),
cv.Optional(CONF_LIGHTNING_ENERGY): sensor.sensor_schema( cv.Optional(CONF_LIGHTNING_ENERGY): sensor.sensor_schema(
UNIT_EMPTY, ICON_FLASH, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE icon=ICON_FLASH,
accuracy_decimals=1,
state_class=STATE_CLASS_NONE,
), ),
} }
).extend(cv.COMPONENT_SCHEMA) ).extend(cv.COMPONENT_SCHEMA)

View file

@ -12,7 +12,6 @@ from esphome.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_PERCENT, UNIT_PERCENT,
@ -34,28 +33,28 @@ CONFIG_SCHEMA = (
cv.GenerateID(): cv.declare_id(ATCMiThermometer), cv.GenerateID(): cv.declare_id(ATCMiThermometer),
cv.Required(CONF_MAC_ADDRESS): cv.mac_address, cv.Required(CONF_MAC_ADDRESS): cv.mac_address,
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_BATTERY_LEVEL): sensor.sensor_schema( cv.Optional(CONF_BATTERY_LEVEL): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_BATTERY,
DEVICE_CLASS_BATTERY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_BATTERY_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_BATTERY_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 3, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=3,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -12,13 +12,11 @@ from esphome.const import (
CONF_FORWARD_ACTIVE_ENERGY, CONF_FORWARD_ACTIVE_ENERGY,
CONF_REVERSE_ACTIVE_ENERGY, CONF_REVERSE_ACTIVE_ENERGY,
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_ENERGY, DEVICE_CLASS_ENERGY,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_POWER_FACTOR, DEVICE_CLASS_POWER_FACTOR,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
ICON_LIGHTBULB, ICON_LIGHTBULB,
ICON_CURRENT_AC, ICON_CURRENT_AC,
LAST_RESET_TYPE_AUTO, LAST_RESET_TYPE_AUTO,
@ -27,7 +25,6 @@ from esphome.const import (
UNIT_VOLT, UNIT_VOLT,
UNIT_AMPERE, UNIT_AMPERE,
UNIT_WATT, UNIT_WATT,
UNIT_EMPTY,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_VOLT_AMPS_REACTIVE, UNIT_VOLT_AMPS_REACTIVE,
UNIT_WATT_HOURS, UNIT_WATT_HOURS,
@ -65,47 +62,47 @@ ATM90E32Component = atm90e32_ns.class_(
ATM90E32_PHASE_SCHEMA = cv.Schema( ATM90E32_PHASE_SCHEMA = cv.Schema(
{ {
cv.Optional(CONF_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, unit_of_measurement=UNIT_VOLT,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_VOLTAGE,
DEVICE_CLASS_VOLTAGE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CURRENT): sensor.sensor_schema( cv.Optional(CONF_CURRENT): sensor.sensor_schema(
UNIT_AMPERE, ICON_EMPTY, 2, DEVICE_CLASS_CURRENT, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_AMPERE,
accuracy_decimals=2,
device_class=DEVICE_CLASS_CURRENT,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_POWER): sensor.sensor_schema( cv.Optional(CONF_POWER): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 2, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_REACTIVE_POWER): sensor.sensor_schema( cv.Optional(CONF_REACTIVE_POWER): sensor.sensor_schema(
UNIT_VOLT_AMPS_REACTIVE, unit_of_measurement=UNIT_VOLT_AMPS_REACTIVE,
ICON_LIGHTBULB, icon=ICON_LIGHTBULB,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_POWER_FACTOR): sensor.sensor_schema( cv.Optional(CONF_POWER_FACTOR): sensor.sensor_schema(
UNIT_EMPTY, accuracy_decimals=2,
ICON_EMPTY, device_class=DEVICE_CLASS_POWER_FACTOR,
2, state_class=STATE_CLASS_MEASUREMENT,
DEVICE_CLASS_POWER_FACTOR,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_FORWARD_ACTIVE_ENERGY): sensor.sensor_schema( cv.Optional(CONF_FORWARD_ACTIVE_ENERGY): sensor.sensor_schema(
UNIT_WATT_HOURS, unit_of_measurement=UNIT_WATT_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
cv.Optional(CONF_REVERSE_ACTIVE_ENERGY): sensor.sensor_schema( cv.Optional(CONF_REVERSE_ACTIVE_ENERGY): sensor.sensor_schema(
UNIT_WATT_HOURS, unit_of_measurement=UNIT_WATT_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
cv.Optional(CONF_GAIN_VOLTAGE, default=7305): cv.uint16_t, cv.Optional(CONF_GAIN_VOLTAGE, default=7305): cv.uint16_t,
cv.Optional(CONF_GAIN_CT, default=27961): cv.uint16_t, cv.Optional(CONF_GAIN_CT, default=27961): cv.uint16_t,
@ -120,18 +117,16 @@ CONFIG_SCHEMA = (
cv.Optional(CONF_PHASE_B): ATM90E32_PHASE_SCHEMA, cv.Optional(CONF_PHASE_B): ATM90E32_PHASE_SCHEMA,
cv.Optional(CONF_PHASE_C): ATM90E32_PHASE_SCHEMA, cv.Optional(CONF_PHASE_C): ATM90E32_PHASE_SCHEMA,
cv.Optional(CONF_FREQUENCY): sensor.sensor_schema( cv.Optional(CONF_FREQUENCY): sensor.sensor_schema(
UNIT_HERTZ, unit_of_measurement=UNIT_HERTZ,
ICON_CURRENT_AC, icon=ICON_CURRENT_AC,
1, accuracy_decimals=1,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CHIP_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_CHIP_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Required(CONF_LINE_FREQUENCY): cv.enum(LINE_FREQS, upper=True), cv.Required(CONF_LINE_FREQUENCY): cv.enum(LINE_FREQS, upper=True),
cv.Optional(CONF_CURRENT_PHASES, default="3"): cv.enum( cv.Optional(CONF_CURRENT_PHASES, default="3"): cv.enum(

View file

@ -11,7 +11,6 @@ from esphome.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_PERCENT, UNIT_PERCENT,
@ -33,28 +32,28 @@ CONFIG_SCHEMA = (
cv.GenerateID(): cv.declare_id(BParasite), cv.GenerateID(): cv.declare_id(BParasite),
cv.Required(CONF_MAC_ADDRESS): cv.mac_address, cv.Required(CONF_MAC_ADDRESS): cv.mac_address,
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_BATTERY_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_BATTERY_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 3, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=3,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_MOISTURE): sensor.sensor_schema( cv.Optional(CONF_MOISTURE): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -5,7 +5,6 @@ from esphome.const import (
CONF_ID, CONF_ID,
CONF_RESOLUTION, CONF_RESOLUTION,
DEVICE_CLASS_ILLUMINANCE, DEVICE_CLASS_ILLUMINANCE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_LUX, UNIT_LUX,
CONF_MEASUREMENT_DURATION, CONF_MEASUREMENT_DURATION,
@ -28,7 +27,10 @@ BH1750Sensor = bh1750_ns.class_(
CONF_MEASUREMENT_TIME = "measurement_time" CONF_MEASUREMENT_TIME = "measurement_time"
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_LUX, ICON_EMPTY, 1, DEVICE_CLASS_ILLUMINANCE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_LUX,
accuracy_decimals=1,
device_class=DEVICE_CLASS_ILLUMINANCE,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -7,8 +7,6 @@ from esphome.const import (
CONF_CHANNELS, CONF_CHANNELS,
CONF_VALUE, CONF_VALUE,
CONF_TYPE, CONF_TYPE,
DEVICE_CLASS_EMPTY,
UNIT_EMPTY,
ICON_CHECK_CIRCLE_OUTLINE, ICON_CHECK_CIRCLE_OUTLINE,
CONF_BINARY_SENSOR, CONF_BINARY_SENSOR,
CONF_GROUP, CONF_GROUP,
@ -35,11 +33,9 @@ entry = {
CONFIG_SCHEMA = cv.typed_schema( CONFIG_SCHEMA = cv.typed_schema(
{ {
CONF_GROUP: sensor.sensor_schema( CONF_GROUP: sensor.sensor_schema(
UNIT_EMPTY, icon=ICON_CHECK_CIRCLE_OUTLINE,
ICON_CHECK_CIRCLE_OUTLINE, accuracy_decimals=0,
0, state_class=STATE_CLASS_NONE,
DEVICE_CLASS_EMPTY,
STATE_CLASS_NONE,
).extend( ).extend(
{ {
cv.GenerateID(): cv.declare_id(BinarySensorMap), cv.GenerateID(): cv.declare_id(BinarySensorMap),

View file

@ -2,12 +2,9 @@ import esphome.codegen as cg
import esphome.config_validation as cv import esphome.config_validation as cv
from esphome.components import sensor, ble_client, esp32_ble_tracker from esphome.components import sensor, ble_client, esp32_ble_tracker
from esphome.const import ( from esphome.const import (
DEVICE_CLASS_EMPTY,
CONF_ID, CONF_ID,
CONF_LAMBDA, CONF_LAMBDA,
STATE_CLASS_NONE, STATE_CLASS_NONE,
UNIT_EMPTY,
ICON_EMPTY,
CONF_TRIGGER_ID, CONF_TRIGGER_ID,
CONF_SERVICE_UUID, CONF_SERVICE_UUID,
) )
@ -34,7 +31,8 @@ BLESensorNotifyTrigger = ble_client_ns.class_(
CONFIG_SCHEMA = cv.All( CONFIG_SCHEMA = cv.All(
sensor.sensor_schema( sensor.sensor_schema(
UNIT_EMPTY, ICON_EMPTY, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE accuracy_decimals=0,
state_class=STATE_CLASS_NONE,
) )
.extend( .extend(
{ {

View file

@ -8,7 +8,6 @@ from esphome.const import (
DEVICE_CLASS_SIGNAL_STRENGTH, DEVICE_CLASS_SIGNAL_STRENGTH,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_DECIBEL, UNIT_DECIBEL,
ICON_EMPTY,
) )
DEPENDENCIES = ["esp32_ble_tracker"] DEPENDENCIES = ["esp32_ble_tracker"]
@ -20,11 +19,10 @@ BLERSSISensor = ble_rssi_ns.class_(
CONFIG_SCHEMA = cv.All( CONFIG_SCHEMA = cv.All(
sensor.sensor_schema( sensor.sensor_schema(
UNIT_DECIBEL, unit_of_measurement=UNIT_DECIBEL,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_SIGNAL_STRENGTH,
DEVICE_CLASS_SIGNAL_STRENGTH, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -11,7 +11,6 @@ from esphome.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_HECTOPASCAL, UNIT_HECTOPASCAL,
@ -49,11 +48,10 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(BME280Component), cv.GenerateID(): cv.declare_id(BME280Component),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{ {
cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum( cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum(
@ -62,11 +60,10 @@ CONFIG_SCHEMA = (
} }
), ),
cv.Optional(CONF_PRESSURE): sensor.sensor_schema( cv.Optional(CONF_PRESSURE): sensor.sensor_schema(
UNIT_HECTOPASCAL, unit_of_measurement=UNIT_HECTOPASCAL,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_PRESSURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{ {
cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum( cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum(
@ -75,11 +72,10 @@ CONFIG_SCHEMA = (
} }
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{ {
cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum( cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum(

View file

@ -12,7 +12,6 @@ from esphome.const import (
CONF_OVERSAMPLING, CONF_OVERSAMPLING,
CONF_PRESSURE, CONF_PRESSURE,
CONF_TEMPERATURE, CONF_TEMPERATURE,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
@ -20,7 +19,6 @@ from esphome.const import (
UNIT_OHM, UNIT_OHM,
ICON_GAS_CYLINDER, ICON_GAS_CYLINDER,
UNIT_CELSIUS, UNIT_CELSIUS,
ICON_EMPTY,
UNIT_HECTOPASCAL, UNIT_HECTOPASCAL,
UNIT_PERCENT, UNIT_PERCENT,
) )
@ -59,11 +57,10 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(BME680Component), cv.GenerateID(): cv.declare_id(BME680Component),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{ {
cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum( cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum(
@ -72,11 +69,10 @@ CONFIG_SCHEMA = (
} }
), ),
cv.Optional(CONF_PRESSURE): sensor.sensor_schema( cv.Optional(CONF_PRESSURE): sensor.sensor_schema(
UNIT_HECTOPASCAL, unit_of_measurement=UNIT_HECTOPASCAL,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_PRESSURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{ {
cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum( cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum(
@ -85,11 +81,10 @@ CONFIG_SCHEMA = (
} }
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{ {
cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum( cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum(
@ -98,11 +93,10 @@ CONFIG_SCHEMA = (
} }
), ),
cv.Optional(CONF_GAS_RESISTANCE): sensor.sensor_schema( cv.Optional(CONF_GAS_RESISTANCE): sensor.sensor_schema(
UNIT_OHM, unit_of_measurement=UNIT_OHM,
ICON_GAS_CYLINDER, icon=ICON_GAS_CYLINDER,
1, accuracy_decimals=1,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_IIR_FILTER, default="OFF"): cv.enum( cv.Optional(CONF_IIR_FILTER, default="OFF"): cv.enum(
IIR_FILTER_OPTIONS, upper=True IIR_FILTER_OPTIONS, upper=True

View file

@ -6,13 +6,11 @@ from esphome.const import (
CONF_HUMIDITY, CONF_HUMIDITY,
CONF_PRESSURE, CONF_PRESSURE,
CONF_TEMPERATURE, CONF_TEMPERATURE,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_EMPTY,
UNIT_HECTOPASCAL, UNIT_HECTOPASCAL,
UNIT_OHM, UNIT_OHM,
UNIT_PARTS_PER_MILLION, UNIT_PARTS_PER_MILLION,
@ -54,54 +52,60 @@ CONFIG_SCHEMA = cv.Schema(
{ {
cv.GenerateID(CONF_BME680_BSEC_ID): cv.use_id(BME680BSECComponent), cv.GenerateID(CONF_BME680_BSEC_ID): cv.use_id(BME680BSECComponent),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_THERMOMETER, icon=ICON_THERMOMETER,
1, accuracy_decimals=1,
DEVICE_CLASS_TEMPERATURE, device_class=DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{cv.Optional(CONF_SAMPLE_RATE): cv.enum(SAMPLE_RATE_OPTIONS, upper=True)} {cv.Optional(CONF_SAMPLE_RATE): cv.enum(SAMPLE_RATE_OPTIONS, upper=True)}
), ),
cv.Optional(CONF_PRESSURE): sensor.sensor_schema( cv.Optional(CONF_PRESSURE): sensor.sensor_schema(
UNIT_HECTOPASCAL, unit_of_measurement=UNIT_HECTOPASCAL,
ICON_GAUGE, icon=ICON_GAUGE,
1, accuracy_decimals=1,
DEVICE_CLASS_PRESSURE, device_class=DEVICE_CLASS_PRESSURE,
STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{cv.Optional(CONF_SAMPLE_RATE): cv.enum(SAMPLE_RATE_OPTIONS, upper=True)} {cv.Optional(CONF_SAMPLE_RATE): cv.enum(SAMPLE_RATE_OPTIONS, upper=True)}
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_WATER_PERCENT, icon=ICON_WATER_PERCENT,
1, accuracy_decimals=1,
DEVICE_CLASS_HUMIDITY, device_class=DEVICE_CLASS_HUMIDITY,
STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{cv.Optional(CONF_SAMPLE_RATE): cv.enum(SAMPLE_RATE_OPTIONS, upper=True)} {cv.Optional(CONF_SAMPLE_RATE): cv.enum(SAMPLE_RATE_OPTIONS, upper=True)}
), ),
cv.Optional(CONF_GAS_RESISTANCE): sensor.sensor_schema( cv.Optional(CONF_GAS_RESISTANCE): sensor.sensor_schema(
UNIT_OHM, ICON_GAS_CYLINDER, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_OHM,
icon=ICON_GAS_CYLINDER,
accuracy_decimals=0,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_IAQ): sensor.sensor_schema( cv.Optional(CONF_IAQ): sensor.sensor_schema(
UNIT_IAQ, ICON_GAUGE, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_IAQ,
icon=ICON_GAUGE,
accuracy_decimals=0,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_IAQ_ACCURACY): sensor.sensor_schema( cv.Optional(CONF_IAQ_ACCURACY): sensor.sensor_schema(
UNIT_EMPTY, ICON_ACCURACY, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT icon=ICON_ACCURACY,
accuracy_decimals=0,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CO2_EQUIVALENT): sensor.sensor_schema( cv.Optional(CONF_CO2_EQUIVALENT): sensor.sensor_schema(
UNIT_PARTS_PER_MILLION, unit_of_measurement=UNIT_PARTS_PER_MILLION,
ICON_TEST_TUBE, icon=ICON_TEST_TUBE,
1, accuracy_decimals=1,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_BREATH_VOC_EQUIVALENT): sensor.sensor_schema( cv.Optional(CONF_BREATH_VOC_EQUIVALENT): sensor.sensor_schema(
UNIT_PARTS_PER_MILLION, unit_of_measurement=UNIT_PARTS_PER_MILLION,
ICON_TEST_TUBE, icon=ICON_TEST_TUBE,
1, accuracy_decimals=1,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -9,7 +9,6 @@ from esphome.const import (
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
ICON_EMPTY,
UNIT_HECTOPASCAL, UNIT_HECTOPASCAL,
) )
@ -25,18 +24,16 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(BMP085Component), cv.GenerateID(): cv.declare_id(BMP085Component),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PRESSURE): sensor.sensor_schema( cv.Optional(CONF_PRESSURE): sensor.sensor_schema(
UNIT_HECTOPASCAL, unit_of_measurement=UNIT_HECTOPASCAL,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_PRESSURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -9,7 +9,6 @@ from esphome.const import (
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
ICON_EMPTY,
UNIT_HECTOPASCAL, UNIT_HECTOPASCAL,
CONF_IIR_FILTER, CONF_IIR_FILTER,
CONF_OVERSAMPLING, CONF_OVERSAMPLING,
@ -46,11 +45,10 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(BMP280Component), cv.GenerateID(): cv.declare_id(BMP280Component),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{ {
cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum( cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum(
@ -59,11 +57,10 @@ CONFIG_SCHEMA = (
} }
), ),
cv.Optional(CONF_PRESSURE): sensor.sensor_schema( cv.Optional(CONF_PRESSURE): sensor.sensor_schema(
UNIT_HECTOPASCAL, unit_of_measurement=UNIT_HECTOPASCAL,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_PRESSURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{ {
cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum( cv.Optional(CONF_OVERSAMPLING, default="16X"): cv.enum(

View file

@ -3,7 +3,6 @@ import esphome.config_validation as cv
from esphome.components import i2c, sensor from esphome.components import i2c, sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_EMPTY,
ICON_RADIATOR, ICON_RADIATOR,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_PARTS_PER_MILLION, UNIT_PARTS_PER_MILLION,
@ -28,18 +27,16 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(CCS811Component), cv.GenerateID(): cv.declare_id(CCS811Component),
cv.Required(CONF_ECO2): sensor.sensor_schema( cv.Required(CONF_ECO2): sensor.sensor_schema(
UNIT_PARTS_PER_MILLION, unit_of_measurement=UNIT_PARTS_PER_MILLION,
ICON_MOLECULE_CO2, icon=ICON_MOLECULE_CO2,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Required(CONF_TVOC): sensor.sensor_schema( cv.Required(CONF_TVOC): sensor.sensor_schema(
UNIT_PARTS_PER_BILLION, unit_of_measurement=UNIT_PARTS_PER_BILLION,
ICON_RADIATOR, icon=ICON_RADIATOR,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_BASELINE): cv.hex_uint16_t, cv.Optional(CONF_BASELINE): cv.hex_uint16_t,
cv.Optional(CONF_TEMPERATURE): cv.use_id(sensor.Sensor), cv.Optional(CONF_TEMPERATURE): cv.use_id(sensor.Sensor),

View file

@ -9,7 +9,6 @@ from esphome.const import (
UNIT_VOLT, UNIT_VOLT,
UNIT_AMPERE, UNIT_AMPERE,
UNIT_WATT, UNIT_WATT,
ICON_EMPTY,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
@ -80,13 +79,19 @@ CONFIG_SCHEMA = cv.All(
cv.Optional(CONF_VOLTAGE_HPF, default=True): cv.boolean, cv.Optional(CONF_VOLTAGE_HPF, default=True): cv.boolean,
cv.Optional(CONF_PULSE_ENERGY, default=10.0): validate_energy, cv.Optional(CONF_PULSE_ENERGY, default=10.0): validate_energy,
cv.Optional(CONF_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 0, DEVICE_CLASS_VOLTAGE unit_of_measurement=UNIT_VOLT,
accuracy_decimals=0,
device_class=DEVICE_CLASS_VOLTAGE,
), ),
cv.Optional(CONF_CURRENT): sensor.sensor_schema( cv.Optional(CONF_CURRENT): sensor.sensor_schema(
UNIT_AMPERE, ICON_EMPTY, 1, DEVICE_CLASS_CURRENT unit_of_measurement=UNIT_AMPERE,
accuracy_decimals=1,
device_class=DEVICE_CLASS_CURRENT,
), ),
cv.Optional(CONF_POWER): sensor.sensor_schema( cv.Optional(CONF_POWER): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 0, DEVICE_CLASS_POWER unit_of_measurement=UNIT_WATT,
accuracy_decimals=0,
device_class=DEVICE_CLASS_POWER,
), ),
} }
) )

View file

@ -9,7 +9,6 @@ from esphome.const import (
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_VOLT, UNIT_VOLT,
UNIT_AMPERE, UNIT_AMPERE,
@ -28,17 +27,22 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(CSE7766Component), cv.GenerateID(): cv.declare_id(CSE7766Component),
cv.Optional(CONF_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 1, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=1,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CURRENT): sensor.sensor_schema( cv.Optional(CONF_CURRENT): sensor.sensor_schema(
UNIT_AMPERE, unit_of_measurement=UNIT_AMPERE,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_CURRENT,
DEVICE_CLASS_CURRENT, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_POWER): sensor.sensor_schema( cv.Optional(CONF_POWER): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 1, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=1,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -5,7 +5,6 @@ from esphome.const import (
CONF_SENSOR, CONF_SENSOR,
CONF_ID, CONF_ID,
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_AMPERE, UNIT_AMPERE,
) )
@ -20,7 +19,10 @@ CTClampSensor = ct_clamp_ns.class_("CTClampSensor", sensor.Sensor, cg.PollingCom
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_AMPERE, ICON_EMPTY, 2, DEVICE_CLASS_CURRENT, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_AMPERE,
accuracy_decimals=2,
device_class=DEVICE_CLASS_CURRENT,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_INDEX, CONF_INDEX,
CONF_RESOLUTION, CONF_RESOLUTION,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
CONF_ID, CONF_ID,
@ -18,7 +17,10 @@ DallasTemperatureSensor = dallas_ns.class_("DallasTemperatureSensor", sensor.Sen
CONFIG_SCHEMA = cv.All( CONFIG_SCHEMA = cv.All(
sensor.sensor_schema( sensor.sensor_schema(
UNIT_CELSIUS, ICON_EMPTY, 1, DEVICE_CLASS_TEMPERATURE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_CELSIUS,
accuracy_decimals=1,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{ {
cv.GenerateID(): cv.declare_id(DallasTemperatureSensor), cv.GenerateID(): cv.declare_id(DallasTemperatureSensor),

View file

@ -8,7 +8,6 @@ from esphome.const import (
CONF_MODEL, CONF_MODEL,
CONF_PIN, CONF_PIN,
CONF_TEMPERATURE, CONF_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_PERCENT, UNIT_PERCENT,
@ -36,14 +35,16 @@ CONFIG_SCHEMA = cv.Schema(
cv.GenerateID(): cv.declare_id(DHT), cv.GenerateID(): cv.declare_id(DHT),
cv.Required(CONF_PIN): pins.gpio_input_pin_schema, cv.Required(CONF_PIN): pins.gpio_input_pin_schema,
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, ICON_EMPTY, 0, DEVICE_CLASS_HUMIDITY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_PERCENT,
accuracy_decimals=0,
device_class=DEVICE_CLASS_HUMIDITY,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_MODEL, default="auto detect"): cv.enum( cv.Optional(CONF_MODEL, default="auto detect"): cv.enum(
DHT_MODELS, upper=True, space="_" DHT_MODELS, upper=True, space="_"

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_TEMPERATURE, CONF_TEMPERATURE,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
ICON_EMPTY,
UNIT_PERCENT, UNIT_PERCENT,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
@ -23,18 +22,16 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(DHT12Component), cv.GenerateID(): cv.declare_id(DHT12Component),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -5,7 +5,6 @@ from esphome.components import sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
CONF_PIN, CONF_PIN,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_PERCENT, UNIT_PERCENT,
ICON_PERCENT, ICON_PERCENT,
@ -18,7 +17,10 @@ DutyCycleSensor = duty_cycle_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_PERCENT, ICON_PERCENT, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_PERCENT,
icon=ICON_PERCENT,
accuracy_decimals=1,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -3,7 +3,6 @@ import esphome.config_validation as cv
from esphome.components import sensor from esphome.components import sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_EMPTY,
ESP_PLATFORM_ESP32, ESP_PLATFORM_ESP32,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_MICROTESLA, UNIT_MICROTESLA,
@ -19,7 +18,10 @@ ESP32HallSensor = esp32_hall_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_MICROTESLA, ICON_MAGNET, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_MICROTESLA,
icon=ICON_MAGNET,
accuracy_decimals=1,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -8,15 +8,12 @@ from esphome.const import (
CONF_LAST_FINGER_ID, CONF_LAST_FINGER_ID,
CONF_SECURITY_LEVEL, CONF_SECURITY_LEVEL,
CONF_STATUS, CONF_STATUS,
DEVICE_CLASS_EMPTY,
ICON_ACCOUNT, ICON_ACCOUNT,
ICON_ACCOUNT_CHECK, ICON_ACCOUNT_CHECK,
ICON_DATABASE, ICON_DATABASE,
ICON_EMPTY,
ICON_FINGERPRINT, ICON_FINGERPRINT,
ICON_SECURITY, ICON_SECURITY,
STATE_CLASS_NONE, STATE_CLASS_NONE,
UNIT_EMPTY,
) )
from . import CONF_FINGERPRINT_GROW_ID, FingerprintGrowComponent from . import CONF_FINGERPRINT_GROW_ID, FingerprintGrowComponent
@ -26,22 +23,33 @@ CONFIG_SCHEMA = cv.Schema(
{ {
cv.GenerateID(CONF_FINGERPRINT_GROW_ID): cv.use_id(FingerprintGrowComponent), cv.GenerateID(CONF_FINGERPRINT_GROW_ID): cv.use_id(FingerprintGrowComponent),
cv.Optional(CONF_FINGERPRINT_COUNT): sensor.sensor_schema( cv.Optional(CONF_FINGERPRINT_COUNT): sensor.sensor_schema(
UNIT_EMPTY, ICON_FINGERPRINT, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE icon=ICON_FINGERPRINT,
accuracy_decimals=0,
state_class=STATE_CLASS_NONE,
), ),
cv.Optional(CONF_STATUS): sensor.sensor_schema( cv.Optional(CONF_STATUS): sensor.sensor_schema(
UNIT_EMPTY, ICON_EMPTY, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE accuracy_decimals=0,
state_class=STATE_CLASS_NONE,
), ),
cv.Optional(CONF_CAPACITY): sensor.sensor_schema( cv.Optional(CONF_CAPACITY): sensor.sensor_schema(
UNIT_EMPTY, ICON_DATABASE, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE icon=ICON_DATABASE,
accuracy_decimals=0,
state_class=STATE_CLASS_NONE,
), ),
cv.Optional(CONF_SECURITY_LEVEL): sensor.sensor_schema( cv.Optional(CONF_SECURITY_LEVEL): sensor.sensor_schema(
UNIT_EMPTY, ICON_SECURITY, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE icon=ICON_SECURITY,
accuracy_decimals=0,
state_class=STATE_CLASS_NONE,
), ),
cv.Optional(CONF_LAST_FINGER_ID): sensor.sensor_schema( cv.Optional(CONF_LAST_FINGER_ID): sensor.sensor_schema(
UNIT_EMPTY, ICON_ACCOUNT, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE icon=ICON_ACCOUNT,
accuracy_decimals=0,
state_class=STATE_CLASS_NONE,
), ),
cv.Optional(CONF_LAST_CONFIDENCE): sensor.sensor_schema( cv.Optional(CONF_LAST_CONFIDENCE): sensor.sensor_schema(
UNIT_EMPTY, ICON_ACCOUNT_CHECK, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE icon=ICON_ACCOUNT_CHECK,
accuracy_decimals=0,
state_class=STATE_CLASS_NONE,
), ),
} }
) )

View file

@ -15,9 +15,6 @@ from esphome.const import (
UNIT_DEGREES, UNIT_DEGREES,
UNIT_KILOMETER_PER_HOUR, UNIT_KILOMETER_PER_HOUR,
UNIT_METER, UNIT_METER,
UNIT_EMPTY,
ICON_EMPTY,
DEVICE_CLASS_EMPTY,
) )
DEPENDENCIES = ["uart"] DEPENDENCIES = ["uart"]
@ -36,26 +33,33 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(GPS), cv.GenerateID(): cv.declare_id(GPS),
cv.Optional(CONF_LATITUDE): sensor.sensor_schema( cv.Optional(CONF_LATITUDE): sensor.sensor_schema(
UNIT_DEGREES, ICON_EMPTY, 6, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE unit_of_measurement=UNIT_DEGREES,
accuracy_decimals=6,
state_class=STATE_CLASS_NONE,
), ),
cv.Optional(CONF_LONGITUDE): sensor.sensor_schema( cv.Optional(CONF_LONGITUDE): sensor.sensor_schema(
UNIT_DEGREES, ICON_EMPTY, 6, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE unit_of_measurement=UNIT_DEGREES,
accuracy_decimals=6,
state_class=STATE_CLASS_NONE,
), ),
cv.Optional(CONF_SPEED): sensor.sensor_schema( cv.Optional(CONF_SPEED): sensor.sensor_schema(
UNIT_KILOMETER_PER_HOUR, unit_of_measurement=UNIT_KILOMETER_PER_HOUR,
ICON_EMPTY, accuracy_decimals=6,
6, state_class=STATE_CLASS_NONE,
DEVICE_CLASS_EMPTY,
STATE_CLASS_NONE,
), ),
cv.Optional(CONF_COURSE): sensor.sensor_schema( cv.Optional(CONF_COURSE): sensor.sensor_schema(
UNIT_DEGREES, ICON_EMPTY, 2, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE unit_of_measurement=UNIT_DEGREES,
accuracy_decimals=2,
state_class=STATE_CLASS_NONE,
), ),
cv.Optional(CONF_ALTITUDE): sensor.sensor_schema( cv.Optional(CONF_ALTITUDE): sensor.sensor_schema(
UNIT_METER, ICON_EMPTY, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE unit_of_measurement=UNIT_METER,
accuracy_decimals=1,
state_class=STATE_CLASS_NONE,
), ),
cv.Optional(CONF_SATELLITES): sensor.sensor_schema( cv.Optional(CONF_SATELLITES): sensor.sensor_schema(
UNIT_EMPTY, ICON_EMPTY, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT accuracy_decimals=0,
state_class=STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -9,12 +9,10 @@ from esphome.const import (
CONF_REACTIVE_POWER, CONF_REACTIVE_POWER,
CONF_VOLTAGE, CONF_VOLTAGE,
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_ENERGY, DEVICE_CLASS_ENERGY,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_CURRENT_AC, ICON_CURRENT_AC,
ICON_EMPTY,
LAST_RESET_TYPE_AUTO, LAST_RESET_TYPE_AUTO,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
STATE_CLASS_NONE, STATE_CLASS_NONE,
@ -63,24 +61,47 @@ HavellsSolar = havells_solar_ns.class_(
) )
PHASE_SENSORS = { PHASE_SENSORS = {
CONF_VOLTAGE: sensor.sensor_schema(UNIT_VOLT, ICON_EMPTY, 2, DEVICE_CLASS_VOLTAGE), CONF_VOLTAGE: sensor.sensor_schema(
unit_of_measurement=UNIT_VOLT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_VOLTAGE,
),
CONF_CURRENT: sensor.sensor_schema( CONF_CURRENT: sensor.sensor_schema(
UNIT_AMPERE, ICON_EMPTY, 2, DEVICE_CLASS_CURRENT, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_AMPERE,
accuracy_decimals=2,
device_class=DEVICE_CLASS_CURRENT,
state_class=STATE_CLASS_MEASUREMENT,
), ),
} }
PV_SENSORS = { PV_SENSORS = {
CONF_VOLTAGE: sensor.sensor_schema(UNIT_VOLT, ICON_EMPTY, 2, DEVICE_CLASS_VOLTAGE), CONF_VOLTAGE: sensor.sensor_schema(
unit_of_measurement=UNIT_VOLT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_VOLTAGE,
),
CONF_CURRENT: sensor.sensor_schema( CONF_CURRENT: sensor.sensor_schema(
UNIT_AMPERE, ICON_EMPTY, 2, DEVICE_CLASS_CURRENT, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_AMPERE,
accuracy_decimals=2,
device_class=DEVICE_CLASS_CURRENT,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_ACTIVE_POWER: sensor.sensor_schema( CONF_ACTIVE_POWER: sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 0, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=0,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_VOLTAGE_SAMPLED_BY_SECONDARY_CPU: sensor.sensor_schema( CONF_VOLTAGE_SAMPLED_BY_SECONDARY_CPU: sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 0, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=0,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_INSULATION_OF_P_TO_GROUND: sensor.sensor_schema( CONF_INSULATION_OF_P_TO_GROUND: sensor.sensor_schema(
UNIT_KOHM, ICON_EMPTY, 0, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_KOHM,
accuracy_decimals=0,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
} }
@ -101,107 +122,86 @@ CONFIG_SCHEMA = (
cv.Optional(CONF_PV1): PV_SCHEMA, cv.Optional(CONF_PV1): PV_SCHEMA,
cv.Optional(CONF_PV2): PV_SCHEMA, cv.Optional(CONF_PV2): PV_SCHEMA,
cv.Optional(CONF_FREQUENCY): sensor.sensor_schema( cv.Optional(CONF_FREQUENCY): sensor.sensor_schema(
UNIT_HERTZ, unit_of_measurement=UNIT_HERTZ,
ICON_CURRENT_AC, icon=ICON_CURRENT_AC,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_ACTIVE_POWER): sensor.sensor_schema( cv.Optional(CONF_ACTIVE_POWER): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 0, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=0,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_REACTIVE_POWER): sensor.sensor_schema( cv.Optional(CONF_REACTIVE_POWER): sensor.sensor_schema(
UNIT_VOLT_AMPS_REACTIVE, unit_of_measurement=UNIT_VOLT_AMPS_REACTIVE,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_POWER,
DEVICE_CLASS_POWER, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_ENERGY_PRODUCTION_DAY): sensor.sensor_schema( cv.Optional(CONF_ENERGY_PRODUCTION_DAY): sensor.sensor_schema(
UNIT_KILOWATT_HOURS, unit_of_measurement=UNIT_KILOWATT_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
cv.Optional(CONF_TOTAL_ENERGY_PRODUCTION): sensor.sensor_schema( cv.Optional(CONF_TOTAL_ENERGY_PRODUCTION): sensor.sensor_schema(
UNIT_KILOWATT_HOURS, unit_of_measurement=UNIT_KILOWATT_HOURS,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
cv.Optional(CONF_TOTAL_GENERATION_TIME): sensor.sensor_schema( cv.Optional(CONF_TOTAL_GENERATION_TIME): sensor.sensor_schema(
UNIT_HOURS, unit_of_measurement=UNIT_HOURS,
ICON_EMPTY, accuracy_decimals=0,
0, state_class=STATE_CLASS_NONE,
DEVICE_CLASS_EMPTY,
STATE_CLASS_NONE,
), ),
cv.Optional(CONF_TODAY_GENERATION_TIME): sensor.sensor_schema( cv.Optional(CONF_TODAY_GENERATION_TIME): sensor.sensor_schema(
UNIT_MINUTE, unit_of_measurement=UNIT_MINUTE,
ICON_EMPTY, accuracy_decimals=0,
0, state_class=STATE_CLASS_NONE,
DEVICE_CLASS_EMPTY,
STATE_CLASS_NONE,
), ),
cv.Optional(CONF_INVERTER_MODULE_TEMP): sensor.sensor_schema( cv.Optional(CONF_INVERTER_MODULE_TEMP): sensor.sensor_schema(
UNIT_DEGREES, unit_of_measurement=UNIT_DEGREES,
ICON_EMPTY, accuracy_decimals=0,
0, state_class=STATE_CLASS_MEASUREMENT,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_INVERTER_INNER_TEMP): sensor.sensor_schema( cv.Optional(CONF_INVERTER_INNER_TEMP): sensor.sensor_schema(
UNIT_DEGREES, unit_of_measurement=UNIT_DEGREES,
ICON_EMPTY, accuracy_decimals=0,
0, state_class=STATE_CLASS_MEASUREMENT,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_INVERTER_BUS_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_INVERTER_BUS_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, unit_of_measurement=UNIT_VOLT,
ICON_EMPTY, accuracy_decimals=0,
0, state_class=STATE_CLASS_MEASUREMENT,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_INSULATION_OF_PV_N_TO_GROUND): sensor.sensor_schema( cv.Optional(CONF_INSULATION_OF_PV_N_TO_GROUND): sensor.sensor_schema(
UNIT_KOHM, unit_of_measurement=UNIT_KOHM,
ICON_EMPTY, accuracy_decimals=0,
0, state_class=STATE_CLASS_MEASUREMENT,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_GFCI_VALUE): sensor.sensor_schema( cv.Optional(CONF_GFCI_VALUE): sensor.sensor_schema(
UNIT_MILLIAMPERE, unit_of_measurement=UNIT_MILLIAMPERE,
ICON_EMPTY, accuracy_decimals=0,
0, state_class=STATE_CLASS_MEASUREMENT,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_DCI_OF_R): sensor.sensor_schema( cv.Optional(CONF_DCI_OF_R): sensor.sensor_schema(
UNIT_MILLIAMPERE, unit_of_measurement=UNIT_MILLIAMPERE,
ICON_EMPTY, accuracy_decimals=0,
0, state_class=STATE_CLASS_MEASUREMENT,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_DCI_OF_S): sensor.sensor_schema( cv.Optional(CONF_DCI_OF_S): sensor.sensor_schema(
UNIT_MILLIAMPERE, unit_of_measurement=UNIT_MILLIAMPERE,
ICON_EMPTY, accuracy_decimals=0,
0, state_class=STATE_CLASS_MEASUREMENT,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_DCI_OF_T): sensor.sensor_schema( cv.Optional(CONF_DCI_OF_T): sensor.sensor_schema(
UNIT_MILLIAMPERE, unit_of_measurement=UNIT_MILLIAMPERE,
ICON_EMPTY, accuracy_decimals=0,
0, state_class=STATE_CLASS_MEASUREMENT,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_TEMPERATURE, CONF_TEMPERATURE,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_PERCENT, UNIT_PERCENT,
@ -25,18 +24,16 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(HDC1080Component), cv.GenerateID(): cv.declare_id(HDC1080Component),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -18,7 +18,6 @@ from esphome.const import (
DEVICE_CLASS_ENERGY, DEVICE_CLASS_ENERGY,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
LAST_RESET_TYPE_AUTO, LAST_RESET_TYPE_AUTO,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_VOLT, UNIT_VOLT,
@ -58,21 +57,29 @@ CONFIG_SCHEMA = cv.Schema(
pins.internal_gpio_input_pullup_pin_schema, pins.validate_has_interrupt pins.internal_gpio_input_pullup_pin_schema, pins.validate_has_interrupt
), ),
cv.Optional(CONF_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 1, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=1,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CURRENT): sensor.sensor_schema( cv.Optional(CONF_CURRENT): sensor.sensor_schema(
UNIT_AMPERE, ICON_EMPTY, 2, DEVICE_CLASS_CURRENT, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_AMPERE,
accuracy_decimals=2,
device_class=DEVICE_CLASS_CURRENT,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_POWER): sensor.sensor_schema( cv.Optional(CONF_POWER): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 1, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=1,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_ENERGY): sensor.sensor_schema( cv.Optional(CONF_ENERGY): sensor.sensor_schema(
UNIT_WATT_HOURS, unit_of_measurement=UNIT_WATT_HOURS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
cv.Optional(CONF_CURRENT_RESISTOR, default=0.001): cv.resistance, cv.Optional(CONF_CURRENT_RESISTOR, default=0.001): cv.resistance,
cv.Optional(CONF_VOLTAGE_DIVIDER, default=2351): cv.positive_float, cv.Optional(CONF_VOLTAGE_DIVIDER, default=2351): cv.positive_float,

View file

@ -6,7 +6,6 @@ from esphome.const import (
CONF_PM_2_5, CONF_PM_2_5,
CONF_PM_10_0, CONF_PM_10_0,
CONF_PM_1_0, CONF_PM_1_0,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_MICROGRAMS_PER_CUBIC_METER, UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, ICON_CHEMICAL_WEAPON,
@ -43,32 +42,28 @@ CONFIG_SCHEMA = cv.All(
{ {
cv.GenerateID(): cv.declare_id(HM3301Component), cv.GenerateID(): cv.declare_id(HM3301Component),
cv.Optional(CONF_PM_1_0): sensor.sensor_schema( cv.Optional(CONF_PM_1_0): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PM_2_5): sensor.sensor_schema( cv.Optional(CONF_PM_2_5): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PM_10_0): sensor.sensor_schema( cv.Optional(CONF_PM_10_0): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_AQI): sensor.sensor_schema( cv.Optional(CONF_AQI): sensor.sensor_schema(
UNIT_INDEX, unit_of_measurement=UNIT_INDEX,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{ {
cv.Required(CONF_CALCULATION_TYPE): cv.enum( cv.Required(CONF_CALCULATION_TYPE): cv.enum(

View file

@ -6,7 +6,6 @@ from esphome.const import (
CONF_ID, CONF_ID,
CONF_OVERSAMPLING, CONF_OVERSAMPLING,
CONF_RANGE, CONF_RANGE,
DEVICE_CLASS_EMPTY,
ICON_MAGNET, ICON_MAGNET,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
STATE_CLASS_NONE, STATE_CLASS_NONE,
@ -80,10 +79,16 @@ def validate_enum(enum_values, units=None, int=True):
field_strength_schema = sensor.sensor_schema( field_strength_schema = sensor.sensor_schema(
UNIT_MICROTESLA, ICON_MAGNET, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_MICROTESLA,
icon=ICON_MAGNET,
accuracy_decimals=1,
state_class=STATE_CLASS_MEASUREMENT,
) )
heading_schema = sensor.sensor_schema( heading_schema = sensor.sensor_schema(
UNIT_DEGREES, ICON_SCREEN_ROTATION, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE unit_of_measurement=UNIT_DEGREES,
icon=ICON_SCREEN_ROTATION,
accuracy_decimals=1,
state_class=STATE_CLASS_NONE,
) )
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (

View file

@ -5,10 +5,7 @@ from esphome.const import (
CONF_ATTRIBUTE, CONF_ATTRIBUTE,
CONF_ENTITY_ID, CONF_ENTITY_ID,
CONF_ID, CONF_ID,
ICON_EMPTY,
STATE_CLASS_NONE, STATE_CLASS_NONE,
UNIT_EMPTY,
DEVICE_CLASS_EMPTY,
) )
from .. import homeassistant_ns from .. import homeassistant_ns
@ -19,7 +16,8 @@ HomeassistantSensor = homeassistant_ns.class_(
) )
CONFIG_SCHEMA = sensor.sensor_schema( CONFIG_SCHEMA = sensor.sensor_schema(
UNIT_EMPTY, ICON_EMPTY, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE accuracy_decimals=1,
state_class=STATE_CLASS_NONE,
).extend( ).extend(
{ {
cv.GenerateID(): cv.declare_id(HomeassistantSensor), cv.GenerateID(): cv.declare_id(HomeassistantSensor),

View file

@ -3,7 +3,6 @@ import esphome.config_validation as cv
from esphome.components import sensor, uart from esphome.components import sensor, uart
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_METER, UNIT_METER,
ICON_ARROW_EXPAND_VERTICAL, ICON_ARROW_EXPAND_VERTICAL,
@ -19,11 +18,10 @@ HrxlMaxsonarWrComponent = hrxlmaxsonarwr_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_METER, unit_of_measurement=UNIT_METER,
ICON_ARROW_EXPAND_VERTICAL, icon=ICON_ARROW_EXPAND_VERTICAL,
3, accuracy_decimals=3,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_TEMPERATURE, CONF_TEMPERATURE,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_PERCENT, UNIT_PERCENT,
@ -25,18 +24,16 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(HTU21DComponent), cv.GenerateID(): cv.declare_id(HTU21DComponent),
cv.Required(CONF_TEMPERATURE): sensor.sensor_schema( cv.Required(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Required(CONF_HUMIDITY): sensor.sensor_schema( cv.Required(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -6,10 +6,8 @@ from esphome.const import (
CONF_CLK_PIN, CONF_CLK_PIN,
CONF_GAIN, CONF_GAIN,
CONF_ID, CONF_ID,
DEVICE_CLASS_EMPTY,
ICON_SCALE, ICON_SCALE,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_EMPTY,
) )
hx711_ns = cg.esphome_ns.namespace("hx711") hx711_ns = cg.esphome_ns.namespace("hx711")
@ -26,7 +24,9 @@ GAINS = {
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_EMPTY, ICON_SCALE, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT icon=ICON_SCALE,
accuracy_decimals=0,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -13,7 +13,6 @@ from esphome.const import (
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_VOLT, UNIT_VOLT,
UNIT_AMPERE, UNIT_AMPERE,
@ -32,20 +31,28 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(INA219Component), cv.GenerateID(): cv.declare_id(INA219Component),
cv.Optional(CONF_BUS_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_BUS_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 2, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_SHUNT_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_SHUNT_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 2, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CURRENT): sensor.sensor_schema( cv.Optional(CONF_CURRENT): sensor.sensor_schema(
UNIT_AMPERE, unit_of_measurement=UNIT_AMPERE,
ICON_EMPTY, accuracy_decimals=3,
3, device_class=DEVICE_CLASS_CURRENT,
DEVICE_CLASS_CURRENT, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_POWER): sensor.sensor_schema( cv.Optional(CONF_POWER): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 2, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_SHUNT_RESISTANCE, default=0.1): cv.All( cv.Optional(CONF_SHUNT_RESISTANCE, default=0.1): cv.All(
cv.resistance, cv.Range(min=0.0, max=32.0) cv.resistance, cv.Range(min=0.0, max=32.0)

View file

@ -12,7 +12,6 @@ from esphome.const import (
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_VOLT, UNIT_VOLT,
UNIT_AMPERE, UNIT_AMPERE,
@ -31,20 +30,28 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(INA226Component), cv.GenerateID(): cv.declare_id(INA226Component),
cv.Optional(CONF_BUS_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_BUS_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 2, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_SHUNT_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_SHUNT_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 2, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CURRENT): sensor.sensor_schema( cv.Optional(CONF_CURRENT): sensor.sensor_schema(
UNIT_AMPERE, unit_of_measurement=UNIT_AMPERE,
ICON_EMPTY, accuracy_decimals=3,
3, device_class=DEVICE_CLASS_CURRENT,
DEVICE_CLASS_CURRENT, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_POWER): sensor.sensor_schema( cv.Optional(CONF_POWER): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 2, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_SHUNT_RESISTANCE, default=0.1): cv.All( cv.Optional(CONF_SHUNT_RESISTANCE, default=0.1): cv.All(
cv.resistance, cv.Range(min=0.0) cv.resistance, cv.Range(min=0.0)

View file

@ -11,7 +11,6 @@ from esphome.const import (
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_VOLT, UNIT_VOLT,
UNIT_AMPERE, UNIT_AMPERE,
@ -32,16 +31,28 @@ INA3221Component = ina3221_ns.class_(
INA3221_CHANNEL_SCHEMA = cv.Schema( INA3221_CHANNEL_SCHEMA = cv.Schema(
{ {
cv.Optional(CONF_BUS_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_BUS_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 2, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_SHUNT_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_SHUNT_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 2, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CURRENT): sensor.sensor_schema( cv.Optional(CONF_CURRENT): sensor.sensor_schema(
UNIT_AMPERE, ICON_EMPTY, 2, DEVICE_CLASS_CURRENT, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_AMPERE,
accuracy_decimals=2,
device_class=DEVICE_CLASS_CURRENT,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_POWER): sensor.sensor_schema( cv.Optional(CONF_POWER): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 2, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_SHUNT_RESISTANCE, default=0.1): cv.All( cv.Optional(CONF_SHUNT_RESISTANCE, default=0.1): cv.All(
cv.resistance, cv.Range(min=0.0, max=32.0) cv.resistance, cv.Range(min=0.0, max=32.0)

View file

@ -9,7 +9,6 @@ from esphome.const import (
DEVICE_CLASS_BATTERY, DEVICE_CLASS_BATTERY,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_PERCENT, UNIT_PERCENT,
@ -32,32 +31,28 @@ CONFIG_SCHEMA = (
cv.GenerateID(): cv.declare_id(InkbirdUBSTH1_MINI), cv.GenerateID(): cv.declare_id(InkbirdUBSTH1_MINI),
cv.Required(CONF_MAC_ADDRESS): cv.mac_address, cv.Required(CONF_MAC_ADDRESS): cv.mac_address,
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_EXTERNAL_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_EXTERNAL_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_BATTERY_LEVEL): sensor.sensor_schema( cv.Optional(CONF_BATTERY_LEVEL): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_BATTERY,
DEVICE_CLASS_BATTERY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -5,7 +5,6 @@ from esphome.const import (
CONF_ID, CONF_ID,
CONF_REFERENCE_TEMPERATURE, CONF_REFERENCE_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
) )
@ -16,16 +15,19 @@ MAX31855Sensor = max31855_ns.class_(
) )
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema(UNIT_CELSIUS, ICON_EMPTY, 1, DEVICE_CLASS_TEMPERATURE) sensor.sensor_schema(
unit_of_measurement=UNIT_CELSIUS,
accuracy_decimals=1,
device_class=DEVICE_CLASS_TEMPERATURE,
)
.extend( .extend(
{ {
cv.GenerateID(): cv.declare_id(MAX31855Sensor), cv.GenerateID(): cv.declare_id(MAX31855Sensor),
cv.Optional(CONF_REFERENCE_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_REFERENCE_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -5,7 +5,6 @@ from esphome.const import (
CONF_ID, CONF_ID,
CONF_MAINS_FILTER, CONF_MAINS_FILTER,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
) )
@ -23,11 +22,10 @@ FILTER = {
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -8,7 +8,6 @@ from esphome.const import (
CONF_RTD_NOMINAL_RESISTANCE, CONF_RTD_NOMINAL_RESISTANCE,
CONF_RTD_WIRES, CONF_RTD_WIRES,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
) )
@ -26,7 +25,10 @@ FILTER = {
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_CELSIUS, ICON_EMPTY, 2, DEVICE_CLASS_TEMPERATURE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_CELSIUS,
accuracy_decimals=2,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -4,7 +4,6 @@ from esphome.components import sensor, spi
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
) )
@ -16,7 +15,10 @@ MAX6675Sensor = max6675_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_CELSIUS, ICON_EMPTY, 1, DEVICE_CLASS_TEMPERATURE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_CELSIUS,
accuracy_decimals=1,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -4,7 +4,6 @@ from esphome.components import i2c, sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
) )
@ -19,7 +18,10 @@ MCP9808Sensor = mcp9808_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_CELSIUS, ICON_EMPTY, 1, DEVICE_CLASS_TEMPERATURE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_CELSIUS,
accuracy_decimals=1,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -7,13 +7,11 @@ from esphome.const import (
CONF_CO2, CONF_CO2,
CONF_ID, CONF_ID,
CONF_TEMPERATURE, CONF_TEMPERATURE,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_MOLECULE_CO2, ICON_MOLECULE_CO2,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_PARTS_PER_MILLION, UNIT_PARTS_PER_MILLION,
UNIT_CELSIUS, UNIT_CELSIUS,
ICON_EMPTY,
) )
DEPENDENCIES = ["uart"] DEPENDENCIES = ["uart"]
@ -33,18 +31,16 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(MHZ19Component), cv.GenerateID(): cv.declare_id(MHZ19Component),
cv.Required(CONF_CO2): sensor.sensor_schema( cv.Required(CONF_CO2): sensor.sensor_schema(
UNIT_PARTS_PER_MILLION, unit_of_measurement=UNIT_PARTS_PER_MILLION,
ICON_MOLECULE_CO2, icon=ICON_MOLECULE_CO2,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_AUTOMATIC_BASELINE_CALIBRATION): cv.boolean, cv.Optional(CONF_AUTOMATIC_BASELINE_CALIBRATION): cv.boolean,
} }

View file

@ -63,21 +63,25 @@ CONFIG_SCHEMA = cv.All(
cv.Optional(CONF_PRESET_SLEEP, default=False): cv.boolean, cv.Optional(CONF_PRESET_SLEEP, default=False): cv.boolean,
cv.Optional(CONF_PRESET_BOOST, default=False): cv.boolean, cv.Optional(CONF_PRESET_BOOST, default=False): cv.boolean,
cv.Optional(CONF_OUTDOOR_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_OUTDOOR_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_THERMOMETER, icon=ICON_THERMOMETER,
0, accuracy_decimals=0,
DEVICE_CLASS_TEMPERATURE, device_class=DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_POWER_USAGE): sensor.sensor_schema( cv.Optional(CONF_POWER_USAGE): sensor.sensor_schema(
UNIT_WATT, ICON_POWER, 0, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
icon=ICON_POWER,
accuracy_decimals=0,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY_SETPOINT): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY_SETPOINT): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_WATER_PERCENT, icon=ICON_WATER_PERCENT,
0, accuracy_decimals=0,
DEVICE_CLASS_HUMIDITY, device_class=DEVICE_CLASS_HUMIDITY,
STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
} }
).extend(cv.COMPONENT_SCHEMA) ).extend(cv.COMPONENT_SCHEMA)

View file

@ -4,10 +4,8 @@ from esphome.components import i2c, sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
CONF_TEMPERATURE, CONF_TEMPERATURE,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_BRIEFCASE_DOWNLOAD, ICON_BRIEFCASE_DOWNLOAD,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_METER_PER_SECOND_SQUARED, UNIT_METER_PER_SECOND_SQUARED,
ICON_SCREEN_ROTATION, ICON_SCREEN_ROTATION,
@ -30,21 +28,22 @@ MPU6050Component = mpu6050_ns.class_(
) )
accel_schema = sensor.sensor_schema( accel_schema = sensor.sensor_schema(
UNIT_METER_PER_SECOND_SQUARED, unit_of_measurement=UNIT_METER_PER_SECOND_SQUARED,
ICON_BRIEFCASE_DOWNLOAD, icon=ICON_BRIEFCASE_DOWNLOAD,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
) )
gyro_schema = sensor.sensor_schema( gyro_schema = sensor.sensor_schema(
UNIT_DEGREE_PER_SECOND, unit_of_measurement=UNIT_DEGREE_PER_SECOND,
ICON_SCREEN_ROTATION, icon=ICON_SCREEN_ROTATION,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
) )
temperature_schema = sensor.sensor_schema( temperature_schema = sensor.sensor_schema(
UNIT_CELSIUS, ICON_EMPTY, 1, DEVICE_CLASS_TEMPERATURE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_CELSIUS,
accuracy_decimals=1,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT,
) )
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (

View file

@ -6,9 +6,6 @@ from esphome.const import (
CONF_QOS, CONF_QOS,
CONF_TOPIC, CONF_TOPIC,
STATE_CLASS_NONE, STATE_CLASS_NONE,
UNIT_EMPTY,
ICON_EMPTY,
DEVICE_CLASS_EMPTY,
) )
from .. import mqtt_subscribe_ns from .. import mqtt_subscribe_ns
@ -21,7 +18,8 @@ MQTTSubscribeSensor = mqtt_subscribe_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_EMPTY, ICON_EMPTY, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE accuracy_decimals=1,
state_class=STATE_CLASS_NONE,
) )
.extend( .extend(
{ {

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_TEMPERATURE, CONF_TEMPERATURE,
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
ICON_GAUGE, ICON_GAUGE,
@ -26,18 +25,17 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(MS5611Component), cv.GenerateID(): cv.declare_id(MS5611Component),
cv.Required(CONF_TEMPERATURE): sensor.sensor_schema( cv.Required(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Required(CONF_PRESSURE): sensor.sensor_schema( cv.Required(CONF_PRESSURE): sensor.sensor_schema(
UNIT_HECTOPASCAL, unit_of_measurement=UNIT_HECTOPASCAL,
ICON_GAUGE, icon=ICON_GAUGE,
1, accuracy_decimals=1,
DEVICE_CLASS_PRESSURE, device_class=DEVICE_CLASS_PRESSURE,
STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -4,10 +4,7 @@ from esphome.components import sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
UNIT_EMPTY,
ICON_EMPTY,
CONF_COMPONENT_ID, CONF_COMPONENT_ID,
DEVICE_CLASS_EMPTY,
) )
from .. import nextion_ns, CONF_NEXTION_ID from .. import nextion_ns, CONF_NEXTION_ID
@ -46,7 +43,9 @@ def _validate(config):
CONFIG_SCHEMA = cv.All( CONFIG_SCHEMA = cv.All(
sensor.sensor_schema(UNIT_EMPTY, ICON_EMPTY, 2, DEVICE_CLASS_EMPTY) sensor.sensor_schema(
accuracy_decimals=2,
)
.extend( .extend(
{ {
cv.GenerateID(): cv.declare_id(NextionSensor), cv.GenerateID(): cv.declare_id(NextionSensor),

View file

@ -12,7 +12,6 @@ from esphome.const import (
CONF_TEMPERATURE, CONF_TEMPERATURE,
CONF_VALUE, CONF_VALUE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
) )
@ -120,7 +119,10 @@ def process_calibration(value):
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_CELSIUS, ICON_EMPTY, 1, DEVICE_CLASS_TEMPERATURE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_CELSIUS,
accuracy_decimals=1,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -3,7 +3,6 @@ import esphome.config_validation as cv
from esphome.components import sensor from esphome.components import sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_PERCENT, UNIT_PERCENT,
ICON_GAUGE, ICON_GAUGE,
@ -30,7 +29,10 @@ PID_CLIMATE_SENSOR_TYPES = {
CONF_CLIMATE_ID = "climate_id" CONF_CLIMATE_ID = "climate_id"
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_PERCENT, ICON_GAUGE, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_PERCENT,
icon=ICON_GAUGE,
accuracy_decimals=1,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -4,7 +4,6 @@ from esphome.components import sensor, uart
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
CONF_PM_2_5, CONF_PM_2_5,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_MICROGRAMS_PER_CUBIC_METER, UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_BLUR, ICON_BLUR,
@ -21,11 +20,10 @@ CONFIG_SCHEMA = cv.All(
{ {
cv.GenerateID(): cv.declare_id(PM1006Component), cv.GenerateID(): cv.declare_id(PM1006Component),
cv.Optional(CONF_PM_2_5): sensor.sensor_schema( cv.Optional(CONF_PM_2_5): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_BLUR, icon=ICON_BLUR,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -10,11 +10,9 @@ from esphome.const import (
CONF_PM_2_5, CONF_PM_2_5,
CONF_TEMPERATURE, CONF_TEMPERATURE,
CONF_TYPE, CONF_TYPE,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_CHEMICAL_WEAPON, ICON_CHEMICAL_WEAPON,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_MICROGRAMS_PER_CUBIC_METER, UNIT_MICROGRAMS_PER_CUBIC_METER,
UNIT_CELSIUS, UNIT_CELSIUS,
@ -63,46 +61,40 @@ CONFIG_SCHEMA = (
cv.GenerateID(): cv.declare_id(PMSX003Component), cv.GenerateID(): cv.declare_id(PMSX003Component),
cv.Required(CONF_TYPE): cv.enum(PMSX003_TYPES, upper=True), cv.Required(CONF_TYPE): cv.enum(PMSX003_TYPES, upper=True),
cv.Optional(CONF_PM_1_0): sensor.sensor_schema( cv.Optional(CONF_PM_1_0): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PM_2_5): sensor.sensor_schema( cv.Optional(CONF_PM_2_5): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PM_10_0): sensor.sensor_schema( cv.Optional(CONF_PM_10_0): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_FORMALDEHYDE): sensor.sensor_schema( cv.Optional(CONF_FORMALDEHYDE): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -11,7 +11,6 @@ from esphome.const import (
CONF_RISING_EDGE, CONF_RISING_EDGE,
CONF_NUMBER, CONF_NUMBER,
CONF_TOTAL, CONF_TOTAL,
DEVICE_CLASS_EMPTY,
ICON_PULSE, ICON_PULSE,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
STATE_CLASS_NONE, STATE_CLASS_NONE,
@ -67,11 +66,10 @@ def validate_count_mode(value):
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_PULSES_PER_MINUTE, unit_of_measurement=UNIT_PULSES_PER_MINUTE,
ICON_PULSE, icon=ICON_PULSE,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {
@ -94,7 +92,10 @@ CONFIG_SCHEMA = (
), ),
cv.Optional(CONF_INTERNAL_FILTER, default="13us"): validate_internal_filter, cv.Optional(CONF_INTERNAL_FILTER, default="13us"): validate_internal_filter,
cv.Optional(CONF_TOTAL): sensor.sensor_schema( cv.Optional(CONF_TOTAL): sensor.sensor_schema(
UNIT_PULSES, ICON_PULSE, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE unit_of_measurement=UNIT_PULSES,
icon=ICON_PULSE,
accuracy_decimals=0,
state_class=STATE_CLASS_NONE,
), ),
} }
) )

View file

@ -15,7 +15,6 @@ from esphome.const import (
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_PULSES, UNIT_PULSES,
UNIT_PULSES_PER_MINUTE, UNIT_PULSES_PER_MINUTE,
DEVICE_CLASS_EMPTY,
) )
from esphome.core import CORE from esphome.core import CORE
@ -51,7 +50,10 @@ def validate_pulse_meter_pin(value):
CONFIG_SCHEMA = sensor.sensor_schema( CONFIG_SCHEMA = sensor.sensor_schema(
UNIT_PULSES_PER_MINUTE, ICON_PULSE, 2, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_PULSES_PER_MINUTE,
icon=ICON_PULSE,
accuracy_decimals=2,
state_class=STATE_CLASS_MEASUREMENT,
).extend( ).extend(
{ {
cv.GenerateID(): cv.declare_id(PulseMeterSensor), cv.GenerateID(): cv.declare_id(PulseMeterSensor),
@ -59,12 +61,11 @@ CONFIG_SCHEMA = sensor.sensor_schema(
cv.Optional(CONF_INTERNAL_FILTER, default="13us"): validate_internal_filter, cv.Optional(CONF_INTERNAL_FILTER, default="13us"): validate_internal_filter,
cv.Optional(CONF_TIMEOUT, default="5min"): validate_timeout, cv.Optional(CONF_TIMEOUT, default="5min"): validate_timeout,
cv.Optional(CONF_TOTAL): sensor.sensor_schema( cv.Optional(CONF_TOTAL): sensor.sensor_schema(
UNIT_PULSES, unit_of_measurement=UNIT_PULSES,
ICON_PULSE, icon=ICON_PULSE,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
} }
) )

View file

@ -5,7 +5,6 @@ from esphome.components import sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
CONF_PIN, CONF_PIN,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_SECOND, UNIT_SECOND,
ICON_TIMER, ICON_TIMER,
@ -19,7 +18,10 @@ PulseWidthSensor = pulse_width_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_SECOND, ICON_TIMER, 3, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_SECOND,
icon=ICON_TIMER,
accuracy_decimals=3,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -12,7 +12,6 @@ from esphome.const import (
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_PERCENT, UNIT_PERCENT,
UNIT_VOLT, UNIT_VOLT,
@ -33,16 +32,24 @@ CONFIG_SCHEMA = (
cv.GenerateID(): cv.declare_id(PVVXMiThermometer), cv.GenerateID(): cv.declare_id(PVVXMiThermometer),
cv.Required(CONF_MAC_ADDRESS): cv.mac_address, cv.Required(CONF_MAC_ADDRESS): cv.mac_address,
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, ICON_EMPTY, 2, DEVICE_CLASS_TEMPERATURE unit_of_measurement=UNIT_CELSIUS,
accuracy_decimals=2,
device_class=DEVICE_CLASS_TEMPERATURE,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, ICON_EMPTY, 2, DEVICE_CLASS_HUMIDITY unit_of_measurement=UNIT_PERCENT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_HUMIDITY,
), ),
cv.Optional(CONF_BATTERY_LEVEL): sensor.sensor_schema( cv.Optional(CONF_BATTERY_LEVEL): sensor.sensor_schema(
UNIT_PERCENT, ICON_EMPTY, 0, DEVICE_CLASS_BATTERY unit_of_measurement=UNIT_PERCENT,
accuracy_decimals=0,
device_class=DEVICE_CLASS_BATTERY,
), ),
cv.Optional(CONF_BATTERY_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_BATTERY_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 3, DEVICE_CLASS_VOLTAGE unit_of_measurement=UNIT_VOLT,
accuracy_decimals=3,
device_class=DEVICE_CLASS_VOLTAGE,
), ),
} }
) )

View file

@ -11,7 +11,6 @@ from esphome.const import (
DEVICE_CLASS_ENERGY, DEVICE_CLASS_ENERGY,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
LAST_RESET_TYPE_AUTO, LAST_RESET_TYPE_AUTO,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_VOLT, UNIT_VOLT,
@ -30,25 +29,29 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(PZEM004T), cv.GenerateID(): cv.declare_id(PZEM004T),
cv.Optional(CONF_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 1, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=1,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CURRENT): sensor.sensor_schema( cv.Optional(CONF_CURRENT): sensor.sensor_schema(
UNIT_AMPERE, unit_of_measurement=UNIT_AMPERE,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_CURRENT,
DEVICE_CLASS_CURRENT, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_POWER): sensor.sensor_schema( cv.Optional(CONF_POWER): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 0, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=0,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_ENERGY): sensor.sensor_schema( cv.Optional(CONF_ENERGY): sensor.sensor_schema(
UNIT_WATT_HOURS, unit_of_measurement=UNIT_WATT_HOURS,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
} }
) )

View file

@ -9,13 +9,11 @@ from esphome.const import (
CONF_VOLTAGE, CONF_VOLTAGE,
CONF_FREQUENCY, CONF_FREQUENCY,
CONF_POWER_FACTOR, CONF_POWER_FACTOR,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_POWER_FACTOR, DEVICE_CLASS_POWER_FACTOR,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_ENERGY, DEVICE_CLASS_ENERGY,
ICON_EMPTY,
ICON_CURRENT_AC, ICON_CURRENT_AC,
LAST_RESET_TYPE_AUTO, LAST_RESET_TYPE_AUTO,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
@ -23,7 +21,6 @@ from esphome.const import (
UNIT_VOLT, UNIT_VOLT,
UNIT_AMPERE, UNIT_AMPERE,
UNIT_WATT, UNIT_WATT,
UNIT_EMPTY,
UNIT_WATT_HOURS, UNIT_WATT_HOURS,
) )
@ -37,39 +34,40 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(PZEMAC), cv.GenerateID(): cv.declare_id(PZEMAC),
cv.Optional(CONF_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 1, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=1,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CURRENT): sensor.sensor_schema( cv.Optional(CONF_CURRENT): sensor.sensor_schema(
UNIT_AMPERE, unit_of_measurement=UNIT_AMPERE,
ICON_EMPTY, accuracy_decimals=3,
3, device_class=DEVICE_CLASS_CURRENT,
DEVICE_CLASS_CURRENT, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_POWER): sensor.sensor_schema( cv.Optional(CONF_POWER): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 2, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_ENERGY): sensor.sensor_schema( cv.Optional(CONF_ENERGY): sensor.sensor_schema(
UNIT_WATT_HOURS, unit_of_measurement=UNIT_WATT_HOURS,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
cv.Optional(CONF_FREQUENCY): sensor.sensor_schema( cv.Optional(CONF_FREQUENCY): sensor.sensor_schema(
UNIT_HERTZ, unit_of_measurement=UNIT_HERTZ,
ICON_CURRENT_AC, icon=ICON_CURRENT_AC,
1, accuracy_decimals=1,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_POWER_FACTOR): sensor.sensor_schema( cv.Optional(CONF_POWER_FACTOR): sensor.sensor_schema(
UNIT_EMPTY, accuracy_decimals=2,
ICON_EMPTY, device_class=DEVICE_CLASS_POWER_FACTOR,
2, state_class=STATE_CLASS_MEASUREMENT,
DEVICE_CLASS_POWER_FACTOR,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -9,7 +9,6 @@ from esphome.const import (
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_VOLT, UNIT_VOLT,
UNIT_AMPERE, UNIT_AMPERE,
@ -26,17 +25,22 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(PZEMDC), cv.GenerateID(): cv.declare_id(PZEMDC),
cv.Optional(CONF_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 1, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=1,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_CURRENT): sensor.sensor_schema( cv.Optional(CONF_CURRENT): sensor.sensor_schema(
UNIT_AMPERE, unit_of_measurement=UNIT_AMPERE,
ICON_EMPTY, accuracy_decimals=3,
3, device_class=DEVICE_CLASS_CURRENT,
DEVICE_CLASS_CURRENT, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_POWER): sensor.sensor_schema( cv.Optional(CONF_POWER): sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 1, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=1,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -6,7 +6,6 @@ from esphome.const import (
CONF_ID, CONF_ID,
CONF_OVERSAMPLING, CONF_OVERSAMPLING,
CONF_RANGE, CONF_RANGE,
DEVICE_CLASS_EMPTY,
ICON_MAGNET, ICON_MAGNET,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
STATE_CLASS_NONE, STATE_CLASS_NONE,
@ -71,10 +70,16 @@ def validate_enum(enum_values, units=None, int=True):
field_strength_schema = sensor.sensor_schema( field_strength_schema = sensor.sensor_schema(
UNIT_MICROTESLA, ICON_MAGNET, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_MICROTESLA,
icon=ICON_MAGNET,
accuracy_decimals=1,
state_class=STATE_CLASS_MEASUREMENT,
) )
heading_schema = sensor.sensor_schema( heading_schema = sensor.sensor_schema(
UNIT_DEGREES, ICON_SCREEN_ROTATION, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE unit_of_measurement=UNIT_DEGREES,
icon=ICON_SCREEN_ROTATION,
accuracy_decimals=1,
state_class=STATE_CLASS_NONE,
) )
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (

View file

@ -3,7 +3,6 @@ import esphome.config_validation as cv
from esphome.components import sensor from esphome.components import sensor
from esphome.const import ( from esphome.const import (
CONF_SENSOR, CONF_SENSOR,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_OHM, UNIT_OHM,
ICON_FLASH, ICON_FLASH,
@ -25,7 +24,10 @@ CONFIGURATIONS = {
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_OHM, ICON_FLASH, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_OHM,
icon=ICON_FLASH,
accuracy_decimals=1,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_RESOLUTION, CONF_RESOLUTION,
CONF_MIN_VALUE, CONF_MIN_VALUE,
CONF_MAX_VALUE, CONF_MAX_VALUE,
DEVICE_CLASS_EMPTY,
STATE_CLASS_NONE, STATE_CLASS_NONE,
UNIT_STEPS, UNIT_STEPS,
ICON_ROTATE_RIGHT, ICON_ROTATE_RIGHT,
@ -58,7 +57,10 @@ def validate_min_max_value(config):
CONFIG_SCHEMA = cv.All( CONFIG_SCHEMA = cv.All(
sensor.sensor_schema( sensor.sensor_schema(
UNIT_STEPS, ICON_ROTATE_RIGHT, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE unit_of_measurement=UNIT_STEPS,
icon=ICON_ROTATE_RIGHT,
accuracy_decimals=0,
state_class=STATE_CLASS_NONE,
) )
.extend( .extend(
{ {

View file

@ -14,13 +14,11 @@ from esphome.const import (
CONF_TX_POWER, CONF_TX_POWER,
CONF_MEASUREMENT_SEQUENCE_NUMBER, CONF_MEASUREMENT_SEQUENCE_NUMBER,
CONF_MOVEMENT_COUNTER, CONF_MOVEMENT_COUNTER,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_SIGNAL_STRENGTH, DEVICE_CLASS_SIGNAL_STRENGTH,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
STATE_CLASS_NONE, STATE_CLASS_NONE,
UNIT_CELSIUS, UNIT_CELSIUS,
@ -29,7 +27,6 @@ from esphome.const import (
UNIT_HECTOPASCAL, UNIT_HECTOPASCAL,
UNIT_G, UNIT_G,
UNIT_DECIBEL_MILLIWATT, UNIT_DECIBEL_MILLIWATT,
UNIT_EMPTY,
ICON_GAUGE, ICON_GAUGE,
ICON_ACCELERATION, ICON_ACCELERATION,
ICON_ACCELERATION_X, ICON_ACCELERATION_X,
@ -52,69 +49,68 @@ CONFIG_SCHEMA = (
cv.GenerateID(): cv.declare_id(RuuviTag), cv.GenerateID(): cv.declare_id(RuuviTag),
cv.Required(CONF_MAC_ADDRESS): cv.mac_address, cv.Required(CONF_MAC_ADDRESS): cv.mac_address,
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PRESSURE): sensor.sensor_schema( cv.Optional(CONF_PRESSURE): sensor.sensor_schema(
UNIT_HECTOPASCAL, unit_of_measurement=UNIT_HECTOPASCAL,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_PRESSURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_ACCELERATION): sensor.sensor_schema( cv.Optional(CONF_ACCELERATION): sensor.sensor_schema(
UNIT_G, unit_of_measurement=UNIT_G,
ICON_ACCELERATION, icon=ICON_ACCELERATION,
3, accuracy_decimals=3,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_ACCELERATION_X): sensor.sensor_schema( cv.Optional(CONF_ACCELERATION_X): sensor.sensor_schema(
UNIT_G, unit_of_measurement=UNIT_G,
ICON_ACCELERATION_X, icon=ICON_ACCELERATION_X,
3, accuracy_decimals=3,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_ACCELERATION_Y): sensor.sensor_schema( cv.Optional(CONF_ACCELERATION_Y): sensor.sensor_schema(
UNIT_G, unit_of_measurement=UNIT_G,
ICON_ACCELERATION_Y, icon=ICON_ACCELERATION_Y,
3, accuracy_decimals=3,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_ACCELERATION_Z): sensor.sensor_schema( cv.Optional(CONF_ACCELERATION_Z): sensor.sensor_schema(
UNIT_G, unit_of_measurement=UNIT_G,
ICON_ACCELERATION_Z, icon=ICON_ACCELERATION_Z,
3, accuracy_decimals=3,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_BATTERY_VOLTAGE): sensor.sensor_schema( cv.Optional(CONF_BATTERY_VOLTAGE): sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 3, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=3,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_TX_POWER): sensor.sensor_schema( cv.Optional(CONF_TX_POWER): sensor.sensor_schema(
UNIT_DECIBEL_MILLIWATT, unit_of_measurement=UNIT_DECIBEL_MILLIWATT,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_SIGNAL_STRENGTH,
DEVICE_CLASS_SIGNAL_STRENGTH, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_MOVEMENT_COUNTER): sensor.sensor_schema( cv.Optional(CONF_MOVEMENT_COUNTER): sensor.sensor_schema(
UNIT_EMPTY, ICON_GAUGE, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE icon=ICON_GAUGE,
accuracy_decimals=0,
state_class=STATE_CLASS_NONE,
), ),
cv.Optional(CONF_MEASUREMENT_SEQUENCE_NUMBER): sensor.sensor_schema( cv.Optional(CONF_MEASUREMENT_SEQUENCE_NUMBER): sensor.sensor_schema(
UNIT_EMPTY, ICON_GAUGE, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE icon=ICON_GAUGE,
accuracy_decimals=0,
state_class=STATE_CLASS_NONE,
), ),
} }
) )

View file

@ -3,13 +3,11 @@ import esphome.config_validation as cv
from esphome.components import i2c, sensor from esphome.components import i2c, sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_EMPTY,
CONF_HUMIDITY, CONF_HUMIDITY,
CONF_TEMPERATURE, CONF_TEMPERATURE,
CONF_CO2, CONF_CO2,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_PARTS_PER_MILLION, UNIT_PARTS_PER_MILLION,
ICON_MOLECULE_CO2, ICON_MOLECULE_CO2,
@ -33,25 +31,22 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(SCD30Component), cv.GenerateID(): cv.declare_id(SCD30Component),
cv.Optional(CONF_CO2): sensor.sensor_schema( cv.Optional(CONF_CO2): sensor.sensor_schema(
UNIT_PARTS_PER_MILLION, unit_of_measurement=UNIT_PARTS_PER_MILLION,
ICON_MOLECULE_CO2, icon=ICON_MOLECULE_CO2,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_AUTOMATIC_SELF_CALIBRATION, default=True): cv.boolean, cv.Optional(CONF_AUTOMATIC_SELF_CALIBRATION, default=True): cv.boolean,
cv.Optional(CONF_ALTITUDE_COMPENSATION): cv.All( cv.Optional(CONF_ALTITUDE_COMPENSATION): cv.All(

View file

@ -17,19 +17,16 @@ from esphome.const import (
CONF_REACTIVE_POWER, CONF_REACTIVE_POWER,
CONF_VOLTAGE, CONF_VOLTAGE,
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_ENERGY, DEVICE_CLASS_ENERGY,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_POWER_FACTOR, DEVICE_CLASS_POWER_FACTOR,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_CURRENT_AC, ICON_CURRENT_AC,
ICON_EMPTY,
ICON_FLASH, ICON_FLASH,
LAST_RESET_TYPE_AUTO, LAST_RESET_TYPE_AUTO,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_AMPERE, UNIT_AMPERE,
UNIT_DEGREES, UNIT_DEGREES,
UNIT_EMPTY,
UNIT_HERTZ, UNIT_HERTZ,
UNIT_VOLT, UNIT_VOLT,
UNIT_VOLT_AMPS, UNIT_VOLT_AMPS,
@ -46,27 +43,43 @@ sdm_meter_ns = cg.esphome_ns.namespace("sdm_meter")
SDMMeter = sdm_meter_ns.class_("SDMMeter", cg.PollingComponent, modbus.ModbusDevice) SDMMeter = sdm_meter_ns.class_("SDMMeter", cg.PollingComponent, modbus.ModbusDevice)
PHASE_SENSORS = { PHASE_SENSORS = {
CONF_VOLTAGE: sensor.sensor_schema(UNIT_VOLT, ICON_EMPTY, 2, DEVICE_CLASS_VOLTAGE), CONF_VOLTAGE: sensor.sensor_schema(
unit_of_measurement=UNIT_VOLT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_VOLTAGE,
),
CONF_CURRENT: sensor.sensor_schema( CONF_CURRENT: sensor.sensor_schema(
UNIT_AMPERE, ICON_EMPTY, 3, DEVICE_CLASS_CURRENT, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_AMPERE,
accuracy_decimals=3,
device_class=DEVICE_CLASS_CURRENT,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_ACTIVE_POWER: sensor.sensor_schema( CONF_ACTIVE_POWER: sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 2, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_APPARENT_POWER: sensor.sensor_schema( CONF_APPARENT_POWER: sensor.sensor_schema(
UNIT_VOLT_AMPS, ICON_EMPTY, 2, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT_AMPS,
accuracy_decimals=2,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_REACTIVE_POWER: sensor.sensor_schema( CONF_REACTIVE_POWER: sensor.sensor_schema(
UNIT_VOLT_AMPS_REACTIVE, unit_of_measurement=UNIT_VOLT_AMPS_REACTIVE,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_POWER,
DEVICE_CLASS_POWER, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
CONF_POWER_FACTOR: sensor.sensor_schema( CONF_POWER_FACTOR: sensor.sensor_schema(
UNIT_EMPTY, ICON_EMPTY, 3, DEVICE_CLASS_POWER_FACTOR, STATE_CLASS_MEASUREMENT accuracy_decimals=3,
device_class=DEVICE_CLASS_POWER_FACTOR,
state_class=STATE_CLASS_MEASUREMENT,
),
CONF_PHASE_ANGLE: sensor.sensor_schema(
unit_of_measurement=UNIT_DEGREES, icon=ICON_FLASH, accuracy_decimals=3
), ),
CONF_PHASE_ANGLE: sensor.sensor_schema(UNIT_DEGREES, ICON_FLASH, 3),
} }
PHASE_SCHEMA = cv.Schema( PHASE_SCHEMA = cv.Schema(
@ -81,43 +94,38 @@ CONFIG_SCHEMA = (
cv.Optional(CONF_PHASE_B): PHASE_SCHEMA, cv.Optional(CONF_PHASE_B): PHASE_SCHEMA,
cv.Optional(CONF_PHASE_C): PHASE_SCHEMA, cv.Optional(CONF_PHASE_C): PHASE_SCHEMA,
cv.Optional(CONF_FREQUENCY): sensor.sensor_schema( cv.Optional(CONF_FREQUENCY): sensor.sensor_schema(
UNIT_HERTZ, unit_of_measurement=UNIT_HERTZ,
ICON_CURRENT_AC, icon=ICON_CURRENT_AC,
3, accuracy_decimals=3,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_IMPORT_ACTIVE_ENERGY): sensor.sensor_schema( cv.Optional(CONF_IMPORT_ACTIVE_ENERGY): sensor.sensor_schema(
UNIT_WATT_HOURS, unit_of_measurement=UNIT_WATT_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
cv.Optional(CONF_EXPORT_ACTIVE_ENERGY): sensor.sensor_schema( cv.Optional(CONF_EXPORT_ACTIVE_ENERGY): sensor.sensor_schema(
UNIT_WATT_HOURS, unit_of_measurement=UNIT_WATT_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
cv.Optional(CONF_IMPORT_REACTIVE_ENERGY): sensor.sensor_schema( cv.Optional(CONF_IMPORT_REACTIVE_ENERGY): sensor.sensor_schema(
UNIT_VOLT_AMPS_REACTIVE_HOURS, unit_of_measurement=UNIT_VOLT_AMPS_REACTIVE_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
cv.Optional(CONF_EXPORT_REACTIVE_ENERGY): sensor.sensor_schema( cv.Optional(CONF_EXPORT_REACTIVE_ENERGY): sensor.sensor_schema(
UNIT_VOLT_AMPS_REACTIVE_HOURS, unit_of_measurement=UNIT_VOLT_AMPS_REACTIVE_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
} }
) )

View file

@ -4,7 +4,6 @@ from esphome.components import i2c, sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_HECTOPASCAL, UNIT_HECTOPASCAL,
) )
@ -17,11 +16,10 @@ SDP3XComponent = sdp3x_ns.class_("SDP3XComponent", cg.PollingComponent, i2c.I2CD
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_HECTOPASCAL, unit_of_measurement=UNIT_HECTOPASCAL,
ICON_EMPTY, accuracy_decimals=3,
3, device_class=DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_PRESSURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_PM_2_5, CONF_PM_2_5,
CONF_RX_ONLY, CONF_RX_ONLY,
CONF_UPDATE_INTERVAL, CONF_UPDATE_INTERVAL,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_MICROGRAMS_PER_CUBIC_METER, UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, ICON_CHEMICAL_WEAPON,
@ -39,18 +38,16 @@ CONFIG_SCHEMA = cv.All(
{ {
cv.GenerateID(): cv.declare_id(SDS011Component), cv.GenerateID(): cv.declare_id(SDS011Component),
cv.Optional(CONF_PM_2_5): sensor.sensor_schema( cv.Optional(CONF_PM_2_5): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
1, accuracy_decimals=1,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PM_10_0): sensor.sensor_schema( cv.Optional(CONF_PM_10_0): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
1, accuracy_decimals=1,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_RX_ONLY, default=False): cv.boolean, cv.Optional(CONF_RX_ONLY, default=False): cv.boolean,
cv.Optional(CONF_UPDATE_INTERVAL): cv.positive_time_period_minutes, cv.Optional(CONF_UPDATE_INTERVAL): cv.positive_time_period_minutes,

View file

@ -15,17 +15,14 @@ from esphome.const import (
CONF_REACTIVE_POWER, CONF_REACTIVE_POWER,
CONF_VOLTAGE, CONF_VOLTAGE,
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_ENERGY, DEVICE_CLASS_ENERGY,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_POWER_FACTOR, DEVICE_CLASS_POWER_FACTOR,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ICON_CURRENT_AC, ICON_CURRENT_AC,
ICON_EMPTY,
LAST_RESET_TYPE_AUTO, LAST_RESET_TYPE_AUTO,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_AMPERE, UNIT_AMPERE,
UNIT_EMPTY,
UNIT_HERTZ, UNIT_HERTZ,
UNIT_VOLT, UNIT_VOLT,
UNIT_VOLT_AMPS, UNIT_VOLT_AMPS,
@ -54,98 +51,112 @@ SelecMeter = selec_meter_ns.class_(
SENSORS = { SENSORS = {
CONF_TOTAL_ACTIVE_ENERGY: sensor.sensor_schema( CONF_TOTAL_ACTIVE_ENERGY: sensor.sensor_schema(
UNIT_KILOWATT_HOURS, unit_of_measurement=UNIT_KILOWATT_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
CONF_IMPORT_ACTIVE_ENERGY: sensor.sensor_schema( CONF_IMPORT_ACTIVE_ENERGY: sensor.sensor_schema(
UNIT_KILOWATT_HOURS, unit_of_measurement=UNIT_KILOWATT_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
CONF_EXPORT_ACTIVE_ENERGY: sensor.sensor_schema( CONF_EXPORT_ACTIVE_ENERGY: sensor.sensor_schema(
UNIT_KILOWATT_HOURS, unit_of_measurement=UNIT_KILOWATT_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
CONF_TOTAL_REACTIVE_ENERGY: sensor.sensor_schema( CONF_TOTAL_REACTIVE_ENERGY: sensor.sensor_schema(
UNIT_KILOVOLT_AMPS_REACTIVE_HOURS, unit_of_measurement=UNIT_KILOVOLT_AMPS_REACTIVE_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
CONF_IMPORT_REACTIVE_ENERGY: sensor.sensor_schema( CONF_IMPORT_REACTIVE_ENERGY: sensor.sensor_schema(
UNIT_KILOVOLT_AMPS_REACTIVE_HOURS, unit_of_measurement=UNIT_KILOVOLT_AMPS_REACTIVE_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
CONF_EXPORT_REACTIVE_ENERGY: sensor.sensor_schema( CONF_EXPORT_REACTIVE_ENERGY: sensor.sensor_schema(
UNIT_KILOVOLT_AMPS_REACTIVE_HOURS, unit_of_measurement=UNIT_KILOVOLT_AMPS_REACTIVE_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
CONF_APPARENT_ENERGY: sensor.sensor_schema( CONF_APPARENT_ENERGY: sensor.sensor_schema(
UNIT_KILOVOLT_AMPS_HOURS, unit_of_measurement=UNIT_KILOVOLT_AMPS_HOURS,
ICON_EMPTY, accuracy_decimals=2,
2, device_class=DEVICE_CLASS_ENERGY,
DEVICE_CLASS_ENERGY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT, last_reset_type=LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_AUTO,
), ),
CONF_ACTIVE_POWER: sensor.sensor_schema( CONF_ACTIVE_POWER: sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 3, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=3,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_REACTIVE_POWER: sensor.sensor_schema( CONF_REACTIVE_POWER: sensor.sensor_schema(
UNIT_VOLT_AMPS_REACTIVE, unit_of_measurement=UNIT_VOLT_AMPS_REACTIVE,
ICON_EMPTY, accuracy_decimals=3,
3, device_class=DEVICE_CLASS_POWER,
DEVICE_CLASS_POWER, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
CONF_APPARENT_POWER: sensor.sensor_schema( CONF_APPARENT_POWER: sensor.sensor_schema(
UNIT_VOLT_AMPS, ICON_EMPTY, 3, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT_AMPS,
accuracy_decimals=3,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_VOLTAGE: sensor.sensor_schema( CONF_VOLTAGE: sensor.sensor_schema(
UNIT_VOLT, ICON_EMPTY, 2, DEVICE_CLASS_VOLTAGE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT,
accuracy_decimals=2,
device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_CURRENT: sensor.sensor_schema( CONF_CURRENT: sensor.sensor_schema(
UNIT_AMPERE, ICON_EMPTY, 3, DEVICE_CLASS_CURRENT, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_AMPERE,
accuracy_decimals=3,
device_class=DEVICE_CLASS_CURRENT,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_POWER_FACTOR: sensor.sensor_schema( CONF_POWER_FACTOR: sensor.sensor_schema(
UNIT_EMPTY, ICON_EMPTY, 3, DEVICE_CLASS_POWER_FACTOR, STATE_CLASS_MEASUREMENT accuracy_decimals=3,
device_class=DEVICE_CLASS_POWER_FACTOR,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_FREQUENCY: sensor.sensor_schema( CONF_FREQUENCY: sensor.sensor_schema(
UNIT_HERTZ, ICON_CURRENT_AC, 2, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_HERTZ,
icon=ICON_CURRENT_AC,
accuracy_decimals=2,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_MAXIMUM_DEMAND_ACTIVE_POWER: sensor.sensor_schema( CONF_MAXIMUM_DEMAND_ACTIVE_POWER: sensor.sensor_schema(
UNIT_WATT, ICON_EMPTY, 3, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_WATT,
accuracy_decimals=3,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
CONF_MAXIMUM_DEMAND_REACTIVE_POWER: sensor.sensor_schema( CONF_MAXIMUM_DEMAND_REACTIVE_POWER: sensor.sensor_schema(
UNIT_VOLT_AMPS_REACTIVE, unit_of_measurement=UNIT_VOLT_AMPS_REACTIVE,
ICON_EMPTY, accuracy_decimals=3,
3, device_class=DEVICE_CLASS_POWER,
DEVICE_CLASS_POWER, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
CONF_MAXIMUM_DEMAND_APPARENT_POWER: sensor.sensor_schema( CONF_MAXIMUM_DEMAND_APPARENT_POWER: sensor.sensor_schema(
UNIT_VOLT_AMPS, ICON_EMPTY, 3, DEVICE_CLASS_POWER, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_VOLT_AMPS,
accuracy_decimals=3,
device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT,
), ),
} }

View file

@ -6,7 +6,6 @@ from esphome.components import sensor, uart
from esphome.const import ( from esphome.const import (
CONF_CO2, CONF_CO2,
CONF_ID, CONF_ID,
DEVICE_CLASS_EMPTY,
ICON_MOLECULE_CO2, ICON_MOLECULE_CO2,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_PARTS_PER_MILLION, UNIT_PARTS_PER_MILLION,
@ -39,11 +38,10 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(SenseAirComponent), cv.GenerateID(): cv.declare_id(SenseAirComponent),
cv.Required(CONF_CO2): sensor.sensor_schema( cv.Required(CONF_CO2): sensor.sensor_schema(
UNIT_PARTS_PER_MILLION, unit_of_measurement=UNIT_PARTS_PER_MILLION,
ICON_MOLECULE_CO2, icon=ICON_MOLECULE_CO2,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -1,5 +1,4 @@
import math import math
from typing import Optional
import esphome.codegen as cg import esphome.codegen as cg
import esphome.config_validation as cv import esphome.config_validation as cv
@ -34,8 +33,6 @@ from esphome.const import (
LAST_RESET_TYPE_AUTO, LAST_RESET_TYPE_AUTO,
LAST_RESET_TYPE_NEVER, LAST_RESET_TYPE_NEVER,
LAST_RESET_TYPE_NONE, LAST_RESET_TYPE_NONE,
UNIT_EMPTY,
ICON_EMPTY,
DEVICE_CLASS_EMPTY, DEVICE_CLASS_EMPTY,
DEVICE_CLASS_BATTERY, DEVICE_CLASS_BATTERY,
DEVICE_CLASS_CARBON_MONOXIDE, DEVICE_CLASS_CARBON_MONOXIDE,
@ -52,7 +49,6 @@ from esphome.const import (
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TIMESTAMP, DEVICE_CLASS_TIMESTAMP,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
STATE_CLASS_NONE,
) )
from esphome.core import CORE, coroutine_with_priority from esphome.core import CORE, coroutine_with_priority
from esphome.util import Registry from esphome.util import Registry
@ -169,19 +165,19 @@ CalibrateLinearFilter = sensor_ns.class_("CalibrateLinearFilter", Filter)
CalibratePolynomialFilter = sensor_ns.class_("CalibratePolynomialFilter", Filter) CalibratePolynomialFilter = sensor_ns.class_("CalibratePolynomialFilter", Filter)
SensorInRangeCondition = sensor_ns.class_("SensorInRangeCondition", Filter) SensorInRangeCondition = sensor_ns.class_("SensorInRangeCondition", Filter)
unit_of_measurement = cv.string_strict validate_unit_of_measurement = cv.string_strict
accuracy_decimals = cv.int_ validate_accuracy_decimals = cv.int_
icon = cv.icon validate_icon = cv.icon
device_class = cv.one_of(*DEVICE_CLASSES, lower=True, space="_") validate_device_class = cv.one_of(*DEVICE_CLASSES, lower=True, space="_")
SENSOR_SCHEMA = cv.MQTT_COMPONENT_SCHEMA.extend( SENSOR_SCHEMA = cv.MQTT_COMPONENT_SCHEMA.extend(
{ {
cv.OnlyWith(CONF_MQTT_ID, "mqtt"): cv.declare_id(mqtt.MQTTSensorComponent), cv.OnlyWith(CONF_MQTT_ID, "mqtt"): cv.declare_id(mqtt.MQTTSensorComponent),
cv.GenerateID(): cv.declare_id(Sensor), cv.GenerateID(): cv.declare_id(Sensor),
cv.Optional(CONF_UNIT_OF_MEASUREMENT): unit_of_measurement, cv.Optional(CONF_UNIT_OF_MEASUREMENT): validate_unit_of_measurement,
cv.Optional(CONF_ICON): icon, cv.Optional(CONF_ICON): validate_icon,
cv.Optional(CONF_ACCURACY_DECIMALS): accuracy_decimals, cv.Optional(CONF_ACCURACY_DECIMALS): validate_accuracy_decimals,
cv.Optional(CONF_DEVICE_CLASS): device_class, cv.Optional(CONF_DEVICE_CLASS): validate_device_class,
cv.Optional(CONF_STATE_CLASS): validate_state_class, cv.Optional(CONF_STATE_CLASS): validate_state_class,
cv.Optional(CONF_LAST_RESET_TYPE): validate_last_reset_type, cv.Optional(CONF_LAST_RESET_TYPE): validate_last_reset_type,
cv.Optional(CONF_FORCE_UPDATE, default=False): cv.boolean, cv.Optional(CONF_FORCE_UPDATE, default=False): cv.boolean,
@ -211,47 +207,53 @@ SENSOR_SCHEMA = cv.MQTT_COMPONENT_SCHEMA.extend(
} }
) )
_UNDEF = object()
def sensor_schema( def sensor_schema(
unit_of_measurement_: str, unit_of_measurement: str = _UNDEF,
icon_: str, icon: str = _UNDEF,
accuracy_decimals_: int, accuracy_decimals: int = _UNDEF,
device_class_: Optional[str] = DEVICE_CLASS_EMPTY, device_class: str = _UNDEF,
state_class_: Optional[str] = STATE_CLASS_NONE, state_class: str = _UNDEF,
last_reset_type_: Optional[str] = LAST_RESET_TYPE_NONE, last_reset_type: str = _UNDEF,
) -> cv.Schema: ) -> cv.Schema:
schema = SENSOR_SCHEMA schema = SENSOR_SCHEMA
if unit_of_measurement_ != UNIT_EMPTY: if unit_of_measurement is not _UNDEF:
schema = schema.extend( schema = schema.extend(
{ {
cv.Optional( cv.Optional(
CONF_UNIT_OF_MEASUREMENT, default=unit_of_measurement_ CONF_UNIT_OF_MEASUREMENT, default=unit_of_measurement
): unit_of_measurement ): validate_unit_of_measurement
} }
) )
if icon_ != ICON_EMPTY: if icon is not _UNDEF:
schema = schema.extend({cv.Optional(CONF_ICON, default=icon_): icon}) schema = schema.extend({cv.Optional(CONF_ICON, default=icon): validate_icon})
if accuracy_decimals_ != 0: if accuracy_decimals is not _UNDEF:
schema = schema.extend( schema = schema.extend(
{ {
cv.Optional( cv.Optional(
CONF_ACCURACY_DECIMALS, default=accuracy_decimals_ CONF_ACCURACY_DECIMALS, default=accuracy_decimals
): accuracy_decimals, ): validate_accuracy_decimals,
} }
) )
if device_class_ != DEVICE_CLASS_EMPTY: if device_class is not _UNDEF:
schema = schema.extend(
{cv.Optional(CONF_DEVICE_CLASS, default=device_class_): device_class}
)
if state_class_ != STATE_CLASS_NONE:
schema = schema.extend(
{cv.Optional(CONF_STATE_CLASS, default=state_class_): validate_state_class}
)
if last_reset_type_ != LAST_RESET_TYPE_NONE:
schema = schema.extend( schema = schema.extend(
{ {
cv.Optional( cv.Optional(
CONF_LAST_RESET_TYPE, default=last_reset_type_ CONF_DEVICE_CLASS, default=device_class
): validate_device_class
}
)
if state_class is not _UNDEF:
schema = schema.extend(
{cv.Optional(CONF_STATE_CLASS, default=state_class): validate_state_class}
)
if last_reset_type is not _UNDEF:
schema = schema.extend(
{
cv.Optional(
CONF_LAST_RESET_TYPE, default=last_reset_type
): validate_last_reset_type ): validate_last_reset_type
} }
) )

View file

@ -4,14 +4,12 @@ from esphome.components import i2c, sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
CONF_BASELINE, CONF_BASELINE,
DEVICE_CLASS_EMPTY,
CONF_ECO2, CONF_ECO2,
CONF_TVOC, CONF_TVOC,
ICON_RADIATOR, ICON_RADIATOR,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_PARTS_PER_MILLION, UNIT_PARTS_PER_MILLION,
UNIT_PARTS_PER_BILLION, UNIT_PARTS_PER_BILLION,
UNIT_EMPTY,
ICON_MOLECULE_CO2, ICON_MOLECULE_CO2,
) )
@ -33,24 +31,24 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(SGP30Component), cv.GenerateID(): cv.declare_id(SGP30Component),
cv.Required(CONF_ECO2): sensor.sensor_schema( cv.Required(CONF_ECO2): sensor.sensor_schema(
UNIT_PARTS_PER_MILLION, unit_of_measurement=UNIT_PARTS_PER_MILLION,
ICON_MOLECULE_CO2, icon=ICON_MOLECULE_CO2,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Required(CONF_TVOC): sensor.sensor_schema( cv.Required(CONF_TVOC): sensor.sensor_schema(
UNIT_PARTS_PER_BILLION, unit_of_measurement=UNIT_PARTS_PER_BILLION,
ICON_RADIATOR, icon=ICON_RADIATOR,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_ECO2_BASELINE): sensor.sensor_schema( cv.Optional(CONF_ECO2_BASELINE): sensor.sensor_schema(
UNIT_EMPTY, ICON_MOLECULE_CO2, 0, DEVICE_CLASS_EMPTY icon=ICON_MOLECULE_CO2,
accuracy_decimals=0,
), ),
cv.Optional(CONF_TVOC_BASELINE): sensor.sensor_schema( cv.Optional(CONF_TVOC_BASELINE): sensor.sensor_schema(
UNIT_EMPTY, ICON_RADIATOR, 0, DEVICE_CLASS_EMPTY icon=ICON_RADIATOR,
accuracy_decimals=0,
), ),
cv.Optional(CONF_STORE_BASELINE, default=True): cv.boolean, cv.Optional(CONF_STORE_BASELINE, default=True): cv.boolean,
cv.Optional(CONF_BASELINE): cv.Schema( cv.Optional(CONF_BASELINE): cv.Schema(

View file

@ -3,10 +3,8 @@ import esphome.config_validation as cv
from esphome.components import i2c, sensor from esphome.components import i2c, sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_EMPTY,
ICON_RADIATOR, ICON_RADIATOR,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_EMPTY,
) )
DEPENDENCIES = ["i2c"] DEPENDENCIES = ["i2c"]
@ -26,7 +24,9 @@ CONF_VOC_BASELINE = "voc_baseline"
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_EMPTY, ICON_RADIATOR, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT icon=ICON_RADIATOR,
accuracy_decimals=0,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_TEMPERATURE, CONF_TEMPERATURE,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_PERCENT, UNIT_PERCENT,
@ -25,18 +24,16 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(SHT3XDComponent), cv.GenerateID(): cv.declare_id(SHT3XDComponent),
cv.Required(CONF_TEMPERATURE): sensor.sensor_schema( cv.Required(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Required(CONF_HUMIDITY): sensor.sensor_schema( cv.Required(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -51,18 +51,18 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(SHT4XComponent), cv.GenerateID(): cv.declare_id(SHT4XComponent),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_THERMOMETER, icon=ICON_THERMOMETER,
2, accuracy_decimals=2,
DEVICE_CLASS_TEMPERATURE, device_class=DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_WATER_PERCENT, icon=ICON_WATER_PERCENT,
2, accuracy_decimals=2,
DEVICE_CLASS_HUMIDITY, device_class=DEVICE_CLASS_HUMIDITY,
STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PRECISION, default="High"): cv.enum(PRECISION_OPTIONS), cv.Optional(CONF_PRECISION, default="High"): cv.enum(PRECISION_OPTIONS),
cv.Optional(CONF_HEATER_POWER, default="High"): cv.enum( cv.Optional(CONF_HEATER_POWER, default="High"): cv.enum(

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_TEMPERATURE, CONF_TEMPERATURE,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_PERCENT, UNIT_PERCENT,
@ -25,18 +24,16 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(SHTCXComponent), cv.GenerateID(): cv.declare_id(SHTCXComponent),
cv.Required(CONF_TEMPERATURE): sensor.sensor_schema( cv.Required(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Required(CONF_HUMIDITY): sensor.sensor_schema( cv.Required(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -10,7 +10,6 @@ from esphome.const import (
CONF_PM_10_0, CONF_PM_10_0,
CONF_TEMPERATURE, CONF_TEMPERATURE,
CONF_HUMIDITY, CONF_HUMIDITY,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
@ -18,7 +17,6 @@ from esphome.const import (
UNIT_MICROGRAMS_PER_CUBIC_METER, UNIT_MICROGRAMS_PER_CUBIC_METER,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_PERCENT, UNIT_PERCENT,
ICON_EMPTY,
ICON_MOLECULE_CO2, ICON_MOLECULE_CO2,
ICON_FLASK, ICON_FLASK,
ICON_CHEMICAL_WEAPON, ICON_CHEMICAL_WEAPON,
@ -35,53 +33,46 @@ CONFIG_SCHEMA = cv.All(
{ {
cv.GenerateID(): cv.declare_id(SM300D2Sensor), cv.GenerateID(): cv.declare_id(SM300D2Sensor),
cv.Optional(CONF_CO2): sensor.sensor_schema( cv.Optional(CONF_CO2): sensor.sensor_schema(
UNIT_PARTS_PER_MILLION, unit_of_measurement=UNIT_PARTS_PER_MILLION,
ICON_MOLECULE_CO2, icon=ICON_MOLECULE_CO2,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_FORMALDEHYDE): sensor.sensor_schema( cv.Optional(CONF_FORMALDEHYDE): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_FLASK, icon=ICON_FLASK,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_TVOC): sensor.sensor_schema( cv.Optional(CONF_TVOC): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PM_2_5): sensor.sensor_schema( cv.Optional(CONF_PM_2_5): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_GRAIN, icon=ICON_GRAIN,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PM_10_0): sensor.sensor_schema( cv.Optional(CONF_PM_10_0): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_GRAIN, icon=ICON_GRAIN,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -13,7 +13,6 @@ from esphome.const import (
CONF_PMC_4_0, CONF_PMC_4_0,
CONF_PMC_10_0, CONF_PMC_10_0,
CONF_PM_SIZE, CONF_PM_SIZE,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_MICROGRAMS_PER_CUBIC_METER, UNIT_MICROGRAMS_PER_CUBIC_METER,
UNIT_COUNTS_PER_CUBIC_METER, UNIT_COUNTS_PER_CUBIC_METER,
@ -33,74 +32,64 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(SPS30Component), cv.GenerateID(): cv.declare_id(SPS30Component),
cv.Optional(CONF_PM_1_0): sensor.sensor_schema( cv.Optional(CONF_PM_1_0): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PM_2_5): sensor.sensor_schema( cv.Optional(CONF_PM_2_5): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PM_4_0): sensor.sensor_schema( cv.Optional(CONF_PM_4_0): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PM_10_0): sensor.sensor_schema( cv.Optional(CONF_PM_10_0): sensor.sensor_schema(
UNIT_MICROGRAMS_PER_CUBIC_METER, unit_of_measurement=UNIT_MICROGRAMS_PER_CUBIC_METER,
ICON_CHEMICAL_WEAPON, icon=ICON_CHEMICAL_WEAPON,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PMC_0_5): sensor.sensor_schema( cv.Optional(CONF_PMC_0_5): sensor.sensor_schema(
UNIT_COUNTS_PER_CUBIC_METER, unit_of_measurement=UNIT_COUNTS_PER_CUBIC_METER,
ICON_COUNTER, icon=ICON_COUNTER,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PMC_1_0): sensor.sensor_schema( cv.Optional(CONF_PMC_1_0): sensor.sensor_schema(
UNIT_COUNTS_PER_CUBIC_METER, unit_of_measurement=UNIT_COUNTS_PER_CUBIC_METER,
ICON_COUNTER, icon=ICON_COUNTER,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PMC_2_5): sensor.sensor_schema( cv.Optional(CONF_PMC_2_5): sensor.sensor_schema(
UNIT_COUNTS_PER_CUBIC_METER, unit_of_measurement=UNIT_COUNTS_PER_CUBIC_METER,
ICON_COUNTER, icon=ICON_COUNTER,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PMC_4_0): sensor.sensor_schema( cv.Optional(CONF_PMC_4_0): sensor.sensor_schema(
UNIT_COUNTS_PER_CUBIC_METER, unit_of_measurement=UNIT_COUNTS_PER_CUBIC_METER,
ICON_COUNTER, icon=ICON_COUNTER,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PMC_10_0): sensor.sensor_schema( cv.Optional(CONF_PMC_10_0): sensor.sensor_schema(
UNIT_COUNTS_PER_CUBIC_METER, unit_of_measurement=UNIT_COUNTS_PER_CUBIC_METER,
ICON_COUNTER, icon=ICON_COUNTER,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_PM_SIZE): sensor.sensor_schema( cv.Optional(CONF_PM_SIZE): sensor.sensor_schema(
UNIT_MICROMETER, unit_of_measurement=UNIT_MICROMETER,
ICON_RULER, icon=ICON_RULER,
0, accuracy_decimals=0,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -4,7 +4,6 @@ from esphome.components import i2c, sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
) )
@ -19,7 +18,10 @@ STS3XComponent = sts3x_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_CELSIUS, ICON_EMPTY, 1, DEVICE_CLASS_TEMPERATURE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_CELSIUS,
accuracy_decimals=1,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -2,7 +2,6 @@ import esphome.codegen as cg
import esphome.config_validation as cv import esphome.config_validation as cv
from esphome.components import sensor from esphome.components import sensor
from esphome.const import ( from esphome.const import (
DEVICE_CLASS_EMPTY,
STATE_CLASS_NONE, STATE_CLASS_NONE,
UNIT_DEGREES, UNIT_DEGREES,
ICON_WEATHER_SUNSET, ICON_WEATHER_SUNSET,
@ -22,7 +21,10 @@ TYPES = {
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_DEGREES, ICON_WEATHER_SUNSET, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE unit_of_measurement=UNIT_DEGREES,
icon=ICON_WEATHER_SUNSET,
accuracy_decimals=1,
state_class=STATE_CLASS_NONE,
) )
.extend( .extend(
{ {

View file

@ -5,7 +5,6 @@ from esphome.const import (
CONF_CO2, CONF_CO2,
CONF_ID, CONF_ID,
DEVICE_CLASS_CARBON_DIOXIDE, DEVICE_CLASS_CARBON_DIOXIDE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_PARTS_PER_MILLION, UNIT_PARTS_PER_MILLION,
) )
@ -21,11 +20,10 @@ CONFIG_SCHEMA = (
{ {
cv.GenerateID(): cv.declare_id(T6615Component), cv.GenerateID(): cv.declare_id(T6615Component),
cv.Required(CONF_CO2): sensor.sensor_schema( cv.Required(CONF_CO2): sensor.sensor_schema(
UNIT_PARTS_PER_MILLION, unit_of_measurement=UNIT_PARTS_PER_MILLION,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_CARBON_DIOXIDE,
DEVICE_CLASS_CARBON_DIOXIDE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

View file

@ -7,9 +7,7 @@ from esphome.const import (
CONF_ID, CONF_ID,
CONF_ILLUMINANCE, CONF_ILLUMINANCE,
CONF_INTEGRATION_TIME, CONF_INTEGRATION_TIME,
DEVICE_CLASS_EMPTY,
DEVICE_CLASS_ILLUMINANCE, DEVICE_CLASS_ILLUMINANCE,
ICON_EMPTY,
ICON_LIGHTBULB, ICON_LIGHTBULB,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_PERCENT, UNIT_PERCENT,
@ -49,13 +47,22 @@ TCS34725_GAINS = {
} }
color_channel_schema = sensor.sensor_schema( color_channel_schema = sensor.sensor_schema(
UNIT_PERCENT, ICON_LIGHTBULB, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_PERCENT,
icon=ICON_LIGHTBULB,
accuracy_decimals=1,
state_class=STATE_CLASS_MEASUREMENT,
) )
color_temperature_schema = sensor.sensor_schema( color_temperature_schema = sensor.sensor_schema(
UNIT_KELVIN, ICON_THERMOMETER, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_KELVIN,
icon=ICON_THERMOMETER,
accuracy_decimals=1,
state_class=STATE_CLASS_MEASUREMENT,
) )
illuminance_schema = sensor.sensor_schema( illuminance_schema = sensor.sensor_schema(
UNIT_LUX, ICON_EMPTY, 1, DEVICE_CLASS_ILLUMINANCE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_LUX,
accuracy_decimals=1,
device_class=DEVICE_CLASS_ILLUMINANCE,
state_class=STATE_CLASS_MEASUREMENT,
) )
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (

View file

@ -9,7 +9,9 @@ CONF_TAG_NAME = "tag_name"
TeleInfoSensor = teleinfo_ns.class_("TeleInfoSensor", sensor.Sensor, cg.Component) TeleInfoSensor = teleinfo_ns.class_("TeleInfoSensor", sensor.Sensor, cg.Component)
CONFIG_SCHEMA = sensor.sensor_schema(UNIT_WATT_HOURS, ICON_FLASH, 0).extend( CONFIG_SCHEMA = sensor.sensor_schema(
unit_of_measurement=UNIT_WATT_HOURS, icon=ICON_FLASH, accuracy_decimals=0
).extend(
{ {
cv.GenerateID(): cv.declare_id(TeleInfoSensor), cv.GenerateID(): cv.declare_id(TeleInfoSensor),
cv.GenerateID(CONF_TELEINFO_ID): cv.use_id(TeleInfo), cv.GenerateID(CONF_TELEINFO_ID): cv.use_id(TeleInfo),

View file

@ -6,10 +6,7 @@ from esphome.const import (
CONF_ID, CONF_ID,
CONF_LAMBDA, CONF_LAMBDA,
CONF_STATE, CONF_STATE,
DEVICE_CLASS_EMPTY,
ICON_EMPTY,
STATE_CLASS_NONE, STATE_CLASS_NONE,
UNIT_EMPTY,
) )
from .. import template_ns from .. import template_ns
@ -19,11 +16,8 @@ TemplateSensor = template_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_EMPTY, accuracy_decimals=1,
ICON_EMPTY, state_class=STATE_CLASS_NONE,
1,
DEVICE_CLASS_EMPTY,
STATE_CLASS_NONE,
) )
.extend( .extend(
{ {

View file

@ -13,7 +13,6 @@ from esphome.components import i2c, sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
) )
@ -28,7 +27,10 @@ TMP102Component = tmp102_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_CELSIUS, ICON_EMPTY, 1, DEVICE_CLASS_TEMPERATURE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_CELSIUS,
accuracy_decimals=1,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -5,7 +5,6 @@ from esphome.const import (
CONF_ID, CONF_ID,
CONF_UPDATE_INTERVAL, CONF_UPDATE_INTERVAL,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
) )
@ -20,7 +19,10 @@ TMP117Component = tmp117_ns.class_(
CONFIG_SCHEMA = cv.All( CONFIG_SCHEMA = cv.All(
sensor.sensor_schema( sensor.sensor_schema(
UNIT_CELSIUS, ICON_EMPTY, 1, DEVICE_CLASS_TEMPERATURE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_CELSIUS,
accuracy_decimals=1,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -3,7 +3,6 @@ import esphome.config_validation as cv
from esphome.components import i2c, sensor from esphome.components import i2c, sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_METER, UNIT_METER,
ICON_ARROW_EXPAND_VERTICAL, ICON_ARROW_EXPAND_VERTICAL,
@ -19,11 +18,10 @@ TOF10120Sensor = tof10120_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_METER, unit_of_measurement=UNIT_METER,
ICON_ARROW_EXPAND_VERTICAL, icon=ICON_ARROW_EXPAND_VERTICAL,
3, accuracy_decimals=3,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
) )
.extend({cv.GenerateID(): cv.declare_id(TOF10120Sensor)}) .extend({cv.GenerateID(): cv.declare_id(TOF10120Sensor)})
.extend(cv.polling_component_schema("60s")) .extend(cv.polling_component_schema("60s"))

View file

@ -5,10 +5,8 @@ from esphome.const import (
CONF_ID, CONF_ID,
CONF_TIME_ID, CONF_TIME_ID,
DEVICE_CLASS_ENERGY, DEVICE_CLASS_ENERGY,
ICON_EMPTY,
LAST_RESET_TYPE_AUTO, LAST_RESET_TYPE_AUTO,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_EMPTY,
) )
DEPENDENCIES = ["time"] DEPENDENCIES = ["time"]
@ -21,12 +19,10 @@ TotalDailyEnergy = total_daily_energy_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_EMPTY, accuracy_decimals=0,
ICON_EMPTY, device_class=DEVICE_CLASS_ENERGY,
0, state_class=STATE_CLASS_MEASUREMENT,
DEVICE_CLASS_ENERGY, last_reset_type=LAST_RESET_TYPE_AUTO,
STATE_CLASS_MEASUREMENT,
LAST_RESET_TYPE_AUTO,
) )
.extend( .extend(
{ {

View file

@ -6,7 +6,6 @@ from esphome.const import (
CONF_ID, CONF_ID,
CONF_INTEGRATION_TIME, CONF_INTEGRATION_TIME,
DEVICE_CLASS_ILLUMINANCE, DEVICE_CLASS_ILLUMINANCE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_LUX, UNIT_LUX,
) )
@ -41,7 +40,10 @@ TSL2561Sensor = tsl2561_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_LUX, ICON_EMPTY, 1, DEVICE_CLASS_ILLUMINANCE, STATE_CLASS_MEASUREMENT unit_of_measurement=UNIT_LUX,
accuracy_decimals=1,
device_class=DEVICE_CLASS_ILLUMINANCE,
state_class=STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_WIND_SPEED, CONF_WIND_SPEED,
CONF_PIN, CONF_PIN,
CONF_WIND_DIRECTION_DEGREES, CONF_WIND_DIRECTION_DEGREES,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
STATE_CLASS_NONE, STATE_CLASS_NONE,
UNIT_KILOMETER_PER_HOUR, UNIT_KILOMETER_PER_HOUR,
@ -23,14 +22,16 @@ CONFIG_SCHEMA = cv.Schema(
{ {
cv.GenerateID(): cv.declare_id(Tx20Component), cv.GenerateID(): cv.declare_id(Tx20Component),
cv.Optional(CONF_WIND_SPEED): sensor.sensor_schema( cv.Optional(CONF_WIND_SPEED): sensor.sensor_schema(
UNIT_KILOMETER_PER_HOUR, unit_of_measurement=UNIT_KILOMETER_PER_HOUR,
ICON_WEATHER_WINDY, icon=ICON_WEATHER_WINDY,
1, accuracy_decimals=1,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_WIND_DIRECTION_DEGREES): sensor.sensor_schema( cv.Optional(CONF_WIND_DIRECTION_DEGREES): sensor.sensor_schema(
UNIT_DEGREES, ICON_SIGN_DIRECTION, 1, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE unit_of_measurement=UNIT_DEGREES,
icon=ICON_SIGN_DIRECTION,
accuracy_decimals=1,
state_class=STATE_CLASS_NONE,
), ),
cv.Required(CONF_PIN): cv.All( cv.Required(CONF_PIN): cv.All(
pins.internal_gpio_input_pin_schema, pins.validate_has_interrupt pins.internal_gpio_input_pin_schema, pins.validate_has_interrupt

View file

@ -7,7 +7,6 @@ from esphome.const import (
CONF_ID, CONF_ID,
CONF_TRIGGER_PIN, CONF_TRIGGER_PIN,
CONF_TIMEOUT, CONF_TIMEOUT,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_METER, UNIT_METER,
ICON_ARROW_EXPAND_VERTICAL, ICON_ARROW_EXPAND_VERTICAL,
@ -22,11 +21,10 @@ UltrasonicSensorComponent = ultrasonic_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_METER, unit_of_measurement=UNIT_METER,
ICON_ARROW_EXPAND_VERTICAL, icon=ICON_ARROW_EXPAND_VERTICAL,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -3,7 +3,6 @@ import esphome.config_validation as cv
from esphome.components import sensor from esphome.components import sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_EMPTY,
STATE_CLASS_NONE, STATE_CLASS_NONE,
UNIT_SECOND, UNIT_SECOND,
ICON_TIMER, ICON_TIMER,
@ -14,7 +13,10 @@ UptimeSensor = uptime_ns.class_("UptimeSensor", sensor.Sensor, cg.PollingCompone
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_SECOND, ICON_TIMER, 0, DEVICE_CLASS_EMPTY, STATE_CLASS_NONE unit_of_measurement=UNIT_SECOND,
icon=ICON_TIMER,
accuracy_decimals=0,
state_class=STATE_CLASS_NONE,
) )
.extend( .extend(
{ {

View file

@ -3,7 +3,6 @@ import esphome.config_validation as cv
from esphome.components import i2c, sensor from esphome.components import i2c, sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_METER, UNIT_METER,
ICON_ARROW_EXPAND_VERTICAL, ICON_ARROW_EXPAND_VERTICAL,
@ -42,11 +41,10 @@ def check_timeout(value):
CONFIG_SCHEMA = cv.All( CONFIG_SCHEMA = cv.All(
sensor.sensor_schema( sensor.sensor_schema(
UNIT_METER, unit_of_measurement=UNIT_METER,
ICON_ARROW_EXPAND_VERTICAL, icon=ICON_ARROW_EXPAND_VERTICAL,
2, accuracy_decimals=2,
DEVICE_CLASS_EMPTY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -4,7 +4,6 @@ from esphome.components import sensor
from esphome.const import ( from esphome.const import (
CONF_ID, CONF_ID,
DEVICE_CLASS_SIGNAL_STRENGTH, DEVICE_CLASS_SIGNAL_STRENGTH,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_DECIBEL_MILLIWATT, UNIT_DECIBEL_MILLIWATT,
) )
@ -17,11 +16,10 @@ WiFiSignalSensor = wifi_signal_ns.class_(
CONFIG_SCHEMA = ( CONFIG_SCHEMA = (
sensor.sensor_schema( sensor.sensor_schema(
UNIT_DECIBEL_MILLIWATT, unit_of_measurement=UNIT_DECIBEL_MILLIWATT,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_SIGNAL_STRENGTH,
DEVICE_CLASS_SIGNAL_STRENGTH, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
) )
.extend( .extend(
{ {

View file

@ -10,7 +10,6 @@ from esphome.const import (
DEVICE_CLASS_BATTERY, DEVICE_CLASS_BATTERY,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ICON_EMPTY,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
UNIT_CELSIUS, UNIT_CELSIUS,
UNIT_PERCENT, UNIT_PERCENT,
@ -32,25 +31,22 @@ CONFIG_SCHEMA = (
cv.Required(CONF_BINDKEY): cv.bind_key, cv.Required(CONF_BINDKEY): cv.bind_key,
cv.Required(CONF_MAC_ADDRESS): cv.mac_address, cv.Required(CONF_MAC_ADDRESS): cv.mac_address,
cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema( cv.Optional(CONF_TEMPERATURE): sensor.sensor_schema(
UNIT_CELSIUS, unit_of_measurement=UNIT_CELSIUS,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TEMPERATURE, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_HUMIDITY): sensor.sensor_schema( cv.Optional(CONF_HUMIDITY): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=1,
1, device_class=DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_HUMIDITY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
cv.Optional(CONF_BATTERY_LEVEL): sensor.sensor_schema( cv.Optional(CONF_BATTERY_LEVEL): sensor.sensor_schema(
UNIT_PERCENT, unit_of_measurement=UNIT_PERCENT,
ICON_EMPTY, accuracy_decimals=0,
0, device_class=DEVICE_CLASS_BATTERY,
DEVICE_CLASS_BATTERY, state_class=STATE_CLASS_MEASUREMENT,
STATE_CLASS_MEASUREMENT,
), ),
} }
) )

Some files were not shown because too many files have changed in this diff Show more