Adds new sensors and configuration entities to V2C Trydan (#122883)

* Adds new controls and sensors

* update snapshot

* Update homeassistant/components/v2c/strings.json

Co-authored-by: Charles Garwood <cgarwood@newdealmultimedia.com>

* Add unit

* move icons to icons.json

* update snapshot

* missing translation fix

---------

Co-authored-by: Charles Garwood <cgarwood@newdealmultimedia.com>
This commit is contained in:
Diogo Gomes 2024-07-31 11:31:35 +01:00 committed by GitHub
parent 233c04a469
commit 02d4d1a75b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 284 additions and 5 deletions

View file

@ -15,7 +15,13 @@ from homeassistant.components.sensor import (
SensorEntityDescription,
SensorStateClass,
)
from homeassistant.const import UnitOfEnergy, UnitOfPower, UnitOfTime
from homeassistant.const import (
EntityCategory,
UnitOfElectricPotential,
UnitOfEnergy,
UnitOfPower,
UnitOfTime,
)
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import StateType
@ -45,12 +51,20 @@ TRYDAN_SENSORS = (
V2CSensorEntityDescription(
key="charge_power",
translation_key="charge_power",
icon="mdi:ev-station",
native_unit_of_measurement=UnitOfPower.WATT,
state_class=SensorStateClass.MEASUREMENT,
device_class=SensorDeviceClass.POWER,
value_fn=lambda evse_data: evse_data.charge_power,
),
V2CSensorEntityDescription(
key="voltage_installation",
translation_key="voltage_installation",
native_unit_of_measurement=UnitOfElectricPotential.VOLT,
state_class=SensorStateClass.MEASUREMENT,
device_class=SensorDeviceClass.VOLTAGE,
value_fn=lambda evse_data: evse_data.voltage_installation,
entity_registry_enabled_default=False,
),
V2CSensorEntityDescription(
key="charge_energy",
translation_key="charge_energy",
@ -86,6 +100,7 @@ TRYDAN_SENSORS = (
V2CSensorEntityDescription(
key="meter_error",
translation_key="meter_error",
entity_category=EntityCategory.DIAGNOSTIC,
value_fn=lambda evse_data: get_meter_value(evse_data.slave_error),
entity_registry_enabled_default=False,
device_class=SensorDeviceClass.ENUM,
@ -100,6 +115,28 @@ TRYDAN_SENSORS = (
value_fn=lambda evse_data: evse_data.battery_power,
entity_registry_enabled_default=False,
),
V2CSensorEntityDescription(
key="ssid",
translation_key="ssid",
entity_category=EntityCategory.DIAGNOSTIC,
value_fn=lambda evse_data: evse_data.SSID,
entity_registry_enabled_default=False,
),
V2CSensorEntityDescription(
key="ip_address",
translation_key="ip_address",
entity_category=EntityCategory.DIAGNOSTIC,
value_fn=lambda evse_data: evse_data.IP,
entity_registry_enabled_default=False,
),
V2CSensorEntityDescription(
key="signal_status",
translation_key="signal_status",
entity_category=EntityCategory.DIAGNOSTIC,
state_class=SensorStateClass.MEASUREMENT,
value_fn=lambda evse_data: evse_data.signal_status,
entity_registry_enabled_default=False,
),
)