VISA Explorer
Description
The VISA Explorer app provides a user interface to connect to and communicate with instruments over VISA.
Using this app, you can:
Connect to TCP/IP (using VXI11 and HiSLIP), TCP/IP Socket, USB, GPIB, Serial, VXI, and PXI interfaces using VISA.
Configure connection and communication properties for your VISA resource.
Write binary, ASCII-terminated string, or binblock data.
Read binary, ASCII-terminated string, or binblock data.
Plot data in a separate figure window.
Analyze data by viewing it in the Signal Analyzer app.
Export data to the MATLAB® workspace.
Generate a MATLAB script for app interactions that uses the
visadev
interface.

Open the VISA Explorer App
MATLAB Toolstrip: On the Apps tab, under Test and Measurement, click the app icon.
MATLAB command prompt: Enter
visaExplorer
.
Examples
For a walkthrough of this example, play the following video.

This video shows you how to use the VISA Explorer app to read waveform data from a key site infinite vision oscilloscope using the VISA Def interface. You can launch the VISA Explorer app from the MATLAB command window by calling the VISA Explorer command. Once it opens, the VISA Explorer app provides a user interface to connect to and communicate with instruments over VISA without writing any MATLAB code.
On this machine, the app has the KEYSIGHT oscilloscope listed as a VISA USB resource under the discovered hardware. Select this resource. The VISA Explorer app then connects to the instrument using a VISA dev. Object
Next, send a few SCPI commands to configure the oscilloscope for measurement. Make sure you reset the instrument first. Then perform an auto scale operation on the input signal.
Next, set the waveform source as channel 1. Notice that you can save the SCPI commands as workspace variables in MATLAB, and they'll appear in the dropdown here. Similarly, send a few other SCPI commands to the oscilloscope.
So now you can see that the oscilloscope is configured and ready for measurement. Notice that the Skippy commands being written to the instrument appear in the communication log and the corresponding MATLAB code is visible in the MATLAB code log. Next, read data from the oscilloscope. Read back the data as a binned block of UN16 values.
So here's the data from the oscilloscope. Use the plot icon in the tool strip to plot the data. Here is the plot of the waveform. You can also view the data in the signal analyzer app for further analysis by clicking this icon.
Here's how the signal appears in the signal analyzer app. The app also lets you generate a MATLAB live script from the MATLAB code log. Visit the VISA Explorer app documentation page for more information.

