code: def get_capability_report(self, raw=True, cb=None):
          
          task = asyncio.ensure_future(self.core.get_capability_report())
          report = self.loop.run_until_complete(task)
          if raw:
              if cb:
                  cb(report)
              else:
                  return report
          else:
              # noinspection PyProtectedMember
              self.core._format_capability_report(report)
docs: This method retrieves the Firmata capability report
  
          :param raw: If True, it either stores or provides the callback
                      with a report as list.
                      If False, prints a formatted report to the console
  
          :param cb: Optional callback reference to receive a raw report
  
          :returns: capability report