]> sigrok.org Git - libsigrok.git/commitdiff
rigol-ds: Fix #1831 by supporting DS1xxxZ Plus & RPL1116 logic ports
authorAristarchosOfSamos <redacted>
Thu, 16 Mar 2023 08:20:14 +0000 (10:20 +0200)
committerSoeren Apel <redacted>
Wed, 27 Sep 2023 21:07:32 +0000 (23:07 +0200)
The DS1xxxZ Plus models are MSO ready, they contain the connector to attach a RPL1116 16 port digital head.
Having a DS1xxxZ Plus and a connected RPL1116 effectively the instrument becomes a MSO1xxxZ.

But that "CH_INFO(4, false)" means 4 analog channels and NO digital channels.
As said though, the DS1xxxZ Plus variants got the D0..D15 digital ports abilities already so this line treats the DS1xxxZ Plus as a plain DS1xxxZ without the digital ports.

A very simple remedy is to change the CH_INFO(4, false) to CH_INFO(4, true)
So those two lines should be changed
from
{SERIES(DS1000Z), "DS1074Z Plus", {5, 1000000000}, CH_INFO(4, false), std_cmd},
{SERIES(DS1000Z), "DS1104Z Plus", {5, 1000000000}, CH_INFO(4, false), std_cmd},
to
{SERIES(DS1000Z), "DS1074Z Plus", {5, 1000000000}, CH_INFO(4, true), std_cmd},
{SERIES(DS1000Z), "DS1104Z Plus", {5, 1000000000}, CH_INFO(4, true), std_cmd},
and the problem will be solved.

src/hardware/rigol-ds/api.c

index ca340d0f4ae63c49807ee7e8fec5b409533fd93c..6703d1cea3145a4ccffaf53ef102677662cd8f8b 100644 (file)
@@ -273,8 +273,8 @@ static const struct rigol_ds_model supported_models[] = {
        {SERIES(DS1000Z), "DS1104Z", {5, 1000000000}, CH_INFO(4, false), std_cmd},
        {SERIES(DS1000Z), "DS1074Z-S", {5, 1000000000}, CH_INFO(4, false), std_cmd},
        {SERIES(DS1000Z), "DS1104Z-S", {5, 1000000000}, CH_INFO(4, false), std_cmd},
-       {SERIES(DS1000Z), "DS1074Z Plus", {5, 1000000000}, CH_INFO(4, false), std_cmd},
-       {SERIES(DS1000Z), "DS1104Z Plus", {5, 1000000000}, CH_INFO(4, false), std_cmd},
+       {SERIES(DS1000Z), "DS1074Z Plus", {5, 1000000000}, CH_INFO(4, true), std_cmd},
+       {SERIES(DS1000Z), "DS1104Z Plus", {5, 1000000000}, CH_INFO(4, true), std_cmd},
        {SERIES(DS1000Z), "DS1102Z-E", {2, 1000000000}, CH_INFO(2, false), std_cmd},
        {SERIES(DS1000Z), "DS1202Z-E", {2, 1000000000}, CH_INFO(2, false), std_cmd},
        {SERIES(DS1000Z), "MSO1074Z", {5, 1000000000}, CH_INFO(4, true), std_cmd},