Paragon-neo/100G: Paragon-X Compatibility Wrappers

The Paragon-X compatibility wrapper provides limited support for running Paragon-X style scripting commands on a Paragon-neo/100G.  The primary use case is for enabling the utilisation of existing Paragon-X scripts to control a Paragon-neo/100G instrument to reduce time to integrate a Paragon-neo into an existing automation environment, however for nearly all operations the functionality of the compatibility wrapper is restricted to the common functionality and nomenclature between the instruments, which today is limited and in many cases it is more efficient to port existing scripts to use the Paragon-neo/100G RESTful interface and wrappers.  Please contact Calnex if you require more information about what is best for your particular instrument configuration.

If you want use Paragon-X style commands with Paragon-neo/100G, you can use the wrappers provided in your Paragon-X install. These can be found in your user folder under Documents/Calnex/Paragon-X/RemoteControl. Wrappers are provided for Python and Tcl. A Perl wrapper is also provided but this is no longer maintained or supported.

It is possible to mix REST commands and compatibility commands, see: Paragon-neo/100G: Mixing REST and Compatibility Commands

Notes on functionality

  • Some functionality for Paragon-neo/100G has been implemented directly in the wrapper since it cannot be implemented in the instrument. For example, any command that involves exporting a file to a folder on a local PC must be downloaded by a script since the instrument cannot write directly to your PC. Right now, the only supported command of this type is Cat GenerateReport.

  • There are also some Paragon-X commands that do not map to any equivalent in Paragon-neo/100G. Examples of these commands are:
    • Cat Show: For Paragon-neo/100G, the CAT is always active with the latest measurements.
    • Cat Close: Since the CAT is always available, it cannot be closed.
    • Cat <filetype> (where <filetype> may be 1pps, SyncE, 1588TimeError etc.): These commands load a specific file type into the CAT from the Paragon-X GUI. The Paragon-neo/100G CAT does not require these commands to load a capture. 

Since these commands serve no purpose for Paragon-neo/100G, the wrapper will quietly ignore them and will not generate an error (which is important to avoid your existing scripts failing).

  • The current version of the CAT has no Paragon-X style command to return the number of missing 1pps pulses in a capture. A command has been added that allows this to be information to be retrieved (using the CAT's REST interface). The new command is paragonget Cat <1ppsMetric> OnePpsMiss where <1ppsMetric> is one of TIMEERROR, AVERAGEDTE, DTELF, DTEHF, DTEMTIE or DTETDEV.

  • The current version of the CAT may return an error for commands such as SelectSlot when displaying data for a currently active capture. The wrappers now retry the Cat commands should an error occur.

Python

The beta wrapper now consists of a number of files. These are all bundled into the latest Paragon-X release and can be found in the folder: C:\Users\<user>\Documents\Calnex\Paragon-X\RemoteControl\Tcl

This version of the wrapper files has been modified to work with Python 2 as well as Python 3. It has been tested with Python version 2.7 and version 3.6.

Logging functionality has been added (you may be asked to enable logging if you raise a support request). This will log all commands and responses to a logging file and to the console. Logging can be enabled or disabled at any point in your script. The command is:

paragon.wrapper_logging(<enable>, <level>) where the parameters are:

  • <enable>: Boolean. True to enable logging; False to disable it.
  • <level>: Integer. The logging level above which a logging entry will be generated. The levels are debug=10, info=20, warning=30, error=40, critical=50. To log the commands and responses being sent to and from the instrument, set the logging level to 20.

Logs will be stored in a file called WrapperLogging.txt.

Tcl

The wrapper now consists of a number of files. These are all bundled into the latest Paragon-X release and can be found in the folder: C:\Users\<user>\Documents\Calnex\Paragon-X\RemoteControl\Python

Logging functionality has been added (you may be asked to enable logging if you raise a support request). This will log all commands and responses to a logging file and may optionally log to the console. Logging can be enabled or disabled at any point in your script. The command is:

paragonWrapperLogging <enable> <toConsole> <logfileFolder>

<enable>, boolean: Enables or disables wrapper logging.

<toConsole>, boolean: Enables or disable logging to the console when logging is enabled.

<logfileFolder>, string: The path to the folder where log files should be stored. This may  be relative to the folder in which your test script is running.