qcodes_contrib_drivers.drivers.LighthousePhotonics package¶
Submodules¶
qcodes_contrib_drivers.drivers.LighthousePhotonics.Lighthouse_Photonics_Sprout_G module¶
- class qcodes_contrib_drivers.drivers.LighthousePhotonics.Lighthouse_Photonics_Sprout_G.LighthousePhotonicsSproutG(*args: Any, **kwargs: Any)[source]¶
Bases:
VisaInstrument
Qcodes driver for the Lighthouse Photonics Sprout-G laser.
Inspired by pylablib.
- ask(cmd: str) str [source]¶
Write a command string to the hardware and return a response.
Subclasses that transform
cmd
should override this method, and in it callsuper().ask(new_cmd)
. Subclasses that define a new hardware communication should instead overrideask_raw
.- Parameters:
cmd – The string to send to the instrument.
- Returns:
response
- Raises:
Exception – Wraps any underlying exception with extra context, including the command and the instrument.
- get_idn() dict [source]¶
Parse a standard VISA
*IDN?
response into an ID dict.Even though this is the VISA standard, it applies to various other types as well, such as IPInstruments, so it is included here in the Instrument base class.
Override this if your instrument does not support
*IDN?
or returns a nonstandard IDN string. This string is supposed to be a comma-separated list of vendor, model, serial, and firmware, but semicolon and colon are also common separators so we accept them here as well.- Returns:
A dict containing vendor, model, serial, and firmware.
- ramp_up(thresh: float = 0.99, show_progress: bool = True)[source]¶
Enable and wait for the output to reach the set power.
- write(cmd: str) None [source]¶
Write a command string with NO response to the hardware.
Subclasses that transform
cmd
should override this method, and in it callsuper().write(new_cmd)
. Subclasses that define a new hardware communication should instead overridewrite_raw
.- Parameters:
cmd – The string to send to the instrument.
- Raises:
Exception – Wraps any underlying exception with extra context, including the command and the instrument.
- device_info = GroupedParameter( 'device_info', group=_delegate_group_factory( 'device_info', self.product, self.version, self.serial, self.config ), instrument=self )¶
The device info.
- enabled = DelegateParameter( 'enabled', source=self.output_mode, get_parser=lambda x: x == 'on', set_parser=lambda x: val_mapping[x], bind_to_instrument=True, instrument=self )¶
Enable/disable the output.
- output_mode = Parameter('output_mode', get_cmd='OPMODE?', set_cmd='OPMODE={}', get_parser=str.lower, set_parser=str.upper, vals=Enum('on', 'off', 'idle', 'calibrate'), instrument=self)¶
The output status.
- output_power = Parameter('output_power', get_cmd='POWER?', set_cmd='POWER SET={:.2f}', get_parser=float, unit='W', instrument=self)¶
The current output power. The setter uses the output_setpoint parameter.
- output_setpoint = Parameter('output_setpoint', get_cmd='POWER SET?', unit='W', get_parser=float, instrument=self)¶
The output power setpoint.
- status = GroupedParameter( 'status', group=_delegate_group_factory( 'status', self.output_mode, self.warning_status, self.shutter_status, self.interlock_status ), instrument=self )¶
Status messages for output mode, warnings, shutter, and interlock.
- work_hours = GroupedParameter( 'work_hours', group=_delegate_group_factory( 'work_hours', self.on_hours, self.run_hours ), instrument=self )¶
The running hours of the controller and the laser.