From 6e660dcfeaaa23d9253ab70c6382b37384d79d2e Mon Sep 17 00:00:00 2001 From: Hans Beukers Date: Fri, 14 Nov 2025 15:19:15 +0100 Subject: [PATCH 1/4] Add Keysight 33611A driver. --- .../instrument_drivers/Keysight/KeysightAgilent_33XXX.py | 2 ++ src/qcodes/instrument_drivers/Keysight/Keysight_33611a.py | 7 +++++++ src/qcodes/instrument_drivers/Keysight/__init__.py | 2 ++ tests/drivers/test_Keysight_33XXX.py | 7 ++++++- 4 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 src/qcodes/instrument_drivers/Keysight/Keysight_33611a.py diff --git a/src/qcodes/instrument_drivers/Keysight/KeysightAgilent_33XXX.py b/src/qcodes/instrument_drivers/Keysight/KeysightAgilent_33XXX.py index 1b410063801..ae980f494cb 100644 --- a/src/qcodes/instrument_drivers/Keysight/KeysightAgilent_33XXX.py +++ b/src/qcodes/instrument_drivers/Keysight/KeysightAgilent_33XXX.py @@ -406,6 +406,7 @@ def __init__( "33511B": 1, "33512B": 2, "33522B": 2, + "33611A": 1, "33622A": 2, "33510B": 2, } @@ -416,6 +417,7 @@ def __init__( "33512B": 20e6, "33250A": 80e6, "33522B": 30e6, + "33611A": 80e6, "33622A": 120e6, "33510B": 20e6, } diff --git a/src/qcodes/instrument_drivers/Keysight/Keysight_33611a.py b/src/qcodes/instrument_drivers/Keysight/Keysight_33611a.py new file mode 100644 index 00000000000..1f13e5ec33a --- /dev/null +++ b/src/qcodes/instrument_drivers/Keysight/Keysight_33611a.py @@ -0,0 +1,7 @@ +from .KeysightAgilent_33XXX import Keysight33xxxSingleChannel + + +class Keysight33611A(Keysight33xxxSingleChannel): + """ + QCoDeS driver for the Keysight 33611A waveform generator. + """ diff --git a/src/qcodes/instrument_drivers/Keysight/__init__.py b/src/qcodes/instrument_drivers/Keysight/__init__.py index b003ed3d65b..8897f4c3fb3 100644 --- a/src/qcodes/instrument_drivers/Keysight/__init__.py +++ b/src/qcodes/instrument_drivers/Keysight/__init__.py @@ -11,6 +11,7 @@ from .Keysight_33511b import Keysight33511B from .Keysight_33512b import Keysight33512B from .Keysight_33522b import Keysight33522B +from .Keysight_33611a import Keysight33611A from .Keysight_33622a import Keysight33622A from .Keysight_34410A_submodules import Keysight34410A from .Keysight_34411A_submodules import Keysight34411A @@ -88,6 +89,7 @@ "Keysight33511B", "Keysight33512B", "Keysight33522B", + "Keysight33611A", "Keysight33622A", "Keysight34410A", "Keysight34411A", diff --git a/tests/drivers/test_Keysight_33XXX.py b/tests/drivers/test_Keysight_33XXX.py index 60602869d4d..0ca5897ae98 100644 --- a/tests/drivers/test_Keysight_33XXX.py +++ b/tests/drivers/test_Keysight_33XXX.py @@ -8,6 +8,7 @@ Keysight33511B, Keysight33512B, Keysight33522B, + Keysight33611A, Keysight33622A, ) @@ -75,6 +76,7 @@ def test_wrong_model_warns( request.addfinalizer(caplog.clear) request.addfinalizer(Keysight33511B.close_all) request.addfinalizer(Keysight33512B.close_all) + request.addfinalizer(Keysight33611A.close_all) request.addfinalizer(Keysight33622A.close_all) _ = Keysight33511B( @@ -83,12 +85,15 @@ def test_wrong_model_warns( _ = Keysight33512B( "kw_sim_33512b", address="GPIB::1::INSTR", pyvisa_sim_file="Keysight_33xxx.yaml" ) + _ = Keysight33611A( + "kw_sim_33611a", address="GPIB::1::INSTR", pyvisa_sim_file="Keysight_33xxx.yaml" + ) _ = Keysight33622A( "kw_sim_33622a", address="GPIB::1::INSTR", pyvisa_sim_file="Keysight_33xxx.yaml" ) warns = [record for record in caplog.records if record.levelname == "WARNING"] - assert len(warns) == 3 + assert len(warns) == 4 assert all( "The driver class name" in record.msg and "does not match the detected model" for record in warns From ca0a3a02d9b2bf6006b798092f94ee47a2659c4b Mon Sep 17 00:00:00 2001 From: Hans Beukers Date: Fri, 14 Nov 2025 15:29:29 +0100 Subject: [PATCH 2/4] Add changes for Keysight 33611A driver to new fragments --- docs/changes/newsfragments/7644.new_driver | 1 + 1 file changed, 1 insertion(+) create mode 100644 docs/changes/newsfragments/7644.new_driver diff --git a/docs/changes/newsfragments/7644.new_driver b/docs/changes/newsfragments/7644.new_driver new file mode 100644 index 00000000000..c6740f58d48 --- /dev/null +++ b/docs/changes/newsfragments/7644.new_driver @@ -0,0 +1 @@ +Added Keysight 33611A driver. \ No newline at end of file From 76adcca79b976a762d0befadefb9dcf8cd246f0f Mon Sep 17 00:00:00 2001 From: Hans Beukers Date: Fri, 14 Nov 2025 15:32:19 +0100 Subject: [PATCH 3/4] Add PR number to changes 7644 --- docs/changes/newsfragments/7644.new_driver | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/changes/newsfragments/7644.new_driver b/docs/changes/newsfragments/7644.new_driver index c6740f58d48..29f73dc4faf 100644 --- a/docs/changes/newsfragments/7644.new_driver +++ b/docs/changes/newsfragments/7644.new_driver @@ -1 +1 @@ -Added Keysight 33611A driver. \ No newline at end of file +Added Keysight 33611A driver. (:pr:`7644`) \ No newline at end of file From 94408b2831d8a2e50285d22fc4a7194a824a87ec Mon Sep 17 00:00:00 2001 From: Hans Beukers Date: Tue, 18 Nov 2025 11:14:38 +0100 Subject: [PATCH 4/4] Add newline to end of file newsfragment --- docs/changes/newsfragments/7644.new_driver | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/changes/newsfragments/7644.new_driver b/docs/changes/newsfragments/7644.new_driver index 29f73dc4faf..98600fc55df 100644 --- a/docs/changes/newsfragments/7644.new_driver +++ b/docs/changes/newsfragments/7644.new_driver @@ -1 +1 @@ -Added Keysight 33611A driver. (:pr:`7644`) \ No newline at end of file +Added Keysight 33611A driver. (:pr:`7644`)