return SR_OK;
if (ch->type == SR_CHANNEL_LOGIC) {
- if (rigol_ds_config_set(sdi->conn, ":WAV:SOUR LA") != SR_OK)
+ if (rigol_ds_config_set(sdi, ":WAV:SOUR LA") != SR_OK)
return SR_ERR;
} else {
if (rigol_ds_config_set(sdi, ":WAV:SOUR CHAN%d",
break;
case PROTOCOL_V3:
if (ch->type == SR_CHANNEL_LOGIC) {
- if (rigol_ds_config_set(sdi->conn, ":WAV:SOUR LA") != SR_OK)
+ if (rigol_ds_config_set(sdi, ":WAV:SOUR LA") != SR_OK)
return SR_ERR;
} else {
if (rigol_ds_config_set(sdi, ":WAV:SOUR CHAN%d",
/* Still reading the header. */
return TRUE;
if (len == -1) {
- sr_err("Read error, aborting capture.");
+ sr_err("Error while reading block header, aborting capture.");
packet.type = SR_DF_FRAME_END;
sr_session_send(sdi, &packet);
- sdi->driver->dev_acquisition_stop(sdi);
+ sr_dev_acquisition_stop(sdi);
return TRUE;
}
/* At slow timebases in live capture the DS2072
len = sr_scpi_read_data(scpi, (char *)devc->buffer, len);
if (len == -1) {
- sr_err("Read error, aborting capture.");
+ sr_err("Error while reading block data, aborting capture.");
packet.type = SR_DF_FRAME_END;
sr_session_send(sdi, &packet);
- sdi->driver->dev_acquisition_stop(sdi);
+ sr_dev_acquisition_stop(sdi);
return TRUE;
}
if (devc->data_source != DATA_SOURCE_LIVE)
rigol_ds_set_wait_event(devc, WAIT_BLOCK);
}
- if (!sr_scpi_read_complete(scpi)) {
+ /* End acquisition when data for all channels is acquired. */
+ if (!sr_scpi_read_complete(scpi) && !devc->channel_entry->next) {
sr_err("Read should have been completed");
packet.type = SR_DF_FRAME_END;
sr_session_send(sdi, &packet);
- sdi->driver->dev_acquisition_stop(sdi);
+ sr_dev_acquisition_stop(sdi);
return TRUE;
}
devc->num_block_read = 0;
if (++devc->num_frames == devc->limit_frames) {
/* Last frame, stop capture. */
- sdi->driver->dev_acquisition_stop(sdi);
+ sr_dev_acquisition_stop(sdi);
} else {
/* Get the next frame, starting with the first channel. */
devc->channel_entry = devc->enabled_channels;