Overview and getting started

The code is structured as a module keyoscacquire.oscacq containing the engine doing the PyVISA interfacing in a class Oscilloscope, and support functions for data processing and saving. Programmes are located in keyoscacquire.programmes, and the same programmes can be run directly from the command line as they are installed in the python path, see Command line programmes. Default options are found in keyoscacquire.config.

Quick reference

The package installs the following command line programmes in the python path

  • list_visa_devices: list the available VISA devices

  • path_of_config: find the path of keyoscacquireuire.config storing default options. Change this file to your choice of standard settings, see Default options in keyoscacquire.config.

  • get_single_trace: use with option -h for instructions

  • get_num_traces: get a set number of traces, use with option -h for instructions

  • get_traces_single_connection: get a trace each time enter is pressed, use with option -h for instructions

See more under Command line programmes for trace export.

Todo

Add info about API

keyoscacquire uses the logging module, see Logging.

Installation

Install the package with pip:

$ pip install keysightoscilloscopeacquire

or download locally and install with $ python setup.py install or by running install.bat.

Known issues and suggested improvements

  • Issues:

    • There has previously been an issue with the data transfer/interpretation where the output waveform is not as it is on the oscilloscope screen. If this happens, open KeySight BenchVue and obtain one trace through the software. Now try to obtain a trace through this package – it should now work again. Please report this if this happens.

  • Improvements:

    • (feature) Make a dynamic default setting for number of points

    • (feature) Build functionality for pickling measurement to disk and then post-processing for speed-up in consecutive measurements

    • (instrument support) expand support for Infiniium oscilloscopes

    • (docs) Write tutorial page for documentation

    • (housekeeping) PEP8 compliance and code audit