Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 13 additions & 3 deletions custom_components/victron/binary_sensor.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,12 @@
from homeassistant.helpers.update_coordinator import CoordinatorEntity

from .base import VictronBaseEntityDescription
from .const import DOMAIN, BoolReadEntityType, register_info_dict
from .const import (
DOMAIN,
TRANSLATED_ENTITY_TYPES,
BoolReadEntityType,
register_info_dict,
)
from .coordinator import victronEnergyDeviceUpdateCoordinator

_LOGGER = logging.getLogger(__name__)
Expand Down Expand Up @@ -76,6 +81,8 @@ class VictronEntityDescription(
class VictronBinarySensor(CoordinatorEntity, BinarySensorEntity):
"""A binary sensor implementation for Victron energy device."""

_attr_has_entity_name = True

def __init__(
self,
coordinator: victronEnergyDeviceUpdateCoordinator,
Expand All @@ -85,7 +92,10 @@ def __init__(
self.description: VictronEntityDescription = description
# this needs to be changed to allow multiple of the same type
self._attr_device_class = description.device_class
self._attr_name = f"{description.name}"
if description.key.startswith(TRANSLATED_ENTITY_TYPES):
self._attr_translation_key = description.key
else:
self._attr_name = f"{description.name}"

self._attr_unique_id = f"{self.description.slave}_{self.description.key}"
if self.description.slave not in (100, 225):
Expand All @@ -106,7 +116,7 @@ def is_on(self) -> bool:
self.description.slave,
self.description.key,
)
return cast(bool, data)
return cast("bool", data)

@property
def available(self) -> bool:
Expand Down
15 changes: 13 additions & 2 deletions custom_components/victron/button.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,13 @@
from homeassistant.helpers.update_coordinator import CoordinatorEntity

from .base import VictronWriteBaseEntityDescription
from .const import CONF_ADVANCED_OPTIONS, DOMAIN, ButtonWriteType, register_info_dict
from .const import (
CONF_ADVANCED_OPTIONS,
DOMAIN,
TRANSLATED_ENTITY_TYPES,
ButtonWriteType,
register_info_dict,
)
from .coordinator import victronEnergyDeviceUpdateCoordinator

_LOGGER = logging.getLogger(__name__)
Expand Down Expand Up @@ -78,6 +84,8 @@ class VictronEntityDescription(
class VictronBinarySensor(CoordinatorEntity, ButtonEntity):
"""A button implementation for Victron energy device."""

_attr_has_entity_name = True

def __init__(
self,
coordinator: victronEnergyDeviceUpdateCoordinator,
Expand All @@ -86,7 +94,10 @@ def __init__(
"""Initialize the sensor."""
self.description: VictronEntityDescription = description
self._attr_device_class = description.device_class
self._attr_name = f"{description.name}"
if description.key.startswith(TRANSLATED_ENTITY_TYPES):
self._attr_translation_key = description.key
else:
self._attr_name = f"{description.name}"

self._attr_unique_id = f"{self.description.slave}_{self.description.key}"
if self.description.slave not in (100, 225):
Expand Down
Loading
Loading