"""Provides helpers for RFXtrx.""" from RFXtrx import RFXtrxDevice, get_device from homeassistant.core import HomeAssistant, callback from homeassistant.helpers import device_registry as dr from . import get_device_tuple_from_identifiers @callback def async_get_device_object(hass: HomeAssistant, device_id: str) -> RFXtrxDevice: """Get a device for the given device registry id.""" device_registry = dr.async_get(hass) registry_device = device_registry.async_get(device_id) if registry_device is None: raise ValueError(f"Device {device_id} not found") device_tuple = get_device_tuple_from_identifiers(registry_device.identifiers) assert device_tuple return get_device( int(device_tuple[0], 16), int(device_tuple[1], 16), device_tuple[2] )