X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Frigol-ds%2Fapi.c;h=f58d150d02694cc0d32a6cb2c0cdbe2f29861a87;hb=01dd7a4cc769d3e683cb29c5cf791e9c61034f31;hp=7f136a6bec654317852abeaefabafed94193d0f0;hpb=8662130615d7a59883c303914f94377032101cb9;p=libsigrok.git diff --git a/src/hardware/rigol-ds/api.c b/src/hardware/rigol-ds/api.c index 7f136a6b..f58d150d 100644 --- a/src/hardware/rigol-ds/api.c +++ b/src/hardware/rigol-ds/api.c @@ -250,6 +250,10 @@ static const struct rigol_ds_model supported_models[] = { {SERIES(DS2000A), "DS2102A", {5, 1000000000}, 2, false}, {SERIES(DS2000A), "DS2202A", {2, 1000000000}, 2, false}, {SERIES(DS2000A), "DS2302A", {1, 1000000000}, 2, false}, + {SERIES(DS2000A), "MSO2072A", {5, 1000000000}, 2, true}, + {SERIES(DS2000A), "MSO2102A", {5, 1000000000}, 2, true}, + {SERIES(DS2000A), "MSO2202A", {2, 1000000000}, 2, true}, + {SERIES(DS2000A), "MSO2302A", {1, 1000000000}, 2, true}, {SERIES(DSO1000), "DSO1002A", {5, 1000000000}, 2, false}, {SERIES(DSO1000), "DSO1004A", {5, 1000000000}, 4, false}, {SERIES(DSO1000), "DSO1012A", {2, 1000000000}, 2, false}, @@ -1017,10 +1021,10 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi) devc->analog_channels[ch->index] = ch->enabled; } } else if (ch->type == SR_CHANNEL_LOGIC) { - /* Only one list entry for DS1000D series. All channels are retrieved - * together when this entry is processed. */ + /* Only one list entry for older protocols. All channels are + * retrieved together when this entry is processed. */ if (ch->enabled && ( - devc->model->series->protocol > PROTOCOL_V2 || + devc->model->series->protocol > PROTOCOL_V3 || !some_digital)) devc->enabled_channels = g_slist_append( devc->enabled_channels, ch); @@ -1029,7 +1033,7 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi) /* Turn on LA module if currently off. */ if (!devc->la_enabled) { if (rigol_ds_config_set(sdi, - devc->model->series->protocol >= PROTOCOL_V4 ? + devc->model->series->protocol >= PROTOCOL_V3 ? ":LA:STAT ON" : ":LA:DISP ON") != SR_OK) return SR_ERR; devc->la_enabled = TRUE; @@ -1038,7 +1042,7 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi) if (ch->enabled != devc->digital_channels[ch->index]) { /* Enabled channel is currently disabled, or vice versa. */ if (rigol_ds_config_set(sdi, - devc->model->series->protocol >= PROTOCOL_V4 ? + devc->model->series->protocol >= PROTOCOL_V3 ? ":LA:DIG%d:DISP %s" : ":DIG%d:TURN %s", ch->index, ch->enabled ? "ON" : "OFF") != SR_OK) return SR_ERR; @@ -1053,7 +1057,7 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi) /* Turn off LA module if on and no digital channels selected. */ if (devc->la_enabled && !some_digital) if (rigol_ds_config_set(sdi, - devc->model->series->protocol >= PROTOCOL_V4 ? + devc->model->series->protocol >= PROTOCOL_V3 ? ":LA:STAT OFF" : ":LA:DISP OFF") != SR_OK) return SR_ERR;