Address late review of nut integration (#54606)

* remove defaults from SensorEntityDescription

* use _attr_unique_id  instead of unique_id()

* check if unique_id is not None
This commit is contained in:
Michael 2021-08-16 01:32:01 +02:00 committed by GitHub
parent d01addbd24
commit 9e2945680e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 2 additions and 154 deletions

View File

@ -51,32 +51,22 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
"ups.status.display": SensorEntityDescription( "ups.status.display": SensorEntityDescription(
key="ups.status.display", key="ups.status.display",
name="Status", name="Status",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"ups.status": SensorEntityDescription( "ups.status": SensorEntityDescription(
key="ups.status", key="ups.status",
name="Status Data", name="Status Data",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"ups.alarm": SensorEntityDescription( "ups.alarm": SensorEntityDescription(
key="ups.alarm", key="ups.alarm",
name="Alarms", name="Alarms",
native_unit_of_measurement=None,
icon="mdi:alarm", icon="mdi:alarm",
device_class=None,
state_class=None,
), ),
"ups.temperature": SensorEntityDescription( "ups.temperature": SensorEntityDescription(
key="ups.temperature", key="ups.temperature",
name="UPS Temperature", name="UPS Temperature",
native_unit_of_measurement=TEMP_CELSIUS, native_unit_of_measurement=TEMP_CELSIUS,
icon=None,
device_class=DEVICE_CLASS_TEMPERATURE, device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
@ -85,7 +75,6 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
name="Load", name="Load",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
icon="mdi:gauge", icon="mdi:gauge",
device_class=None,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
"ups.load.high": SensorEntityDescription( "ups.load.high": SensorEntityDescription(
@ -93,111 +82,79 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
name="Overload Setting", name="Overload Setting",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
icon="mdi:gauge", icon="mdi:gauge",
device_class=None,
state_class=None,
), ),
"ups.id": SensorEntityDescription( "ups.id": SensorEntityDescription(
key="ups.id", key="ups.id",
name="System identifier", name="System identifier",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"ups.delay.start": SensorEntityDescription( "ups.delay.start": SensorEntityDescription(
key="ups.delay.start", key="ups.delay.start",
name="Load Restart Delay", name="Load Restart Delay",
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
icon="mdi:timer-outline", icon="mdi:timer-outline",
device_class=None,
state_class=None,
), ),
"ups.delay.reboot": SensorEntityDescription( "ups.delay.reboot": SensorEntityDescription(
key="ups.delay.reboot", key="ups.delay.reboot",
name="UPS Reboot Delay", name="UPS Reboot Delay",
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
icon="mdi:timer-outline", icon="mdi:timer-outline",
device_class=None,
state_class=None,
), ),
"ups.delay.shutdown": SensorEntityDescription( "ups.delay.shutdown": SensorEntityDescription(
key="ups.delay.shutdown", key="ups.delay.shutdown",
name="UPS Shutdown Delay", name="UPS Shutdown Delay",
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
icon="mdi:timer-outline", icon="mdi:timer-outline",
device_class=None,
state_class=None,
), ),
"ups.timer.start": SensorEntityDescription( "ups.timer.start": SensorEntityDescription(
key="ups.timer.start", key="ups.timer.start",
name="Load Start Timer", name="Load Start Timer",
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
icon="mdi:timer-outline", icon="mdi:timer-outline",
device_class=None,
state_class=None,
), ),
"ups.timer.reboot": SensorEntityDescription( "ups.timer.reboot": SensorEntityDescription(
key="ups.timer.reboot", key="ups.timer.reboot",
name="Load Reboot Timer", name="Load Reboot Timer",
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
icon="mdi:timer-outline", icon="mdi:timer-outline",
device_class=None,
state_class=None,
), ),
"ups.timer.shutdown": SensorEntityDescription( "ups.timer.shutdown": SensorEntityDescription(
key="ups.timer.shutdown", key="ups.timer.shutdown",
name="Load Shutdown Timer", name="Load Shutdown Timer",
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
icon="mdi:timer-outline", icon="mdi:timer-outline",
device_class=None,
state_class=None,
), ),
"ups.test.interval": SensorEntityDescription( "ups.test.interval": SensorEntityDescription(
key="ups.test.interval", key="ups.test.interval",
name="Self-Test Interval", name="Self-Test Interval",
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
icon="mdi:timer-outline", icon="mdi:timer-outline",
device_class=None,
state_class=None,
), ),
"ups.test.result": SensorEntityDescription( "ups.test.result": SensorEntityDescription(
key="ups.test.result", key="ups.test.result",
name="Self-Test Result", name="Self-Test Result",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"ups.test.date": SensorEntityDescription( "ups.test.date": SensorEntityDescription(
key="ups.test.date", key="ups.test.date",
name="Self-Test Date", name="Self-Test Date",
native_unit_of_measurement=None,
icon="mdi:calendar", icon="mdi:calendar",
device_class=None,
state_class=None,
), ),
"ups.display.language": SensorEntityDescription( "ups.display.language": SensorEntityDescription(
key="ups.display.language", key="ups.display.language",
name="Language", name="Language",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"ups.contacts": SensorEntityDescription( "ups.contacts": SensorEntityDescription(
key="ups.contacts", key="ups.contacts",
name="External Contacts", name="External Contacts",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"ups.efficiency": SensorEntityDescription( "ups.efficiency": SensorEntityDescription(
key="ups.efficiency", key="ups.efficiency",
name="Efficiency", name="Efficiency",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
icon="mdi:gauge", icon="mdi:gauge",
device_class=None,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
"ups.power": SensorEntityDescription( "ups.power": SensorEntityDescription(
@ -205,7 +162,6 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
name="Current Apparent Power", name="Current Apparent Power",
native_unit_of_measurement=POWER_VOLT_AMPERE, native_unit_of_measurement=POWER_VOLT_AMPERE,
icon="mdi:flash", icon="mdi:flash",
device_class=None,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
"ups.power.nominal": SensorEntityDescription( "ups.power.nominal": SensorEntityDescription(
@ -213,14 +169,11 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
name="Nominal Power", name="Nominal Power",
native_unit_of_measurement=POWER_VOLT_AMPERE, native_unit_of_measurement=POWER_VOLT_AMPERE,
icon="mdi:flash", icon="mdi:flash",
device_class=None,
state_class=None,
), ),
"ups.realpower": SensorEntityDescription( "ups.realpower": SensorEntityDescription(
key="ups.realpower", key="ups.realpower",
name="Current Real Power", name="Current Real Power",
native_unit_of_measurement=POWER_WATT, native_unit_of_measurement=POWER_WATT,
icon=None,
device_class=DEVICE_CLASS_POWER, device_class=DEVICE_CLASS_POWER,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
@ -228,71 +181,47 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
key="ups.realpower.nominal", key="ups.realpower.nominal",
name="Nominal Real Power", name="Nominal Real Power",
native_unit_of_measurement=POWER_WATT, native_unit_of_measurement=POWER_WATT,
icon=None,
device_class=DEVICE_CLASS_POWER, device_class=DEVICE_CLASS_POWER,
state_class=None,
), ),
"ups.beeper.status": SensorEntityDescription( "ups.beeper.status": SensorEntityDescription(
key="ups.beeper.status", key="ups.beeper.status",
name="Beeper Status", name="Beeper Status",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"ups.type": SensorEntityDescription( "ups.type": SensorEntityDescription(
key="ups.type", key="ups.type",
name="UPS Type", name="UPS Type",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"ups.watchdog.status": SensorEntityDescription( "ups.watchdog.status": SensorEntityDescription(
key="ups.watchdog.status", key="ups.watchdog.status",
name="Watchdog Status", name="Watchdog Status",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"ups.start.auto": SensorEntityDescription( "ups.start.auto": SensorEntityDescription(
key="ups.start.auto", key="ups.start.auto",
name="Start on AC", name="Start on AC",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"ups.start.battery": SensorEntityDescription( "ups.start.battery": SensorEntityDescription(
key="ups.start.battery", key="ups.start.battery",
name="Start on Battery", name="Start on Battery",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"ups.start.reboot": SensorEntityDescription( "ups.start.reboot": SensorEntityDescription(
key="ups.start.reboot", key="ups.start.reboot",
name="Reboot on Battery", name="Reboot on Battery",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"ups.shutdown": SensorEntityDescription( "ups.shutdown": SensorEntityDescription(
key="ups.shutdown", key="ups.shutdown",
name="Shutdown Ability", name="Shutdown Ability",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"battery.charge": SensorEntityDescription( "battery.charge": SensorEntityDescription(
key="battery.charge", key="battery.charge",
name="Battery Charge", name="Battery Charge",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
icon=None,
device_class=DEVICE_CLASS_BATTERY, device_class=DEVICE_CLASS_BATTERY,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
@ -301,38 +230,28 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
name="Low Battery Setpoint", name="Low Battery Setpoint",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
icon="mdi:gauge", icon="mdi:gauge",
device_class=None,
state_class=None,
), ),
"battery.charge.restart": SensorEntityDescription( "battery.charge.restart": SensorEntityDescription(
key="battery.charge.restart", key="battery.charge.restart",
name="Minimum Battery to Start", name="Minimum Battery to Start",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
icon="mdi:gauge", icon="mdi:gauge",
device_class=None,
state_class=None,
), ),
"battery.charge.warning": SensorEntityDescription( "battery.charge.warning": SensorEntityDescription(
key="battery.charge.warning", key="battery.charge.warning",
name="Warning Battery Setpoint", name="Warning Battery Setpoint",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
icon="mdi:gauge", icon="mdi:gauge",
device_class=None,
state_class=None,
), ),
"battery.charger.status": SensorEntityDescription( "battery.charger.status": SensorEntityDescription(
key="battery.charger.status", key="battery.charger.status",
name="Charging Status", name="Charging Status",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"battery.voltage": SensorEntityDescription( "battery.voltage": SensorEntityDescription(
key="battery.voltage", key="battery.voltage",
name="Battery Voltage", name="Battery Voltage",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
icon=None,
device_class=DEVICE_CLASS_VOLTAGE, device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
@ -340,40 +259,31 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
key="battery.voltage.nominal", key="battery.voltage.nominal",
name="Nominal Battery Voltage", name="Nominal Battery Voltage",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
icon=None,
device_class=DEVICE_CLASS_VOLTAGE, device_class=DEVICE_CLASS_VOLTAGE,
state_class=None,
), ),
"battery.voltage.low": SensorEntityDescription( "battery.voltage.low": SensorEntityDescription(
key="battery.voltage.low", key="battery.voltage.low",
name="Low Battery Voltage", name="Low Battery Voltage",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
icon=None,
device_class=DEVICE_CLASS_VOLTAGE, device_class=DEVICE_CLASS_VOLTAGE,
state_class=None,
), ),
"battery.voltage.high": SensorEntityDescription( "battery.voltage.high": SensorEntityDescription(
key="battery.voltage.high", key="battery.voltage.high",
name="High Battery Voltage", name="High Battery Voltage",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
icon=None,
device_class=DEVICE_CLASS_VOLTAGE, device_class=DEVICE_CLASS_VOLTAGE,
state_class=None,
), ),
"battery.capacity": SensorEntityDescription( "battery.capacity": SensorEntityDescription(
key="battery.capacity", key="battery.capacity",
name="Battery Capacity", name="Battery Capacity",
native_unit_of_measurement="Ah", native_unit_of_measurement="Ah",
icon="mdi:flash", icon="mdi:flash",
device_class=None,
state_class=None,
), ),
"battery.current": SensorEntityDescription( "battery.current": SensorEntityDescription(
key="battery.current", key="battery.current",
name="Battery Current", name="Battery Current",
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE, native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
icon="mdi:flash", icon="mdi:flash",
device_class=None,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
"battery.current.total": SensorEntityDescription( "battery.current.total": SensorEntityDescription(
@ -381,14 +291,11 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
name="Total Battery Current", name="Total Battery Current",
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE, native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
icon="mdi:flash", icon="mdi:flash",
device_class=None,
state_class=None,
), ),
"battery.temperature": SensorEntityDescription( "battery.temperature": SensorEntityDescription(
key="battery.temperature", key="battery.temperature",
name="Battery Temperature", name="Battery Temperature",
native_unit_of_measurement=TEMP_CELSIUS, native_unit_of_measurement=TEMP_CELSIUS,
icon=None,
device_class=DEVICE_CLASS_TEMPERATURE, device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
@ -397,110 +304,75 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
name="Battery Runtime", name="Battery Runtime",
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
icon="mdi:timer-outline", icon="mdi:timer-outline",
device_class=None,
state_class=None,
), ),
"battery.runtime.low": SensorEntityDescription( "battery.runtime.low": SensorEntityDescription(
key="battery.runtime.low", key="battery.runtime.low",
name="Low Battery Runtime", name="Low Battery Runtime",
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
icon="mdi:timer-outline", icon="mdi:timer-outline",
device_class=None,
state_class=None,
), ),
"battery.runtime.restart": SensorEntityDescription( "battery.runtime.restart": SensorEntityDescription(
key="battery.runtime.restart", key="battery.runtime.restart",
name="Minimum Battery Runtime to Start", name="Minimum Battery Runtime to Start",
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
icon="mdi:timer-outline", icon="mdi:timer-outline",
device_class=None,
state_class=None,
), ),
"battery.alarm.threshold": SensorEntityDescription( "battery.alarm.threshold": SensorEntityDescription(
key="battery.alarm.threshold", key="battery.alarm.threshold",
name="Battery Alarm Threshold", name="Battery Alarm Threshold",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"battery.date": SensorEntityDescription( "battery.date": SensorEntityDescription(
key="battery.date", key="battery.date",
name="Battery Date", name="Battery Date",
native_unit_of_measurement=None,
icon="mdi:calendar", icon="mdi:calendar",
device_class=None,
state_class=None,
), ),
"battery.mfr.date": SensorEntityDescription( "battery.mfr.date": SensorEntityDescription(
key="battery.mfr.date", key="battery.mfr.date",
name="Battery Manuf. Date", name="Battery Manuf. Date",
native_unit_of_measurement=None,
icon="mdi:calendar", icon="mdi:calendar",
device_class=None,
state_class=None,
), ),
"battery.packs": SensorEntityDescription( "battery.packs": SensorEntityDescription(
key="battery.packs", key="battery.packs",
name="Number of Batteries", name="Number of Batteries",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"battery.packs.bad": SensorEntityDescription( "battery.packs.bad": SensorEntityDescription(
key="battery.packs.bad", key="battery.packs.bad",
name="Number of Bad Batteries", name="Number of Bad Batteries",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"battery.type": SensorEntityDescription( "battery.type": SensorEntityDescription(
key="battery.type", key="battery.type",
name="Battery Chemistry", name="Battery Chemistry",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"input.sensitivity": SensorEntityDescription( "input.sensitivity": SensorEntityDescription(
key="input.sensitivity", key="input.sensitivity",
name="Input Power Sensitivity", name="Input Power Sensitivity",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"input.transfer.low": SensorEntityDescription( "input.transfer.low": SensorEntityDescription(
key="input.transfer.low", key="input.transfer.low",
name="Low Voltage Transfer", name="Low Voltage Transfer",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
icon=None,
device_class=DEVICE_CLASS_VOLTAGE, device_class=DEVICE_CLASS_VOLTAGE,
state_class=None,
), ),
"input.transfer.high": SensorEntityDescription( "input.transfer.high": SensorEntityDescription(
key="input.transfer.high", key="input.transfer.high",
name="High Voltage Transfer", name="High Voltage Transfer",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
icon=None,
device_class=DEVICE_CLASS_VOLTAGE, device_class=DEVICE_CLASS_VOLTAGE,
state_class=None,
), ),
"input.transfer.reason": SensorEntityDescription( "input.transfer.reason": SensorEntityDescription(
key="input.transfer.reason", key="input.transfer.reason",
name="Voltage Transfer Reason", name="Voltage Transfer Reason",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"input.voltage": SensorEntityDescription( "input.voltage": SensorEntityDescription(
key="input.voltage", key="input.voltage",
name="Input Voltage", name="Input Voltage",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
icon=None,
device_class=DEVICE_CLASS_VOLTAGE, device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
@ -508,16 +380,13 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
key="input.voltage.nominal", key="input.voltage.nominal",
name="Nominal Input Voltage", name="Nominal Input Voltage",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
icon=None,
device_class=DEVICE_CLASS_VOLTAGE, device_class=DEVICE_CLASS_VOLTAGE,
state_class=None,
), ),
"input.frequency": SensorEntityDescription( "input.frequency": SensorEntityDescription(
key="input.frequency", key="input.frequency",
name="Input Line Frequency", name="Input Line Frequency",
native_unit_of_measurement=FREQUENCY_HERTZ, native_unit_of_measurement=FREQUENCY_HERTZ,
icon="mdi:flash", icon="mdi:flash",
device_class=None,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
"input.frequency.nominal": SensorEntityDescription( "input.frequency.nominal": SensorEntityDescription(
@ -525,23 +394,17 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
name="Nominal Input Line Frequency", name="Nominal Input Line Frequency",
native_unit_of_measurement=FREQUENCY_HERTZ, native_unit_of_measurement=FREQUENCY_HERTZ,
icon="mdi:flash", icon="mdi:flash",
device_class=None,
state_class=None,
), ),
"input.frequency.status": SensorEntityDescription( "input.frequency.status": SensorEntityDescription(
key="input.frequency.status", key="input.frequency.status",
name="Input Frequency Status", name="Input Frequency Status",
native_unit_of_measurement=None,
icon="mdi:information-outline", icon="mdi:information-outline",
device_class=None,
state_class=None,
), ),
"output.current": SensorEntityDescription( "output.current": SensorEntityDescription(
key="output.current", key="output.current",
name="Output Current", name="Output Current",
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE, native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
icon="mdi:flash", icon="mdi:flash",
device_class=None,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
"output.current.nominal": SensorEntityDescription( "output.current.nominal": SensorEntityDescription(
@ -549,14 +412,11 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
name="Nominal Output Current", name="Nominal Output Current",
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE, native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
icon="mdi:flash", icon="mdi:flash",
device_class=None,
state_class=None,
), ),
"output.voltage": SensorEntityDescription( "output.voltage": SensorEntityDescription(
key="output.voltage", key="output.voltage",
name="Output Voltage", name="Output Voltage",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
icon=None,
device_class=DEVICE_CLASS_VOLTAGE, device_class=DEVICE_CLASS_VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
@ -564,16 +424,13 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
key="output.voltage.nominal", key="output.voltage.nominal",
name="Nominal Output Voltage", name="Nominal Output Voltage",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
icon=None,
device_class=DEVICE_CLASS_VOLTAGE, device_class=DEVICE_CLASS_VOLTAGE,
state_class=None,
), ),
"output.frequency": SensorEntityDescription( "output.frequency": SensorEntityDescription(
key="output.frequency", key="output.frequency",
name="Output Frequency", name="Output Frequency",
native_unit_of_measurement=FREQUENCY_HERTZ, native_unit_of_measurement=FREQUENCY_HERTZ,
icon="mdi:flash", icon="mdi:flash",
device_class=None,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
"output.frequency.nominal": SensorEntityDescription( "output.frequency.nominal": SensorEntityDescription(
@ -581,14 +438,11 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
name="Nominal Output Frequency", name="Nominal Output Frequency",
native_unit_of_measurement=FREQUENCY_HERTZ, native_unit_of_measurement=FREQUENCY_HERTZ,
icon="mdi:flash", icon="mdi:flash",
device_class=None,
state_class=None,
), ),
"ambient.humidity": SensorEntityDescription( "ambient.humidity": SensorEntityDescription(
key="ambient.humidity", key="ambient.humidity",
name="Ambient Humidity", name="Ambient Humidity",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
icon=None,
device_class=DEVICE_CLASS_HUMIDITY, device_class=DEVICE_CLASS_HUMIDITY,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),
@ -596,7 +450,6 @@ SENSOR_TYPES: Final[dict[str, SensorEntityDescription]] = {
key="ambient.temperature", key="ambient.temperature",
name="Ambient Temperature", name="Ambient Temperature",
native_unit_of_measurement=TEMP_CELSIUS, native_unit_of_measurement=TEMP_CELSIUS,
icon=None,
device_class=DEVICE_CLASS_TEMPERATURE, device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),

View File

@ -104,6 +104,8 @@ class NUTSensor(CoordinatorEntity, SensorEntity):
self._unique_id = unique_id self._unique_id = unique_id
self._attr_name = f"{name} {sensor_description.name}" self._attr_name = f"{name} {sensor_description.name}"
if unique_id is not None:
self._attr_unique_id = f"{unique_id}_{sensor_description.key}"
@property @property
def device_info(self): def device_info(self):
@ -122,13 +124,6 @@ class NUTSensor(CoordinatorEntity, SensorEntity):
device_info["sw_version"] = self._firmware device_info["sw_version"] = self._firmware
return device_info return device_info
@property
def unique_id(self):
"""Sensor Unique id."""
if not self._unique_id:
return None
return f"{self._unique_id}_{self.entity_description.key}"
@property @property
def native_value(self): def native_value(self):
"""Return entity state from ups.""" """Return entity state from ups."""