docs: def fill_cache(self):
          """Fill the cache with new data from the sensor."""
          _LOGGER.debug('Filling cache with new sensor data.')
          try:
              self.firmware_version()
          except BluetoothBackendException:
              # If a sensor doesn't work, wait 5 minutes before retrying
              self._last_read = datetime.now() - self._cache_timeout + \
                  timedelta(seconds=300)
              raise
  
          with self._bt_interface.connect(self._mac) as connection:
              try:
                  connection.wait_for_notification(_HANDLE_READ_WRITE_SENSOR_DATA, self, 10)  # pylint: disable=no-member
                  # If a sensor doesn't work, wait 5 minutes before retrying
              except BluetoothBackendException:
                  self._last_read = datetime.now() - self._cache_timeout + \
                      timedelta(seconds=300)
                  return