# devices.keithley:Keithley2611A


Control interface for Keithley 2611A Source Measure Unit (SMU).


Usage

``` python
devices.keithley:Keithley2611A(
    interface,
    **kwargs,
)
```


Provides methods to control and read data from the Keithley 2611A. It supports voltage and current sourcing and sensing in both 2-wire and 4-wire configurations.


## Attributes


`config_params: dict`  
Dictionary of configuration parameters and their corresponding commands

`mode_int: dict`  
Mapping of mode strings to numeric values

`mode_char: dict`  
Mapping of mode strings to character identifiers used in commands


## Methods

| Name | Description |
|----|----|
| [__init__()](#__init__) | Initialize the Keithley 2611A instrument. |
| [configure()](#configure) | Configure the Keithley 2611A to source and sense parameters. |
| [getSense()](#getSense) | Get the measured sense value. |
| [getSource()](#getSource) | Get the measured source value. |
| [output()](#output) | Control the output state of the instrument. |
| [setSource()](#setSource) | Set the source level. |

------------------------------------------------------------------------


### \_\_init\_\_()


Initialize the Keithley 2611A instrument.


Usage

``` python
__init__(
    interface,
    **kwargs,
)
```


#### Parameters


`interface: str`  
VISA resource name or other interface identifier

`**kwargs`  
Additional arguments passed to the parent VisaDevice class


#### Notes

Sets default termination characters and initializes the device. Reads the initial state including source mode, four-wire setting, and output state.

------------------------------------------------------------------------


### configure()


Configure the Keithley 2611A to source and sense parameters.


Usage

``` python
configure(
    sourceMode=None,
    senseMode=None,
    fourWire=None,
    senseAutoRange=None,
    senseRange=None,
    sourceAutoRange=None,
    sourceRange=None,
    senseLimit=None,
    output=False,
    delayAuto=False,
    delay=None,
    reset=False,
)
```


#### Parameters


`sourceMode: str = None`  
Parameter to source, "VOLT" or "CURR".

`senseMode: str = None`  
Parameter to measure, "VOLT" or "CURR".

`fourWire: bool = None`  
Four-wire (True) or two-wire (False) sensing.

`senseAutoRange: bool = None`  
Automatically set the measurement range.

`senseRange: float = None`  
Manual measurement range; the device selects the next inclusive range.

`sourceAutoRange: bool = None`  
Automatically set the sourcing range.

`sourceRange: float = None`  
Manual sourcing range; the device selects the next inclusive range.

`senseLimit: float = None`  
Voltage or current limit for the sense circuit.

`output: bool = ``False`  
Enable the output after configuration. Default is False.

`delayAuto: bool = ``False`  
Automatically set the stabilization delay. Default is False.

`delay: float or bool = None`  
Manual delay in seconds for output stabilization, or False to disable.

`reset: bool = ``False`  
Reset the device before configuration. Default is False.


#### Notes

The output will be turned off during configuration. If sourceMode and senseMode are not provided, no configuration is done.


#### Examples

``` python
>>> instrument.configure(sourceMode="CURR", senseMode="VOLT",
                         fourWire=True, senseAutoRange=True,
                         sourceRange=0.001, output=True)
```

This configures the instrument to source current, measure voltage, use 4-wire sensing, automatically set the voltage measurement range, set the current sourcing range to include 1mA, and enable the output.

------------------------------------------------------------------------


### getSense()


Get the measured sense value.


Usage

``` python
getSense()
```


#### Returns


`float`  
The measured sense value (voltage or current depending on configured senseMode)


------------------------------------------------------------------------


### getSource()


Get the measured source value.


Usage

``` python
getSource()
```


#### Returns


`float`  
The measured source value (voltage or current depending on configured sourceMode)


------------------------------------------------------------------------


### output()


Control the output state of the instrument.


Usage

``` python
output(state=False)
```


#### Parameters


`state: bool = ``False`  
True to enable the output, False to disable


#### Returns


`None`  


------------------------------------------------------------------------


### setSource()


Set the source level.


Usage

``` python
setSource(current)
```


#### Parameters


`current: float`  
The value to set the source to (can be voltage or current depending on configured sourceMode)


#### Returns


`None`
