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 call super().ask(new_cmd). Subclasses that define a new hardware communication should instead override ask_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.

Parameters:
  • thresh (float, optional) – Percentage at which the output power is considered to reach the setpoint. The default is 0.99.

  • show_progress (bool, optional) – Show a progressbar. The default is True.

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 call super().write(new_cmd). Subclasses that define a new hardware communication should instead override write_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 = Parameter('enabled', get_cmd=self.output_mode, set_cmd=self.output_mode, val_mapping=create_on_off_val_mapping('on', 'off'), 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.

Module contents