code: def get_firmware_version(self, cb=None):
          
          task = asyncio.ensure_future(self.core.get_firmware_version())
          version = self.loop.run_until_complete(task)
          if cb:
              cb(version)
          else:
              return version
docs: This method retrieves the Firmata firmware version
  
          :param cb: Reference to a callback function
  
          :returns:If no callback is specified, the firmware version