Understanding the IO Monitor Display

IO Monitor displays messages originating from VISA APIs. It allows you to automatically group relevant asynchronous VISA APIs, accumulate the time spent on them, and present the aggregated data and elapsed time as a single API entry. This feature mimics the behavior of synchronous viRead/viWrite APIs, providing a clearer overview of asynchronous operations.

Note that this feature is configurable and is disabled by default. Users must update the IO Monitor settings to enable it.

The IO Monitor display is split into an overview section at the top and an detail section at the bottom.

  • In the overview section, IO Monitor displays the basic information for each I/O message.
  • In the detail section, IO Monitor displays detailed information about an I/O message you have chosen. Refer to Monitoring I/O Messages on the Display for a description of I/O messages.

IO Monitor Display

# Description
1 The Select Test Station drop down displays the name of the connected Test Station.
In future this drop down will be enabled to choose from multiple test stations.
2 : Opens IO Monitor Help and provides technical support contact information.
3 : The user profile view lets you switch between the dark and light themes and log out from IO Monitor.
4

Start: Starts capturing messages originating from the selected IO Libraries functions. On clicking Start, the button switches to Stop allowing you to stop capturing messages.
The following options are available when you click on the Start drop down:

  • Start Capture / Don't Log Captured Messages - Begin the capture of messages to the display without logging them to an .xml file.
  • Start Capture / Log To New Message File - Start capturing messages to the display, and open a dialog that lets you create / name a new .xml file for logging those messages. This dialog also lets you choose a maximum size (in MB) for that log file. Once you have created an .xml file for active logging, a status bar for the log file will appear just below the buttons and above the Overview section, displaying the name of the open log file and the percent full with respect to the maximum size you set.
  • Start Capture / Log to Open Message File - Start capturing messages to the display, and log to the file that is currently open. This menu option is only available if you previously started and then stopped capturing without closing the log.
5 Save: Saves currently displayed messages as an .xml log file
6 Open: Opens a dialog where you can view the existing files. Select the file to open.
7 Clear - Clears messages from the display.
8 Filter - Filters the message list as per the search criteria.
9 Settings - Opens the IO Monitor Settings dialog.
10 The Export to CSV lets you export the complete list of messages (visible on the screen) to a CSV file.
On clicking Export to CSV, the file will download on the default download location on the system.
11

The Overview Section is divided into eight columns. From left to right, they are:

  • Time Stamp:The Time Stamp column contains the time the message was sent.
  • Program:The program that originates the message.
  • Address: The logical addresses of the device.
  • Source: The IO Library or driver that contains the function that generated the message. Messages from IVI-COM instrument drivers show IVI-COM in this column.
  • Method Call: The function that generated the message. For detailed information on specific function calls, refer to the Keysight VISA, SICL, and VISA-COM help files, or to the IVI-COM driver help file.
  • IO Data: The value of the first non-empty string parameter for the function call. The IO Data column monitors I/O string or other buffer data. VISA Resource Descriptors and SCPI commands are monitored in this column.
    IO Monitor displays all VISA/SICL APIs handling data on a secure connection, while obscuring the content. With this update, the data sent or received is labeled as "<secure data>" in the overview section, and the data length is shown as "4294967295" in the detail section.
    If the data is too long, you can view it using any of the following methods:
    • Right-click or hover over IO Data to display the Copy button. Click Copy and paste the data into a text file.

    • Click on IO Data to populate the message details (see #12). Then, click on each parameter to view its input arguments and details.

  • Return Value: The return value passed back from the function call. For detailed information on specific function calls and possible returned values, refer to the Keysight VISA, SICL, and VISA-COM help files, or to the IVI-COM driver help file. Please consult the Keysight VISA help file for a table containing all VISA Attributes along with their hexadecimal and decimal codes.
  • Time (ms): The amount of time required to process the function call expressed in milliseconds. Examine the Time values to determine if any bottlenecks exist in your I/O code. For example, if one I/O operation takes much longer than the others, that operation may be a good place to begin studying your code. After you have adjusted the code, you can rerun the I/O application and examine its events to verify any improvements.
12

The detail section shows the parameter(s) for the selected entry. The Parameters section has these columns:

  • Name - The name of the parameter.
  • Type - Whether the data is an input, output, or return value, and the data type of the value.
  • Value - The parameter value. IO Monitor displays all VISA/SICL APIs handling data on a secure connection, while obscuring the content. With this update, the data sent or received is labeled as "<secure data>" in the overview section, and the data length is shown as "4294967295" in the detail section.

Buffer and array parameters are listed in blue text in the Parameters section. Click on one of these parameters to display the buffer or array details in the section to the right. The details for a buffer are:

  • Offset - The buffer offset of the first value in the hexadecimal or ASCII column.
  • Hexadecimal  - The hexadecimal representation of the buffer value.
  • ASCII - The ASCII representation of the buffer value.

Arrays can contain 16-, 32-, or 64-bit data. The details for an array are:

  • Index - The position of each element in the array.
  • Value - The value of each array element.

For example, the graphic below (Windows is shown; Linux content is comparable) shows details of a buffer.

13

Buffer and array parameters are listed in blue text in the Parameters section.

Click on one of these parameters to display the buffer or array details in the section to the right. The details for a buffer are:

  • Offset - The buffer offset of the first value in the hexadecimal or ASCII column.
  • Hexadecimal - The hexadecimal representation of the buffer value.
  • ASCII - The ASCII representation of the buffer value.

     

    Arrays can contain 16-, 32-, or 64-bit data. The details for an array are:

    Index - The position of each element in the array.

    Value - The value of each array element.

14 The status description at the bottom of the display alerts you to whether monitoring is on or off, and whether logging is enabled or disabled.