diff --git a/custom_components/carelink/__init__.py b/custom_components/carelink/__init__.py index f4f71d4..368129c 100644 --- a/custom_components/carelink/__init__.py +++ b/custom_components/carelink/__init__.py @@ -380,24 +380,28 @@ async def _async_update_data(self): "appModelType", UNAVAILABLE ) - data[SENSOR_KEY_MEDICAL_DEVICE_MANUFACTURER] = recent_data[ - "medicalDeviceInformation" - ].setdefault("manufacturer", UNAVAILABLE) - - data[SENSOR_KEY_MEDICAL_DEVICE_MODEL_NUMBER] = recent_data[ - "medicalDeviceInformation" - ].setdefault("modelNumber", UNAVAILABLE) - - data[SENSOR_KEY_MEDICAL_DEVICE_HARDWARE_REVISION] = recent_data[ - "medicalDeviceInformation" - ].setdefault("hardwareRevision", UNAVAILABLE) - - data[SENSOR_KEY_MEDICAL_DEVICE_FIRMWARE_REVISION] = recent_data[ - "medicalDeviceInformation" - ].setdefault("firmwareRevision", UNAVAILABLE) - data[SENSOR_KEY_MEDICAL_DEVICE_SYSTEM_ID] = recent_data[ - "medicalDeviceInformation" - ].setdefault("systemId", UNAVAILABLE) + # Add device info when available + + if "medicalDeviceInformation" in recent_data: + + data[SENSOR_KEY_MEDICAL_DEVICE_MANUFACTURER] = recent_data[ + "medicalDeviceInformation" + ].setdefault("manufacturer", UNAVAILABLE) + + data[SENSOR_KEY_MEDICAL_DEVICE_MODEL_NUMBER] = recent_data[ + "medicalDeviceInformation" + ].setdefault("modelNumber", UNAVAILABLE) + + data[SENSOR_KEY_MEDICAL_DEVICE_HARDWARE_REVISION] = recent_data[ + "medicalDeviceInformation" + ].setdefault("hardwareRevision", UNAVAILABLE) + + data[SENSOR_KEY_MEDICAL_DEVICE_FIRMWARE_REVISION] = recent_data[ + "medicalDeviceInformation" + ].setdefault("firmwareRevision", UNAVAILABLE) + data[SENSOR_KEY_MEDICAL_DEVICE_SYSTEM_ID] = recent_data[ + "medicalDeviceInformation" + ].setdefault("systemId", UNAVAILABLE) _LOGGER.debug("_async_update_data: %s", data)