nibcq.switch.SmuSwitchCapability

class nibcq.switch.SmuSwitchCapability(config: SwitchConfiguration = None)

Bases: SwitchCapability

Switch capability for SMU devices (EIS/ACIR measurements).

Parameters:

config (SwitchConfiguration)

initialize_switches(source_switch_resource_name: str, sense_switch_resource_name: str, source_device_type: nibcq.enums.SwitchDeviceType = SwitchDeviceType.PXI_2525, sense_device_type: nibcq.enums.SwitchDeviceType = SwitchDeviceType.PXIe_2530B) None

Initialize source and sense switch sessions for SMU measurements.

Parameters:
  • source_switch_resource_name (str) – Resource name for source switch

  • sense_switch_resource_name (str) – Resource name for sense switch

  • source_device_type (nibcq.enums.SwitchDeviceType) – Switch device type for source (defaults to PXI_2525)

  • sense_device_type (nibcq.enums.SwitchDeviceType) – Switch device type for sense (defaults to PXIe_2530B)

Return type:

None

connect_channel(cell: SMUCellData) None

Connect SMU source and sense to specific DUT channel.

Parameters:

cell (SMUCellData) – SMUCellData containing connection information

Return type:

None

classmethod create_for_device_family(device_family: nibcq.enums.DeviceFamily, config: SwitchConfiguration) SwitchCapability

Factory function to create appropriate switch capability.

Parameters:
Returns:

SwitchCapability instance appropriate for the device family.

Raises:

ValueError – If device family is not supported for switching or config is None.

Return type:

SwitchCapability

disconnect_all() None

Disconnect all channels concurrently.

Return type:

None

wait_for_debounce() None

Wait for all the switch relays to settle concurrently.

Return type:

None

close() None

Close all switch sessions.

Return type:

None