Cluster QSM API#

Parameters#

QSM.present()#

Sets/gets module present status for slot {} in the Cluster.

Properties:
  • value: <Boolean>

QSM.connected()#

Gets module connected status for slot {} in the Cluster.

Properties:
  • value: <Boolean>

Methods#

QSM.clear_rampdown() None#

Clear the error flag to be able to use QSM DACs again after triggering a rampdown.

Note

This method calls Cluster.clear_rampdown using functools.partial

QSM.clear_router() None#

Reset SMF router configuration.

Raises:

Exception – Invalid input parameter type.

QSM.get_io_channel_config(channel: int | None = None) dict[str, Any] | list[dict[str, Any]]#

Get IO channel configuration. The configuration consists of multiple parameters in a JSON format.

Parameters:

channel (Optional[int]) – I/O channel index.

Returns:

Configuration dictionary.

Return type:

dict

Raises:

NotImplementedError – Functionality not available on this module.

Note

This method calls Cluster._get_io_channel_config using functools.partial

QSM.get_router_config() dict | None#

Get the SMF router configuration for the module.

Returns:

The router configuration.

Return type:

Optional[dict]

Raises:

TypeError – Non SMF modules do not support local routing.

QSM.measure_current(io_channels: int | collections.abc.Iterable[int]) float | list[float]#

Measures the current of the specified IO channel(s).

Parameters:

io_channels (Union[int, Iterable[int]]) – The index (or indices) of the IO channel(s) to measure.

Returns:

The measured current in Amperes. Returns a single float if io_channels is an int. Returns a list[float] if io_channels is an iterable.

Return type:

Union[float, list[float]]

QSM.request_rampdown() None#

Resets the output for all QSM channels to zero, but it also sets an error flag in the system and blocks the coarse DAC until such flag is cleared (reset).

Note

This method calls Cluster.request_rampdown using functools.partial

QSM.reset_io_channel_output(io_channel: int | None = None) None#

Resets the output for a specified QSM channel to zero.

Parameters:

io_channel (Optional[int]) – Source or measurement channel to manipulate. If None, resets all channels.

Raises:

Exception – Invalid input parameter type.

Note

This method calls Cluster.reset_io_channel_output using functools.partial

QSM.set_io_channel_config(*_args, **_kwargs) None#

Set IO channel configuration. The configuration consists of multiple parameters in a JSON format. If the configuration struct does not have the correct format, an error is set in system error.

Parameters:
  • channel (int) – I/O channel index.

  • config (dict) – Configuration dictionary.

Raises:

NotImplementedError – Functionality not available on this module.

Note

This method calls Cluster._set_io_channel_config using functools.partial

QSM.set_local_route(id_: int | list[int], sequencers: collections.abc.Iterable[qblox_instruments.qcodes_drivers.sequencer.Sequencer] | None = None) None#

Sets up local routing for a specific module.

The message with the given id is routed locally within the module. If no sequencers are specified, all sequencers in the module receive the message, otherwise, only the listed sequencers receive it.

Parameters:
  • id (Union[int, list[int]]) – The ID (internally referred to as event_id for the event processor).

  • sequencers (Optional[Iterable[int]]) – The sequencers to route the message to.

Raises:
  • Exception – Invalid input parameter type.

  • TypeError – Non SMF modules do not support local routing.

QSM.set_safe_voltage_range(min_voltage: float, max_voltage: float) None#

Set the safe voltage range for all channels of the QSM module at the specified slot.

Parameters:
  • min_voltage (float) – The desired minimum voltage in volts.

  • max_voltage (float) – The desired maximum voltage in volts.

Note

This method calls Cluster._set_safe_voltage_range using functools.partial

QSM.validate_connections(sequencer: int, *connections: str) list[qblox_instruments.native.helpers.ValidatedChannelConnection]#