Add MOS temperature sensors to Indevolt (#170775)

This commit is contained in:
A. Gideonse
2026-05-15 11:43:55 +02:00
committed by GitHub
parent e61835df17
commit 75a5fcbee7
7 changed files with 525 additions and 1 deletions
@@ -57,6 +57,8 @@ SENSOR_KEYS: Final[dict[int, list[str]]] = {
IndevoltBattery.GEN_1_PACK_1_TEMPERATURE,
IndevoltBattery.GEN_1_PACK_2_TEMPERATURE,
IndevoltBattery.GEN_1_PACK_3_TEMPERATURE,
IndevoltBattery.GEN_1_MOS_TEMPERATURE_CHARGE,
IndevoltBattery.GEN_1_MOS_TEMPERATURE_DISCHARGE,
],
2: [
IndevoltSystem.OPERATING_MODE,
@@ -111,6 +113,11 @@ SENSOR_KEYS: Final[dict[int, list[str]]] = {
IndevoltBattery.PACK_3_TEMPERATURE,
IndevoltBattery.PACK_4_TEMPERATURE,
IndevoltBattery.PACK_5_TEMPERATURE,
IndevoltBattery.PACK_1_MOS_TEMPERATURE,
IndevoltBattery.PACK_2_MOS_TEMPERATURE,
IndevoltBattery.PACK_3_MOS_TEMPERATURE,
IndevoltBattery.PACK_4_MOS_TEMPERATURE,
IndevoltBattery.PACK_5_MOS_TEMPERATURE,
IndevoltBattery.MAIN_VOLTAGE,
IndevoltBattery.PACK_1_VOLTAGE,
IndevoltBattery.PACK_2_VOLTAGE,
+77 -1
View File
@@ -459,6 +459,26 @@ SENSORS: Final = (
entity_category=EntityCategory.DIAGNOSTIC,
entity_registry_enabled_default=False,
),
IndevoltSensorEntityDescription(
key=IndevoltBattery.GEN_1_MOS_TEMPERATURE_CHARGE,
generation=(1,),
translation_key="mos_temperature_charge",
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
entity_registry_enabled_default=False,
),
IndevoltSensorEntityDescription(
key=IndevoltBattery.GEN_1_MOS_TEMPERATURE_DISCHARGE,
generation=(1,),
translation_key="mos_temperature_discharge",
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
entity_registry_enabled_default=False,
),
IndevoltSensorEntityDescription(
key=IndevoltBattery.GEN_1_PACK_1_TEMPERATURE,
generation=(1,),
@@ -549,6 +569,57 @@ SENSORS: Final = (
entity_category=EntityCategory.DIAGNOSTIC,
entity_registry_enabled_default=False,
),
# Battery Pack MOS Temperature
IndevoltSensorEntityDescription(
key=IndevoltBattery.PACK_1_MOS_TEMPERATURE,
generation=(2,),
translation_key="battery_pack_1_mos_temperature",
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
entity_registry_enabled_default=False,
),
IndevoltSensorEntityDescription(
key=IndevoltBattery.PACK_2_MOS_TEMPERATURE,
generation=(2,),
translation_key="battery_pack_2_mos_temperature",
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
entity_registry_enabled_default=False,
),
IndevoltSensorEntityDescription(
key=IndevoltBattery.PACK_3_MOS_TEMPERATURE,
generation=(2,),
translation_key="battery_pack_3_mos_temperature",
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
entity_registry_enabled_default=False,
),
IndevoltSensorEntityDescription(
key=IndevoltBattery.PACK_4_MOS_TEMPERATURE,
generation=(2,),
translation_key="battery_pack_4_mos_temperature",
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
entity_registry_enabled_default=False,
),
IndevoltSensorEntityDescription(
key=IndevoltBattery.PACK_5_MOS_TEMPERATURE,
generation=(2,),
translation_key="battery_pack_5_mos_temperature",
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
entity_registry_enabled_default=False,
),
# Battery Pack Voltage
IndevoltSensorEntityDescription(
key=IndevoltBattery.MAIN_VOLTAGE,
@@ -673,12 +744,13 @@ SENSORS: Final = (
),
)
# Sensors per battery pack (SN, SOC, Temperature, Voltage, Current)
# Sensors per battery pack (SN, SOC, Temperature, MOS Temperature, Voltage, Current)
BATTERY_PACK_SENSOR_KEYS = [
(
IndevoltBattery.PACK_1_SERIAL_NUMBER,
IndevoltBattery.PACK_1_SOC,
IndevoltBattery.PACK_1_TEMPERATURE,
IndevoltBattery.PACK_1_MOS_TEMPERATURE,
IndevoltBattery.PACK_1_VOLTAGE,
IndevoltBattery.PACK_1_CURRENT,
),
@@ -686,6 +758,7 @@ BATTERY_PACK_SENSOR_KEYS = [
IndevoltBattery.PACK_2_SERIAL_NUMBER,
IndevoltBattery.PACK_2_SOC,
IndevoltBattery.PACK_2_TEMPERATURE,
IndevoltBattery.PACK_2_MOS_TEMPERATURE,
IndevoltBattery.PACK_2_VOLTAGE,
IndevoltBattery.PACK_2_CURRENT,
),
@@ -693,6 +766,7 @@ BATTERY_PACK_SENSOR_KEYS = [
IndevoltBattery.PACK_3_SERIAL_NUMBER,
IndevoltBattery.PACK_3_SOC,
IndevoltBattery.PACK_3_TEMPERATURE,
IndevoltBattery.PACK_3_MOS_TEMPERATURE,
IndevoltBattery.PACK_3_VOLTAGE,
IndevoltBattery.PACK_3_CURRENT,
),
@@ -700,6 +774,7 @@ BATTERY_PACK_SENSOR_KEYS = [
IndevoltBattery.PACK_4_SERIAL_NUMBER,
IndevoltBattery.PACK_4_SOC,
IndevoltBattery.PACK_4_TEMPERATURE,
IndevoltBattery.PACK_4_MOS_TEMPERATURE,
IndevoltBattery.PACK_4_VOLTAGE,
IndevoltBattery.PACK_4_CURRENT,
),
@@ -707,6 +782,7 @@ BATTERY_PACK_SENSOR_KEYS = [
IndevoltBattery.PACK_5_SERIAL_NUMBER,
IndevoltBattery.PACK_5_SOC,
IndevoltBattery.PACK_5_TEMPERATURE,
IndevoltBattery.PACK_5_MOS_TEMPERATURE,
IndevoltBattery.PACK_5_VOLTAGE,
IndevoltBattery.PACK_5_CURRENT,
),
@@ -114,6 +114,9 @@
"battery_pack_1_current": {
"name": "Battery pack 1 current"
},
"battery_pack_1_mos_temperature": {
"name": "Battery pack 1 MOS temperature"
},
"battery_pack_1_serial_number": {
"name": "Battery pack 1 SN"
},
@@ -129,6 +132,9 @@
"battery_pack_2_current": {
"name": "Battery pack 2 current"
},
"battery_pack_2_mos_temperature": {
"name": "Battery pack 2 MOS temperature"
},
"battery_pack_2_serial_number": {
"name": "Battery pack 2 SN"
},
@@ -144,6 +150,9 @@
"battery_pack_3_current": {
"name": "Battery pack 3 current"
},
"battery_pack_3_mos_temperature": {
"name": "Battery pack 3 MOS temperature"
},
"battery_pack_3_serial_number": {
"name": "Battery pack 3 SN"
},
@@ -159,6 +168,9 @@
"battery_pack_4_current": {
"name": "Battery pack 4 current"
},
"battery_pack_4_mos_temperature": {
"name": "Battery pack 4 MOS temperature"
},
"battery_pack_4_serial_number": {
"name": "Battery pack 4 SN"
},
@@ -174,6 +186,9 @@
"battery_pack_5_current": {
"name": "Battery pack 5 current"
},
"battery_pack_5_mos_temperature": {
"name": "Battery pack 5 MOS temperature"
},
"battery_pack_5_serial_number": {
"name": "Battery pack 5 SN"
},
@@ -296,6 +311,12 @@
"sub": "Cluster (sub)"
}
},
"mos_temperature_charge": {
"name": "MOS temperature charge"
},
"mos_temperature_discharge": {
"name": "MOS temperature discharge"
},
"off_grid_output_energy": {
"name": "Off-grid output energy"
},
@@ -33,5 +33,7 @@
"7605": 28.1,
"7620": 27.4,
"7621": 29.0,
"7638": 38.5,
"7639": 36.2,
"21028": 0
}
@@ -78,6 +78,11 @@
"19175": 15.1,
"19176": 15.3,
"19177": 14.9,
"11042": 32.1,
"9085": 31.5,
"9101": 32.8,
"9117": 31.9,
"9133": 33.0,
"7171": 1,
"680": 0
}
@@ -35,6 +35,8 @@
'7605': 28.1,
'7620': 27.4,
'7621': 29.0,
'7638': 38.5,
'7639': 36.2,
}),
'device': dict({
'firmware_version': '1.2.3',
@@ -60,6 +62,7 @@
'11011': 85,
'11016': 0,
'11034': 100,
'11042': 32.1,
'142': 1.79,
'1501': 0,
'1502': 0,
@@ -121,9 +124,13 @@
'9068': 25.0,
'9070': '**REDACTED**',
'9079': 1,
'9085': 31.5,
'9096': 1,
'9101': 32.8,
'9112': 0,
'9117': 31.9,
'9128': 1,
'9133': 33.0,
'9144': 0,
'9149': 94,
'9153': 51.4,
@@ -1630,6 +1630,122 @@
'state': '0',
})
# ---
# name: test_sensor[1][sensor.bk1600_mos_temperature_charge-entry]
EntityRegistryEntrySnapshot({
'aliases': list([
None,
]),
'area_id': None,
'capabilities': dict({
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
'entity_id': 'sensor.bk1600_mos_temperature_charge',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'object_id_base': 'MOS temperature charge',
'options': dict({
'sensor': dict({
'suggested_display_precision': 1,
}),
}),
'original_device_class': <SensorDeviceClass.TEMPERATURE: 'temperature'>,
'original_icon': None,
'original_name': 'MOS temperature charge',
'platform': 'indevolt',
'previous_unique_id': None,
'suggested_object_id': None,
'supported_features': 0,
'translation_key': 'mos_temperature_charge',
'unique_id': 'BK1600-12345678_7638',
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
})
# ---
# name: test_sensor[1][sensor.bk1600_mos_temperature_charge-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'temperature',
'friendly_name': 'BK1600 MOS temperature charge',
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
}),
'context': <ANY>,
'entity_id': 'sensor.bk1600_mos_temperature_charge',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '38.5',
})
# ---
# name: test_sensor[1][sensor.bk1600_mos_temperature_discharge-entry]
EntityRegistryEntrySnapshot({
'aliases': list([
None,
]),
'area_id': None,
'capabilities': dict({
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
'entity_id': 'sensor.bk1600_mos_temperature_discharge',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'object_id_base': 'MOS temperature discharge',
'options': dict({
'sensor': dict({
'suggested_display_precision': 1,
}),
}),
'original_device_class': <SensorDeviceClass.TEMPERATURE: 'temperature'>,
'original_icon': None,
'original_name': 'MOS temperature discharge',
'platform': 'indevolt',
'previous_unique_id': None,
'suggested_object_id': None,
'supported_features': 0,
'translation_key': 'mos_temperature_discharge',
'unique_id': 'BK1600-12345678_7639',
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
})
# ---
# name: test_sensor[1][sensor.bk1600_mos_temperature_discharge-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'temperature',
'friendly_name': 'BK1600 MOS temperature discharge',
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
}),
'context': <ANY>,
'entity_id': 'sensor.bk1600_mos_temperature_discharge',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '36.2',
})
# ---
# name: test_sensor[1][sensor.bk1600_off_grid_output_energy-entry]
EntityRegistryEntrySnapshot({
'aliases': list([
@@ -2156,6 +2272,64 @@
'state': '14.8',
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_1_mos_temperature-entry]
EntityRegistryEntrySnapshot({
'aliases': list([
None,
]),
'area_id': None,
'capabilities': dict({
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
'entity_id': 'sensor.cms_sf2000_battery_pack_1_mos_temperature',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'object_id_base': 'Battery pack 1 MOS temperature',
'options': dict({
'sensor': dict({
'suggested_display_precision': 1,
}),
}),
'original_device_class': <SensorDeviceClass.TEMPERATURE: 'temperature'>,
'original_icon': None,
'original_name': 'Battery pack 1 MOS temperature',
'platform': 'indevolt',
'previous_unique_id': None,
'suggested_object_id': None,
'supported_features': 0,
'translation_key': 'battery_pack_1_mos_temperature',
'unique_id': 'SolidFlex2000-87654321_11042',
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_1_mos_temperature-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'temperature',
'friendly_name': 'CMS-SF2000 Battery pack 1 MOS temperature',
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
}),
'context': <ANY>,
'entity_id': 'sensor.cms_sf2000_battery_pack_1_mos_temperature',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '32.1',
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_1_sn-entry]
EntityRegistryEntrySnapshot({
'aliases': list([
@@ -2435,6 +2609,64 @@
'state': '15.0',
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_2_mos_temperature-entry]
EntityRegistryEntrySnapshot({
'aliases': list([
None,
]),
'area_id': None,
'capabilities': dict({
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
'entity_id': 'sensor.cms_sf2000_battery_pack_2_mos_temperature',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'object_id_base': 'Battery pack 2 MOS temperature',
'options': dict({
'sensor': dict({
'suggested_display_precision': 1,
}),
}),
'original_device_class': <SensorDeviceClass.TEMPERATURE: 'temperature'>,
'original_icon': None,
'original_name': 'Battery pack 2 MOS temperature',
'platform': 'indevolt',
'previous_unique_id': None,
'suggested_object_id': None,
'supported_features': 0,
'translation_key': 'battery_pack_2_mos_temperature',
'unique_id': 'SolidFlex2000-87654321_9085',
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_2_mos_temperature-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'temperature',
'friendly_name': 'CMS-SF2000 Battery pack 2 MOS temperature',
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
}),
'context': <ANY>,
'entity_id': 'sensor.cms_sf2000_battery_pack_2_mos_temperature',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '31.5',
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_2_sn-entry]
EntityRegistryEntrySnapshot({
'aliases': list([
@@ -2714,6 +2946,64 @@
'state': '15.1',
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_3_mos_temperature-entry]
EntityRegistryEntrySnapshot({
'aliases': list([
None,
]),
'area_id': None,
'capabilities': dict({
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
'entity_id': 'sensor.cms_sf2000_battery_pack_3_mos_temperature',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'object_id_base': 'Battery pack 3 MOS temperature',
'options': dict({
'sensor': dict({
'suggested_display_precision': 1,
}),
}),
'original_device_class': <SensorDeviceClass.TEMPERATURE: 'temperature'>,
'original_icon': None,
'original_name': 'Battery pack 3 MOS temperature',
'platform': 'indevolt',
'previous_unique_id': None,
'suggested_object_id': None,
'supported_features': 0,
'translation_key': 'battery_pack_3_mos_temperature',
'unique_id': 'SolidFlex2000-87654321_9101',
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_3_mos_temperature-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'temperature',
'friendly_name': 'CMS-SF2000 Battery pack 3 MOS temperature',
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
}),
'context': <ANY>,
'entity_id': 'sensor.cms_sf2000_battery_pack_3_mos_temperature',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '32.8',
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_3_sn-entry]
EntityRegistryEntrySnapshot({
'aliases': list([
@@ -2993,6 +3283,64 @@
'state': '15.3',
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_4_mos_temperature-entry]
EntityRegistryEntrySnapshot({
'aliases': list([
None,
]),
'area_id': None,
'capabilities': dict({
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
'entity_id': 'sensor.cms_sf2000_battery_pack_4_mos_temperature',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'object_id_base': 'Battery pack 4 MOS temperature',
'options': dict({
'sensor': dict({
'suggested_display_precision': 1,
}),
}),
'original_device_class': <SensorDeviceClass.TEMPERATURE: 'temperature'>,
'original_icon': None,
'original_name': 'Battery pack 4 MOS temperature',
'platform': 'indevolt',
'previous_unique_id': None,
'suggested_object_id': None,
'supported_features': 0,
'translation_key': 'battery_pack_4_mos_temperature',
'unique_id': 'SolidFlex2000-87654321_9117',
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_4_mos_temperature-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'temperature',
'friendly_name': 'CMS-SF2000 Battery pack 4 MOS temperature',
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
}),
'context': <ANY>,
'entity_id': 'sensor.cms_sf2000_battery_pack_4_mos_temperature',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '31.9',
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_4_sn-entry]
EntityRegistryEntrySnapshot({
'aliases': list([
@@ -3272,6 +3620,64 @@
'state': '14.9',
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_5_mos_temperature-entry]
EntityRegistryEntrySnapshot({
'aliases': list([
None,
]),
'area_id': None,
'capabilities': dict({
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
'entity_id': 'sensor.cms_sf2000_battery_pack_5_mos_temperature',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'object_id_base': 'Battery pack 5 MOS temperature',
'options': dict({
'sensor': dict({
'suggested_display_precision': 1,
}),
}),
'original_device_class': <SensorDeviceClass.TEMPERATURE: 'temperature'>,
'original_icon': None,
'original_name': 'Battery pack 5 MOS temperature',
'platform': 'indevolt',
'previous_unique_id': None,
'suggested_object_id': None,
'supported_features': 0,
'translation_key': 'battery_pack_5_mos_temperature',
'unique_id': 'SolidFlex2000-87654321_9133',
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_5_mos_temperature-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'temperature',
'friendly_name': 'CMS-SF2000 Battery pack 5 MOS temperature',
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
}),
'context': <ANY>,
'entity_id': 'sensor.cms_sf2000_battery_pack_5_mos_temperature',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '33.0',
})
# ---
# name: test_sensor[2][sensor.cms_sf2000_battery_pack_5_sn-entry]
EntityRegistryEntrySnapshot({
'aliases': list([