Example Code

Utilizing CableSense in a Test Environment

Code and Documents



Demonstrates how to utilize CableSense technology to test the internal impedance or reflection coefficient at each point within a cable connected to a DUT.



NI has released CableSense as an automated method of verifying the cable integrity of your Oscilloscope's signal path. This example utilizes that technology by giving users a possible starting point to build masks (expected cable behavior) and to verify their cable setup against that mask. See the White Paper linked below for more information on CableSense technology.


Hardware and Software Requirements

LabVIEW 2015 or compatible

NI-SCOPE 18.7 or compatible



Steps to Implement or Execute Code

This project consists of two top-level VIs: CableSense - Create and Save Mask and CableSense - Verify Against Mask. First, follow the instructions below for Create and Save Mask. Then, if you would like to load a saved mask instead of creating a new one, follow the subsequent instructions for Verify Against Mask


Instructions for CableSense - Create and Save Mask VI:

  1. In the 'Hardware' tab, select a device and channel.
  2. In the 'Mask Configuration' tab Configure your Mask Segmentation table to segment your passive electrical path into subregions of interest (cables, connectors, adapters). These segments will be used in error reporting and subsequent troubleshooting if the CableSense measurmeent fails the mask. There are other controls that can be used to modify the mask creation.
  3. In the 'Mask File' tab, select the name and location of the TDMS file that contains the mask paramters and waveforms. Optionally choose to name the mask channel; this can be helpful if you are devleoping and maintaining multiple masks ina test setup.
  4. In the 'Y-Axis' and 'X-Axis' tabs, choose your range (internal impedance or reflection coefficient) and domain (time or distance), as well as mask margin. Choose a mask margin that will allow for normal variation in your setup while still reliably detecting faults. Choosing appropriate margins for your particular setup may take some iteration.
  5. If you would like to save the mask for use with the CableSense - Verify Against Mask VI, click Save Mask before and set the Update Mask box to true in the 'Action Control' area before taking the measurmeent.
  6. With a verified cable setup, run the VI and click Take Measurement. This creates the mask future setups will compare to.
  7. With a test setup, set Update Mask to false and click Take Measurement. If the setup is within margin of the verified cable the mask was made with, Overall Pass Mask Test will be true. If not, it will be false, and Failure Location will show which component(s) of the mask exhibited a failure. Be sure that the output domain of your test setup remains the same as the domain the mask was created with.

Instructions for CableSense - Verify Against Mask VI:

  1. In the CableSense Configuration tab control, select a device ion the 'Hardware' tab.
  2. Select the Mask File Location in the 'Mask File' tab. If multiple masks are defined in a single file, enter the mask channel name you'd like to execute against.
  3. Run the VI
  4. Press the Take Measurement button to verify the current setup against the preconfigured mask.

Additional Information or References

For more information on CableSense, see the CableSense White Paper.

For a full list of CableSense-enabled oscilloscopes, visit the Readme for the NI-Scope 18.7 Driver.

Example code from the Example Code Exchange in the NI Community is licensed with the MIT license.