- 2x
- 1.5x
- 1.25x
- 1x, selected
- 0.75x
- 0.5x
- 0.25x
- Chapters
- descriptions off, selected
- captions settings, opens captions settings dialog
- captions off, selected
This is a modal window.
Beginning of dialog window. Escape will cancel and close the window.
End of dialog window.
This is a modal window. This modal can be closed by pressing the Escape key or activating the close button.
Parameters
For a full list of properties that appear in the Property Inspector, see visadev Properties. The properties that you see in VISA Explorer depend on your VISA interface.
Write Section
You can write Binary
, ASCII-Terminated
String
, or Binblock
data to the VISA
resource.
A Binary
write is equivalent to the write
function, an ASCII-Terminated String
write is equivalent to
the writeline
function, and a Binblock
write is
equivalent to the writebinblock
function.
Specify the data type of the data to write to the VISA resource. This parameter determines the number of bytes to write for each value and the interpretation of those bytes as a MATLAB data type.
Dependencies
If you set the Data Format to ASCII-Terminated
String
, the only possible value for this parameter is
string
.
This parameter can be set to uint64
or
int64
only if you select the Workspace
Variable option instead of Data to Write.
Specify the data to write to the VISA resource. The data is written as the type
specified by Data Type, regardless of the format in this parameter.
If the Data Type is a numeric type, the app evaluates the
Data to Write values and operations before writing the data. For
example, you can specify 1:5
instead of
[1,2,3,4,5]
.
Select either this parameter or Workspace Variable to write data.
Select an existing workspace variable to write to the VISA resource. The data is written as the type specified by Data Type, regardless of the data type of the variable in the workspace.
If Data Format is Binary
or
Binblock
, you can select the following types of workspace variables:
Row (1-by-
N
) or column (N
-by-1) vector of numeric values1-by-
N
character vector1-by-1 string scalar
If Data Format is ASCII-Terminated
String
, you can select the following types of workspace variables:
1-by-
N
character vector1-by-1 string scalar
Select either this parameter or Data to Write to write data.
Click this button to write the data specified in Data to Write
or Workspace Variable as the specified Data
Type to the VISA resource. If Data Format is
ASCII-Terminated String
, the write terminator specified by
the Terminator property is automatically appended to the data
being written.
Clicking this button is equivalent to performing the write
,
writeline
, or writebinblock
functions.
Click this button to write the ASCII-terminated string command specified in Data to Write or Workspace Variable as the specified Data Type to the VISA resource, then read the ASCII text returned from the resource. The write terminator specified by the Terminator property is automatically appended to the data being written.
Clicking this button is equivalent to performing the writeread
function.
Dependencies
To perform this operation, set the Data Format to
ASCII-Terminated String
.
Read Section
Read Binary
, ASCII-Terminated
String
, or Binblock
data from the VISA
resource.
A Binary
read is equivalent to the read
function, an ASCII-Terminated String
read is equivalent to
the readline
function, and a Binblock
read is equivalent to the readbinblock
function.
Specify the data type of the data to read from the VISA resource. This parameter determines the number of bytes to read for each value and the interpretation of those bytes as a MATLAB data type.
Dependencies
If you set the Data Format to ASCII-Terminated
String
, the only possible value for this parameter is
string
.
Specify the number of values to read as a positive integer. This parameter must be less than or equal to Values Available. If you leave this parameter empty, the client reads all available values using the specified Data Type.
Dependencies
To enable this parameter, set Data Format to
Binary
.
Click this button to read data from the VISA resource. If Data
Format is Binary
, read the number of values
specified by Num Values to Read in the form specified by
Data Type. If Data Format is
ASCII-Terminated String
or
Binblock
, read data until the first occurrence of the read
terminator specified by the Terminator property.
Clicking this button is equivalent to the read
,
readline
, or readbinblock
functions.
Click this button to clear all data from both the input and output buffers of the VISA resource. This also clears the hardware output buffer of the instrument.
Clicking this button is equivalent to performing the flush
function.
Communication Log Section
View the data in the Data column of the Communication
Log as Binary
, ASCII
,
or Hexadecimal
, as applicable based on the data type. This
parameter does not change the original value or data type of the data. For more
information about these formats, see Data Type Conversion.
Click this button to clear all the contents of the Communication Log.
Analyze Section
Click this button to open a new figure window that plots the data currently selected in the Communication Log. You can select only one row of data, and the selected data must be numeric.
Unlike Write and Read, this operation is not captured in the MATLAB Code Log pane.
Click this button to launch the Signal Analyzer app and send it the data currently selected in the Communication Log. You can select only one row of data, and the selected data must be a numeric vector.
You must have Signal Processing Toolbox™ installed to use the Signal Analyzer app.
Export Section
Edit the name of the workspace variable that you want to export data to. The
Export Selected Row
and Export Communication
Log
options in the Export drop-down menu save your
data in the workspace as the variable specified in this field.
You must specify a valid MATLAB variable name that does not already exist in the workspace. If you specify an invalid name, it is automatically changed to a valid variable name.
Click this button to select one of the following options for exporting data from this app:
Export Selected Row
— Save the data currently selected in the Communication Log to the workspace as the variable specified by Workspace Variable.Export Communication Log
— Save all of the Communication Log data to the workspace as atimetable
with the variable name specified by Workspace Variable.Generate MATLAB Script
— Generate a MATLAB live script populated with the content in MATLAB Code Log and open it in the Live Editor.
Version History
Introduced in R2022b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: United States.
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)