code: def open_link(self, link_uri):
          
          self.connection_requested.call(link_uri)
          self.state = State.INITIALIZED
          self.link_uri = link_uri
          try:
              self.link = cflib.crtp.get_link_driver(
                  link_uri, self._link_quality_cb, self._link_error_cb)
  
              if not self.link:
                  message = 'No driver found or malformed URI: {}' \
                      .format(link_uri)
                  logger.warning(message)
                  self.connection_failed.call(link_uri, message)
              else:
                  # Add a callback so we can check that any data is coming
                  # back from the copter
                  self.packet_received.add_callback(
                      self._check_for_initial_packet_cb)
  
                  self._start_connection_setup()
          except Exception as ex:  # pylint: disable=W0703
              # We want to catch every possible exception here and show
              # it in the user interface
              import traceback
  
              logger.error("Couldn't load link driver: %s\n\n%s",
                           ex, traceback.format_exc())
              exception_text = "Couldn't load link driver: %s\n\n%s" % (
                  ex, traceback.format_exc())
              if self.link:
                  self.link.close()
                  self.link = None
              self.connection_failed.call(link_uri, exception_text)
docs: Open the communication link to a copter at the given URI and setup the
          connection (download log/parameter TOC).