Skip to content

Commit fa09bbb

Browse files
committed
Mercury driver improvment
1 parent 61be023 commit fa09bbb

File tree

1 file changed

+11
-7
lines changed

1 file changed

+11
-7
lines changed

src/qcodes/instrument_drivers/oxford/MercuryiPS_VISA.py

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -76,14 +76,14 @@ def _temp_parser(response: str) -> float:
7676
return float(response.rsplit(":", maxsplit=1)[-1][:-1])
7777

7878

79-
class OxfordMercuryWorkerPS(InstrumentChannel):
79+
class OxfordMercuryWorkerPS(InstrumentChannel["OxfordMercuryiPS"]):
8080
"""
8181
Class to hold a worker power supply for the Oxford MercuryiPS
8282
"""
8383

8484
def __init__(
8585
self,
86-
parent: VisaInstrument,
86+
parent: OxfordMercuryiPS,
8787
name: str,
8888
UID: str,
8989
**kwargs: Unpack[InstrumentBaseKWArgs],
@@ -108,7 +108,7 @@ def __init__(
108108

109109
# The firmware update from 2.5 -> 2.6 changed the command
110110
# syntax slightly
111-
if version.parse(self.root_instrument.firmware) >= version.parse("2.6"):
111+
if version.parse(self.parent.firmware) >= version.parse("2.6"):
112112
self.psu_string = "SPSU"
113113
else:
114114
self.psu_string = "PSU"
@@ -348,10 +348,14 @@ def __init__(
348348
self.firmware = self.IDN()["firmware"]
349349

350350
# TODO: Query instrument to ensure which PSUs are actually present
351-
for grp in ["GRPX", "GRPY", "GRPZ"]:
352-
psu_name = grp
353-
psu = OxfordMercuryWorkerPS(self, psu_name, grp)
354-
self.add_submodule(psu_name, psu)
351+
GRPX = OxfordMercuryWorkerPS(self, "GRPX", "GRPX")
352+
self.GRPX: OxfordMercuryWorkerPS = self.add_submodule("GRPX", GRPX)
353+
354+
GRPY = OxfordMercuryWorkerPS(self, "GRPY", "GRPY")
355+
self.GRPY: OxfordMercuryWorkerPS = self.add_submodule("GRPY", GRPY)
356+
357+
GRPZ = OxfordMercuryWorkerPS(self, "GRPZ", "GRPZ")
358+
self.GRPZ: OxfordMercuryWorkerPS = self.add_submodule("GRPZ", GRPZ)
355359

356360
self._field_limits = field_limits if field_limits else lambda x, y, z: True
357361

0 commit comments

Comments
 (0)