code: def _try_connect(self, connection_string):
          
          if self._parse_conn_string(connection_string):
              self._trigger_callback('on_disconnect', self.id, self._connection_id)
  
              self.stop_sync()
  
              if self._mux_func is not None:
                  self._mux_func(self._channel)
  
              if self._device_info is None:
                  raise ArgumentError("Missing device name or alias, specify using device=name in port string "
                                      "or -c device=name in connect_direct or debug command",
                                      known_devices=[x for x in DEVICE_ALIASES.keys()])
  
              try:
                  self.jlink = pylink.JLink()
                  self.jlink.open(serial_no=self._jlink_serial)
                  self.jlink.set_tif(pylink.enums.JLinkInterfaces.SWD)
                  self.jlink.connect(self._device_info.jlink_name)
                  self.jlink.set_little_endian()
              except pylink.errors.JLinkException as exc:
                  if exc.code == exc.VCC_FAILURE:
                      raise HardwareError("No target power detected", code=exc.code,
                                          suggestion="Check jlink connection and power wiring")
  
                  raise
              except:
                  raise
  
              self._control_thread = JLinkControlThread(self.jlink)
              self._control_thread.start()
  
              self.set_config('probe_required', True)
              self.set_config('probe_supported', True)
docs: If the connecton string settings are different, try and connect to an attached device