Skip to content

Commit

Permalink
Update icarusq LO and dependencies
Browse files Browse the repository at this point in the history
  • Loading branch information
sorewachigauyo committed Feb 16, 2024
1 parent e2ecafa commit e8005eb
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 12 deletions.
28 changes: 20 additions & 8 deletions poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@ qm = ["qm-qua", "qualang-tools"]
zh = ["laboneq"]
rfsoc = ["qibosoq"]
los = ["qcodes", "qcodes_contrib_drivers"]
icarusq = ["qcodes_contrib_drivers", "pyvisa-py"]


[tool.poe.tasks]
Expand Down
15 changes: 11 additions & 4 deletions src/qibolab/instruments/icarusq.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import urllib3
from icarusq_rfsoc_driver.quicsyn import QuicSyn as LO_QuicSyn # pylint: disable=E0401
from qcodes_contrib_drivers.drivers.Valon.Valon_5015 import Valon5015 as Valon5015_LO

from qibolab.instruments.abstract import Instrument
from qibolab.instruments.oscillator import LocalOscillator
Expand Down Expand Up @@ -29,11 +29,18 @@ def disconnect(self):
pass


class QuicSyn(LocalOscillator):
"""Driver for the National Instrument QuicSyn Lite local oscillator."""
class Valon5015(LocalOscillator):
"""Driver for the Valon 5015 local oscillator."""

def create(self):
return LO_QuicSyn(self.name, self.address)
device = Valon5015_LO(
self.name, address=f"TCPIP0::{self.address}::23::SOCKET", visalib="@py"
)
# The native qcodes driver does not have on/off functions required for the device class.
# Here we add some lambda functions that corresponds to on/off.
device.on = lambda: device.buffer_amplifiers_enabled(True)
device.off = lambda: device.buffer_amplifiers_enabled(False)
return device

def __del__(self):
self.disconnect()

0 comments on commit e8005eb

Please sign in to comment.