Hello,

I recently got my hands on a Siglent SDS2104X Plus. Now I tried whether
it would be supported by Sigrok. It doesn't work right out of the box
but with some small modifications (see attached patch), I was able to
get some responses from the scope and at least a partial wave form. But
it stopped after maybe half of the screen.

Before I analyze whether that is some protocol problem, I want to start
with the basics: The configuration structures changed in my hacked
together patch. Currently I just copied the values from the SDS2000
series (without "Plus"). Most likely that's not correct.

Is there some guide or some hints (like notes for porting an older
Siglent model) that I could use as a starting point to find out what the
values mean and determine the right values for my scope?

Best regards

Christian
>From c828908fb86623ee87e774fc4c243372d8b88208 Mon Sep 17 00:00:00 2001
From: Christian Mauderer <o...@c-mauderer.de>
Date: Fri, 5 Jun 2020 18:09:04 +0200
Subject: [PATCH] FIXME: Add some guesswork for SDS2104X+.

---
 src/hardware/siglent-sds/api.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/hardware/siglent-sds/api.c b/src/hardware/siglent-sds/api.c
index 172c8af2..7793e785 100644
--- a/src/hardware/siglent-sds/api.c
+++ b/src/hardware/siglent-sds/api.c
@@ -171,6 +171,7 @@ enum series {
 	SDS1000XP,
 	SDS1000XE,
 	SDS2000X,
+	SDS2000XP,
 };
 
 /* short name, full name */
@@ -196,6 +197,8 @@ static const struct siglent_sds_series supported_series[] = {
 		{ 50, 1 }, { 500, 100000 }, 14, 8, 14000363},
 	[SDS2000X] = {VENDOR(SIGLENT), "SDS2000X", SPO_MODEL,
 		{ 50, 1 }, { 500, 100000 }, 14, 8, 14000363},
+	[SDS2000XP] = {VENDOR(SIGLENT), "SDS2000X Plus", SPO_MODEL,
+		{ 50, 1 }, { 500, 100000 }, 14, 8, 14000363},
 };
 
 #define SERIES(x) &supported_series[x]
@@ -227,6 +230,7 @@ static const struct siglent_sds_model supported_models[] = {
 	{ SERIES(SDS2000X), "SDS2204X", { 2, 1000000000 }, 4, FALSE, 0 },
 	{ SERIES(SDS2000X), "SDS2302X", { 2, 1000000000 }, 2, FALSE, 0 },
 	{ SERIES(SDS2000X), "SDS2304X", { 2, 1000000000 }, 4, FALSE, 0 },
+	{ SERIES(SDS2000XP), "SDS2104X Plus", { 2, 1000000000 }, 4, TRUE, 16 },
 };
 
 static struct sr_dev_driver siglent_sds_driver_info;
-- 
2.26.2

_______________________________________________
sigrok-devel mailing list
sigrok-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sigrok-devel

Reply via email to