docs: def _send_scp(self, cabinet, frame, board, *args, **kwargs):
          """Determine the best connection to use to send an SCP packet and use
          it to transmit.
  
          See the arguments for
          :py:meth:`~rig.machine_control.scp_connection.SCPConnection` for
          details.
          """
          # Find the connection which best matches the specified coordinates,
          # preferring direct connections to a board when available.
          connection = self.connections.get((cabinet, frame, board), None)
          if connection is None:
              connection = self.connections.get((cabinet, frame), None)
          assert connection is not None, \
              "No connection available to ({}, {}, {})".format(cabinet,
                                                               frame,
                                                               board)
  
          # Determine the size of packet we expect in return, this is usually the
          # size that we are informed we should expect by SCAMP/SARK or else is
          # the default.
          if self._scp_data_length is None:
              length = consts.SCP_SVER_RECEIVE_LENGTH_MAX
          else:
              length = self._scp_data_length
  
          return connection.send_scp(length, 0, 0, board, *args, **kwargs)