nibcq.switch.SmuSwitchCapability ================================ .. py:class:: nibcq.switch.SmuSwitchCapability(config: SwitchConfiguration = None) Bases: :py:obj:`SwitchCapability` Switch capability for SMU devices (EIS/ACIR measurements). .. py:method:: 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. :param source_switch_resource_name: Resource name for source switch :param sense_switch_resource_name: Resource name for sense switch :param source_device_type: Switch device type for source (defaults to PXI_2525) :param sense_device_type: Switch device type for sense (defaults to PXIe_2530B) .. py:method:: connect_channel(cell: SMUCellData) -> None Connect SMU source and sense to specific DUT channel. :param cell: SMUCellData containing connection information .. py:method:: create_for_device_family(device_family: nibcq.enums.DeviceFamily, config: SwitchConfiguration) -> SwitchCapability :classmethod: Factory function to create appropriate switch capability. :param device_family: The device family (DMM or SMU) :param config: SwitchConfiguration object :returns: SwitchCapability instance appropriate for the device family. :raises ValueError: If device family is not supported for switching or config is None. .. py:method:: disconnect_all() -> None Disconnect all channels concurrently. .. py:method:: wait_for_debounce() -> None Wait for all the switch relays to settle concurrently. .. py:method:: close() -> None Close all switch sessions.