]> sigrok.org Git - libsigrok.git/blobdiff - hardware/rigol-ds/protocol.c
rigol-ds: Make sure to always send SR_DF_END at end of capture.
[libsigrok.git] / hardware / rigol-ds / protocol.c
index 9952e2a41517b0865e0b458ea3a324002e25d80f..69bb151ee2169e381e133845c2d2d9b24a4043a9 100644 (file)
@@ -590,9 +590,6 @@ SR_PRIV int rigol_ds_receive(int fd, int revents, void *cb_data)
                                devc->channel_entry = devc->enabled_digital_probes;
                                rigol_ds_channel_start(sdi);
                        } else if (++devc->num_frames == devc->limit_frames) {
-                               /* End of last frame. */
-                               packet.type = SR_DF_END;
-                               sr_session_send(sdi, &packet);
                                sdi->driver->dev_acquisition_stop(sdi, cb_data);
                        } else {
                                /* Get the next frame, starting with the first analog channel. */
@@ -702,14 +699,14 @@ SR_PRIV int rigol_ds_get_dev_cfg(const struct sr_dev_inst *sdi)
        if (devc->model->has_digital) {
                sr_dbg("Current digital channel state:");
                for (i = 0; i < 16; i++) {
-                       cmd = g_strdup_printf(":DIG%d:TURN?", i + 1);
+                       cmd = g_strdup_printf(":DIG%d:TURN?", i);
                        res = get_cfg_string(sdi, cmd, &t_s);
                        g_free(cmd);
                        if (res != SR_OK)
                                return SR_ERR;
                        devc->digital_channels[i] = !strcmp(t_s, "ON") ? TRUE : FALSE;
                        g_free(t_s);
-                       sr_dbg("D%d: %s", i + 1, devc->digital_channels[i] ? "on" : "off");
+                       sr_dbg("D%d: %s", i, devc->digital_channels[i] ? "on" : "off");
                }
        }