From: Aurelien Jacobs Date: Wed, 1 Jan 2014 17:24:45 +0000 (+0100) Subject: rigol-ds: fix waveform reception on DS2000 series X-Git-Tag: libsigrok-0.3.0~338 X-Git-Url: https://sigrok.org/gitweb/?a=commitdiff_plain;h=a53278de01008e1ea04f06d6ae3a32de37d1797c;p=libsigrok.git rigol-ds: fix waveform reception on DS2000 series The ":WAV:DATA?" scpi command must be sent before calling sr_scpi_read_begin(). --- diff --git a/hardware/rigol-ds/protocol.c b/hardware/rigol-ds/protocol.c index fc938e9d..eefed074 100644 --- a/hardware/rigol-ds/protocol.c +++ b/hardware/rigol-ds/protocol.c @@ -457,13 +457,17 @@ SR_PRIV int rigol_ds_receive(int fd, int revents, void *cb_data) probe = devc->channel_entry->data; + if (devc->num_block_bytes == 0 && + devc->model->protocol == PROTOCOL_IEEE488_2) { + if (sr_scpi_send(sdi->conn, ":WAV:DATA?") != SR_OK) + return TRUE; + } + if (devc->num_block_bytes == 0) { if (sr_scpi_read_begin(scpi) != SR_OK) return TRUE; if (devc->model->protocol == PROTOCOL_IEEE488_2) { sr_dbg("New block header expected"); - if (sr_scpi_send(sdi->conn, ":WAV:DATA?") != SR_OK) - return TRUE; len = rigol_ds_read_header(scpi); if (len == -1) return TRUE;