Main Content

Troubleshooting VISA Interface

Virtual Instrument Software Architecture (VISA) is an industry standard defined by the IVI foundation for communicating with instruments regardless of the interface.

For the full VISA specifications maintained by the IVI Foundation, see IVI Specifications.


If you are having trouble connecting to or communicating with your VISA resource, follow these troubleshooting tips. All of these steps also apply for troubleshooting the VISA Explorer app.

Possible Solutions

Supported Platforms and Minimum Driver Requirements

VISA is supported on these platforms:

  • macOS (NI-VISA and R&S VISA only)

  • Windows® 10

These are the minimum VISA driver versions you must have:

  • Keysight® IO Libraries version 18.1.24715.0 (Keysight Connection Expert 2019)

  • National Instruments™ NI-VISA version 19.5

  • Rohde & Schwarz R&S VISA version 5.12

Tektronix® TekVISA is not supported for the visadev interface or the VISA Explorer app.


VISA is not supported on Mac computers with Apple silicon.

Configuration and Connection

  1. Make sure your device is powered on and all cables are properly connected.

  2. Make sure that you have the correct instrument driver installed for your device. Refer to your device documentation and the vendor website.


    If you are connecting to a GPIB device using an NI GPIB adaptor, you must download the NI-488.2 driver compatible with your VISA driver version from the NI website. The NI-488.2 driver is not available as an Instrument Control Toolbox™ support package.

  3. Make sure that your device is supported in Instrument Control Toolbox. See Is My Hardware Supported? and Instrument Control Toolbox Supported Hardware.

  4. Make sure that Instrument Control Toolbox recognizes your device, by using the visadevlist function.

    resourceList = visadevlist
    resourceList =
      6×6 table
                            ResourceName                         Alias                  Vendor               Model       SerialNumber     Type 
             __________________________________________    _________________    ______________________    ___________    ____________    ______
        1    "USB0::0x0699::0x036A::CU010105::0::INSTR"    "NI_SCOPE_4CH"       "TEKTRONIX"               "TDS 2024B"    "CU010105"      usb   
        2    "TCPIP0::"          "Keysight_33210A"    "Agilent Technologies"    "33210A"       "MY57003523"    tcpip 
        3    "ASRL1::INSTR"                                "COM1"               ""                        ""             ""              serial
        4    "ASRL3::INSTR"                                "COM3"               ""                        ""             ""              serial
        5    "GPIB0::5::INSTR"                             "FGEN_2CH"           "Agilent Technologies"    "33522B"       "MY52800145"    gpib  
        6    "GPIB0::11::INSTR"                            "OSCOPE_2CH"         "TEKTRONIX"               "TDS 1002"     "0"             gpib  

    Create a visadev object using one of the resource names listed. If your instrument is not listed, it might not be configured properly in your VISA vendor’s configuration utility software.


    VISA-TCP/IP, VISA-Socket, and VISA-Serial instruments and devices might require additional configuration to appear in the visadevlist output.

  5. You can create a VISA object to use with different instrument types. For example, create a VISA-Serial object connected to serial port COM1.

    v = visadev("ASRL1::INSTR");

    If you do not get an error, the object was created successfully. If the resource name or alias does not exist, you will get an error. Check that the resource name or alias is correct in the vendor configuration utility software.

    If you are using the VISA Explorer app, you specify the resource name after clicking Configure New VISA Resource. Determine whether you can connect to the specified resource by clicking Test Connection. The Connection Status field indicates whether the connection is successful.

    VISA Explorer app with connection parameters.

    You can have only one visadev object for a given resource at a time.

  6. When you have connected, you can communicate with your device. If you have problems sending or receiving, you may need to configure communication settings. Make sure you are using the correct instrument command. Look in the instrument’s documentation to see what commands it recognizes. Verify that communication works by testing the connection using the vendor's configuration utility.

VISA Driver Configuration

If you are still having connection or communication issues with your instrument using VISA, you can troubleshoot using your VISA vendor's software and utilities, as described in the following table.

VISA VendorConfiguration UtilityTesting ConnectionDebug Utility
Keysight VISAKeysight Connection Expert (KCE)Interactive IO button on KCEIO Monitor button on KCE
NI-VISANI Measurement and Automation Explorer (NI MAX)Tools > NI VISA > VISA Interactive ControlTools > NI I/O Trace
Rohde & Schwarz R&S VISARsVisaConfigure, launched from RsVisa Config tab on RsVisaTesterRsVisaTesterRsVisaTraceTool, launched from RsVisa TraceTool tab on RsVisaTester
  1. Use the VISA Conflict Manager settings from your VISA vendor's configuration utility to make sure that you have a preferred VISA set and that it is enabled. Check if all the VISA interfaces are using the expected VISA. For R&S VISA, make sure it is set to "Preferred". For example, for the Keysight Connection Expert, do the following.

    • Open the settings menu and select Tools > VISA Conflict Manager.

    • Under Enabled Implementations, make sure that your VISA vendor is selected.

    • Under Preferred Implementation, make sure that your VISA vendor is selected.

  2. If you are using SCPI commands, check if your device responds to them as expected when issued from the configuration utility.

  3. Use your VISA vendor's configuration utility to make sure that your device hardware is being detected. You can also check that your device responds to a *IDN? query.

  4. Use your VISA vendor's debug utility to check the Instrument I/O traffic for errors other than timeout errors.

  5. Try installing a different supported VISA vendor's driver.

See Also

| |

Related Topics