nibcq.switch.SwitchAware

class nibcq.switch.SwitchAware

Bases: SwitchCapable

Mixin to add switching capability access to measurement classes.

This class provides a simple interface for measurements that need access to switching functionality. It delegates to the device’s switch capability if available, similar to how TemperatureAware works.

property has_switch_capability: bool

Check if the device has switch capability.

Returns:

True if switch capability is available, False otherwise

Return type:

bool

connect_channel(channel: SMUCellData) None

Connect to a specific DUT channel using the device’s switch capability.

Parameters:

channel (SMUCellData) – SwitchChannel containing connection information

Raises:

RuntimeError – If no switch capability is available

Return type:

None

disconnect_all() None

Disconnect all channels using the device’s switch capability.

Raises:

RuntimeError – If no switch capability is available

Return type:

None

wait_for_debounce() None

Wait for switch relays to settle using the device’s switch capability.

Raises:

RuntimeError – If no switch capability is available

Return type:

None

property switch_cells: List[str] | List[SMUCellData]

Get the configured switch cells from the device.

Returns:

A list of DUT channel names or SMUCellData objects, which contain the DUT and switch channel information.

Return type:

List[str] | List[SMUCellData]