diff --git a/homeassistant/components/hive/climate.py b/homeassistant/components/hive/climate.py index 811f6fe4da4..bfc43e3357f 100644 --- a/homeassistant/components/hive/climate.py +++ b/homeassistant/components/hive/climate.py @@ -35,7 +35,6 @@ def setup_platform(hass, config, add_entities, discovery_info=None): climate = HiveClimateEntity(session, discovery_info) add_entities([climate]) - session.entities.append(climate) class HiveClimateEntity(ClimateDevice): @@ -52,7 +51,6 @@ class HiveClimateEntity(ClimateDevice): self.data_updatesource = '{}.{}'.format( self.device_type, self.node_id) self._unique_id = '{}-{}'.format(self.node_id, self.device_type) - self.session.entities.append(self) @property def unique_id(self): @@ -145,6 +143,11 @@ class HiveClimateEntity(ClimateDevice): """Return a list of available preset modes.""" return SUPPORT_PRESET + async def async_added_to_hass(self): + """When entity is added to Home Assistant.""" + await super().async_added_to_hass() + self.session.entities.append(self) + def set_hvac_mode(self, hvac_mode): """Set new target hvac mode.""" new_mode = HASS_TO_HIVE_STATE[hvac_mode] diff --git a/homeassistant/components/hive/water_heater.py b/homeassistant/components/hive/water_heater.py index f0ec2de08b3..943abde5dc7 100644 --- a/homeassistant/components/hive/water_heater.py +++ b/homeassistant/components/hive/water_heater.py @@ -34,7 +34,6 @@ def setup_platform(hass, config, add_entities, discovery_info=None): water_heater = HiveWaterHeater(session, discovery_info) add_entities([water_heater]) - session.entities.append(water_heater) class HiveWaterHeater(WaterHeaterDevice): @@ -50,7 +49,6 @@ class HiveWaterHeater(WaterHeaterDevice): self.device_type, self.node_id) self._unique_id = '{}-{}'.format(self.node_id, self.device_type) self._unit_of_measurement = TEMP_CELSIUS - self.session.entities.append(self) @property def unique_id(self): @@ -99,6 +97,11 @@ class HiveWaterHeater(WaterHeaterDevice): """List of available operation modes.""" return SUPPORT_WATER_HEATER + async def async_added_to_hass(self): + """When entity is added to Home Assistant.""" + await super().async_added_to_hass() + self.session.entities.append(self) + def set_operation_mode(self, operation_mode): """Set operation mode.""" new_mode = HASS_TO_HIVE_STATE[operation_mode]