mirror of
https://github.com/home-assistant/core.git
synced 2025-07-27 15:17:35 +00:00
Add DC voltage and current to Kostal inverter (#54878)
This commit is contained in:
parent
0c1c1f7845
commit
1f5720199c
@ -10,8 +10,12 @@ from homeassistant.const import (
|
|||||||
ATTR_ICON,
|
ATTR_ICON,
|
||||||
ATTR_UNIT_OF_MEASUREMENT,
|
ATTR_UNIT_OF_MEASUREMENT,
|
||||||
DEVICE_CLASS_BATTERY,
|
DEVICE_CLASS_BATTERY,
|
||||||
|
DEVICE_CLASS_CURRENT,
|
||||||
DEVICE_CLASS_ENERGY,
|
DEVICE_CLASS_ENERGY,
|
||||||
DEVICE_CLASS_POWER,
|
DEVICE_CLASS_POWER,
|
||||||
|
DEVICE_CLASS_VOLTAGE,
|
||||||
|
ELECTRIC_CURRENT_AMPERE,
|
||||||
|
ELECTRIC_POTENTIAL_VOLT,
|
||||||
ENERGY_KILO_WATT_HOUR,
|
ENERGY_KILO_WATT_HOUR,
|
||||||
PERCENTAGE,
|
PERCENTAGE,
|
||||||
POWER_WATT,
|
POWER_WATT,
|
||||||
@ -135,6 +139,28 @@ SENSOR_PROCESS_DATA = [
|
|||||||
},
|
},
|
||||||
"format_round",
|
"format_round",
|
||||||
),
|
),
|
||||||
|
(
|
||||||
|
"devices:local:pv1",
|
||||||
|
"U",
|
||||||
|
"DC1 Voltage",
|
||||||
|
{
|
||||||
|
ATTR_UNIT_OF_MEASUREMENT: ELECTRIC_POTENTIAL_VOLT,
|
||||||
|
ATTR_DEVICE_CLASS: DEVICE_CLASS_VOLTAGE,
|
||||||
|
ATTR_STATE_CLASS: STATE_CLASS_MEASUREMENT,
|
||||||
|
},
|
||||||
|
"format_round",
|
||||||
|
),
|
||||||
|
(
|
||||||
|
"devices:local:pv1",
|
||||||
|
"I",
|
||||||
|
"DC1 Current",
|
||||||
|
{
|
||||||
|
ATTR_UNIT_OF_MEASUREMENT: ELECTRIC_CURRENT_AMPERE,
|
||||||
|
ATTR_DEVICE_CLASS: DEVICE_CLASS_CURRENT,
|
||||||
|
ATTR_STATE_CLASS: STATE_CLASS_MEASUREMENT,
|
||||||
|
},
|
||||||
|
"format_float",
|
||||||
|
),
|
||||||
(
|
(
|
||||||
"devices:local:pv2",
|
"devices:local:pv2",
|
||||||
"P",
|
"P",
|
||||||
@ -146,6 +172,28 @@ SENSOR_PROCESS_DATA = [
|
|||||||
},
|
},
|
||||||
"format_round",
|
"format_round",
|
||||||
),
|
),
|
||||||
|
(
|
||||||
|
"devices:local:pv2",
|
||||||
|
"U",
|
||||||
|
"DC2 Voltage",
|
||||||
|
{
|
||||||
|
ATTR_UNIT_OF_MEASUREMENT: ELECTRIC_POTENTIAL_VOLT,
|
||||||
|
ATTR_DEVICE_CLASS: DEVICE_CLASS_VOLTAGE,
|
||||||
|
ATTR_STATE_CLASS: STATE_CLASS_MEASUREMENT,
|
||||||
|
},
|
||||||
|
"format_round",
|
||||||
|
),
|
||||||
|
(
|
||||||
|
"devices:local:pv2",
|
||||||
|
"I",
|
||||||
|
"DC2 Current",
|
||||||
|
{
|
||||||
|
ATTR_UNIT_OF_MEASUREMENT: ELECTRIC_CURRENT_AMPERE,
|
||||||
|
ATTR_DEVICE_CLASS: DEVICE_CLASS_CURRENT,
|
||||||
|
ATTR_STATE_CLASS: STATE_CLASS_MEASUREMENT,
|
||||||
|
},
|
||||||
|
"format_float",
|
||||||
|
),
|
||||||
(
|
(
|
||||||
"devices:local:pv3",
|
"devices:local:pv3",
|
||||||
"P",
|
"P",
|
||||||
@ -157,6 +205,28 @@ SENSOR_PROCESS_DATA = [
|
|||||||
},
|
},
|
||||||
"format_round",
|
"format_round",
|
||||||
),
|
),
|
||||||
|
(
|
||||||
|
"devices:local:pv3",
|
||||||
|
"U",
|
||||||
|
"DC3 Voltage",
|
||||||
|
{
|
||||||
|
ATTR_UNIT_OF_MEASUREMENT: ELECTRIC_POTENTIAL_VOLT,
|
||||||
|
ATTR_DEVICE_CLASS: DEVICE_CLASS_VOLTAGE,
|
||||||
|
ATTR_STATE_CLASS: STATE_CLASS_MEASUREMENT,
|
||||||
|
},
|
||||||
|
"format_round",
|
||||||
|
),
|
||||||
|
(
|
||||||
|
"devices:local:pv3",
|
||||||
|
"I",
|
||||||
|
"DC3 Current",
|
||||||
|
{
|
||||||
|
ATTR_UNIT_OF_MEASUREMENT: ELECTRIC_CURRENT_AMPERE,
|
||||||
|
ATTR_DEVICE_CLASS: DEVICE_CLASS_CURRENT,
|
||||||
|
ATTR_STATE_CLASS: STATE_CLASS_MEASUREMENT,
|
||||||
|
},
|
||||||
|
"format_float",
|
||||||
|
),
|
||||||
(
|
(
|
||||||
"devices:local",
|
"devices:local",
|
||||||
"PV2Bat_P",
|
"PV2Bat_P",
|
||||||
|
@ -231,6 +231,14 @@ class PlenticoreDataFormatter:
|
|||||||
except (TypeError, ValueError):
|
except (TypeError, ValueError):
|
||||||
return state
|
return state
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def format_float(state: str) -> int | str:
|
||||||
|
"""Return the given state value as float rounded to three decimal places."""
|
||||||
|
try:
|
||||||
|
return round(float(state), 3)
|
||||||
|
except (TypeError, ValueError):
|
||||||
|
return state
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def format_energy(state: str) -> float | str:
|
def format_energy(state: str) -> float | str:
|
||||||
"""Return the given state value as energy value, scaled to kWh."""
|
"""Return the given state value as energy value, scaled to kWh."""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user