diff --git a/homeassistant/components/tellduslive/entry.py b/homeassistant/components/tellduslive/entry.py index 929dc700afb6..d6e56329699b 100644 --- a/homeassistant/components/tellduslive/entry.py +++ b/homeassistant/components/tellduslive/entry.py @@ -116,10 +116,17 @@ def unique_id(self) -> str: def device_info(self): """Return device info.""" device = self._client.device_info(self.device.device_id) - return { + device_info = { 'identifiers': {('tellduslive', self.device.device_id)}, 'name': self.device.name, - 'model': device['model'].title(), - 'manufacturer': device['protocol'].title(), - 'via_hub': ('tellduslive', device.get('client')), } + model = device.get('model') + if model is not None: + device_info['model'] = model.title() + protocol = device.get('protocol') + if protocol is not None: + device_info['manufacturer'] = protocol.title() + client = device.get('client') + if client is not None: + device_info['via_hub'] = ('tellduslive', client) + return device_info