diff --git a/homeassistant/components/simplisafe/__init__.py b/homeassistant/components/simplisafe/__init__.py index e81559bd1fa..a3f56a9e1a3 100644 --- a/homeassistant/components/simplisafe/__init__.py +++ b/homeassistant/components/simplisafe/__init__.py @@ -500,7 +500,7 @@ class SimpliSafe: async def async_update_system(system): """Update a system.""" - await system.update(cached=False) + await system.update(cached=system.version != 3) self._async_process_new_notifications(system) tasks = [async_update_system(system) for system in self.systems.values()] diff --git a/homeassistant/components/simplisafe/binary_sensor.py b/homeassistant/components/simplisafe/binary_sensor.py index cd6a4465261..263bbf51b13 100644 --- a/homeassistant/components/simplisafe/binary_sensor.py +++ b/homeassistant/components/simplisafe/binary_sensor.py @@ -12,7 +12,7 @@ from homeassistant.components.binary_sensor import ( from homeassistant.core import callback from . import SimpliSafeEntity -from .const import DATA_CLIENT, DOMAIN +from .const import DATA_CLIENT, DOMAIN, LOGGER SUPPORTED_BATTERY_SENSOR_TYPES = [ EntityTypes.carbon_monoxide, @@ -48,9 +48,13 @@ SENSOR_MODELS = { async def async_setup_entry(hass, entry, async_add_entities): """Set up SimpliSafe binary sensors based on a config entry.""" simplisafe = hass.data[DOMAIN][DATA_CLIENT][entry.entry_id] - sensors = [] + for system in simplisafe.systems.values(): + if system.version == 2: + LOGGER.info("Skipping sensor setup for V2 system: %s", system.system_id) + continue + for sensor in system.sensors.values(): if sensor.type in SUPPORTED_SENSOR_TYPES: sensors.append(SimpliSafeBinarySensor(simplisafe, system, sensor)) diff --git a/homeassistant/components/simplisafe/sensor.py b/homeassistant/components/simplisafe/sensor.py index fd6f1121af9..5909471c455 100644 --- a/homeassistant/components/simplisafe/sensor.py +++ b/homeassistant/components/simplisafe/sensor.py @@ -5,21 +5,24 @@ from homeassistant.const import DEVICE_CLASS_TEMPERATURE, TEMP_FAHRENHEIT from homeassistant.core import callback from . import SimpliSafeEntity -from .const import DATA_CLIENT, DOMAIN +from .const import DATA_CLIENT, DOMAIN, LOGGER async def async_setup_entry(hass, entry, async_add_entities): """Set up SimpliSafe freeze sensors based on a config entry.""" simplisafe = hass.data[DOMAIN][DATA_CLIENT][entry.entry_id] + sensors = [] - async_add_entities( - [ - SimplisafeFreezeSensor(simplisafe, system, sensor) - for system in simplisafe.systems.values() - for sensor in system.sensors.values() - if sensor.type == EntityTypes.temperature - ] - ) + for system in simplisafe.systems.values(): + if system.version == 2: + LOGGER.info("Skipping sensor setup for V2 system: %s", system.system_id) + continue + + for sensor in system.sensors.values(): + if sensor.type == EntityTypes.temperature: + sensors.append(SimplisafeFreezeSensor(simplisafe, system, sensor)) + + async_add_entities(sensors) class SimplisafeFreezeSensor(SimpliSafeEntity):