# VisaConfig

## class VisaConfig( visa_resource: str, visa_backend: str | None = None, serial_config: SerialConfig = <factory>, terminator: TerminatorConfig = <factory>, timeout: TimeoutConfig = <factory>, tcp_nodelay: bool = True, )[source]

Bases: [`object`](https://docs.python.org/3/builtins/functions.html#object "(in Python v3.15)")

Connection parameters for a VISA resource.

Variables:
:   - **visa_resource** ([*str*](https://docs.python.org/3/builtins/stdtypes.html#str "(in Python v3.15)")) – VISA resource string, e.g. `TCPIP0::host::5025::SOCKET`
      or `USB0::0x2A8D::0x0101::MY12345::INSTR`.
    - **visa_backend** ([*str*](https://docs.python.org/3/builtins/stdtypes.html#str "(in Python v3.15)") *|* *None*) – pyvisa backend specifier. When unset (`None`), uses the
      system IVI VISA implementation (`@ivi`) and falls back to `@py`
      when no IVI backend is installed. An explicitly set backend is used
      as-is, with no fallback.
    - **serial_config** ([*SerialConfig*](https://dev.nominal.io/instro/ref/library/instro.lib.transports.visa.SerialConfig.md#instro.lib.transports.visa.SerialConfig "instro.lib.transports.visa.SerialConfig")) – Serial settings applied when the VISA resource is an
      ASRL (RS-232/RS-485) interface.
    - **terminator** ([*TerminatorConfig*](https://dev.nominal.io/instro/ref/library/instro.lib.transports.visa.TerminatorConfig.md#instro.lib.transports.visa.TerminatorConfig "instro.lib.transports.visa.TerminatorConfig")) – Read and write terminators.
    - **timeout** ([*TimeoutConfig*](https://dev.nominal.io/instro/ref/library/instro.lib.transports.visa.TimeoutConfig.md#instro.lib.transports.visa.TimeoutConfig "instro.lib.transports.visa.TimeoutConfig")) – Operation timeouts.
    - **tcp_nodelay** ([*bool*](https://docs.python.org/3/builtins/functions.html#bool "(in Python v3.15)")) – Disable Nagle’s algorithm on raw TCP SOCKET connections.
      NI-VISA does this by default; pyvisa-py does not, which can wedge
      instruments that reset on coalesced writes (issue #156). No effect
      on non-socket transports. Defaults to `True`.

### visa_resource: str

### visa_backend: str | None = None

### serial_config: SerialConfig

### terminator: TerminatorConfig

### timeout: TimeoutConfig

### tcp_nodelay: bool = True
