docs: def get_firmware_version(self, cached=True):
          """Returns the SK8 device firmware version.
  
          Args:
              cached (bool): if True, returns the locally cached copy of the firmware version.
                  If this is set to False, or the version is not cached, it will read from
                  the device instead. 
  
          Returns:
              str. The current firmware version string. May be `None` if an error occurs.
          """
          if cached and self.firmware_version != 'unknown':
              return self.firmware_version
  
          firmware_version = self.get_characteristic_handle_from_uuid(UUID_FIRMWARE_REVISION)
          if firmware_version is None:
              logger.warn('Failed to find handle for firmware version')
              return None
  
          self.firmware_version = self.dongle._read_attribute(self.conn_handle, firmware_version)
          return self.firmware_version