Getting started

The majority following applies equally well to Vivace and to both versions of Presto (8 and 16 channels). For the sake of brevity, we’ll often refer to just “Presto”, while still meaning all the three products. In the few cases where something applies only to a subset of the products, we’ll be more explicit.

Downloads

In your personal download folder on the Intermodulation Products website, you can find various useful items. You should have received your personal download link together with the Presto unit. If not, or if you can’t find it anymore, contact support and we’ll help you promptly.

Setup

Grounding

In order to avoid ground loops, signal ground and power ground (protective earth, PE) are not galvanically connected.

Note: For transport safety, Presto units are delivered with signal and power ground shorted by a short piece of cable connecting the banana sockets on the back panel. Please remove this short before normal operation.

The following connectors have their shields connected to signal ground:

  • front panel

    • signal input

    • signal output

    • HF output

    • digital input

    • digital output

    • bias output 1-4 SMA (Presto only)

    • bias output 5-16 D-Sub pins 1-13 (top row) (Presto only)

  • back panel

    • REF CLK input

    • REF CLK output

    • SYSREF input (Presto only)

    • USB 3.0

    • JTAG / terminal

    • signal ground (banana socket)

In addition to the whole aluminum chassi, the following connectors have their shields connected to power ground:

  • front panel

    • bias output 5-16 D-Sub metal case (Presto only)

  • back panel

    • ethernet

    • chassi / power ground (banana socket)

Warning: The shield of USB connectors is connected to signal ground. We recommend not to leave Presto connected to a PC through USB during an experiment, as that would likely create a ground loop. The “JTAG / terminal” port is only intended for temporary troubleshooting and for changing network settings. The “USB 3.0” port is reserved for future use.

Network

Presto is designed to be fully controlled via network through the Ethernet port on the back panel. There is no internal firewall running on Presto. For this reason, while there are no known vulnerabilities, direct unprotected connection to the Internet is not recommended. If you do intend to connect to Presto from the Internet, place it behind a NAT and or firewall.

Connection to Presto, including uploading parameters and downloading measurement data, is done through the port number 7878 with the TCP protocol. Refer to these values when in need of setting up firewall rules and/or NAT forwarding.

Changing network settings

Presto can be configured to use a static IP address, or to request a configuration from a DHCP server. The MAC address can also be customized if needed. By default, Presto units are shipped configured with a static IP address. To change the network configuration, use the change_network program available in your personal download folder.

change_network can connect to Presto in two ways. One way is through a network connection, which requires you to known the current IP address and to be able to connect to it. The other way is through the USB serial port on the back panel, use the provided USB A-to-B cable, or equivalent. Whichever connection method you use, follow the on-screen instructions and you should be able to easily change the network settings.

Python API

Installing and updating

There is a Python wheel package with .whl extension available in your personal download folder. The package is just a few kilobytes big, contains pure Python, and includes all the API required to interface with a Presto unit.

You can easily install it using pip, e.g.:

python -m pip install presto-2.3.0-py3-none-any.whl

For updating a previous installation, just add the --upgrade flag, e.g.:

python -m pip install --upgrade presto-2.3.0-py3-none-any.whl

Note: If you get a permission denied error while installing, you might try adding the --user flag to the command to install the package in your user directory rather than the system directory.

Note: When installing/updating the package, make sure to use the same python executable and virtual environment that you would using when running your experiments. If unsure, you can find out what executable you are using in a Python shell by running the commmands:

import sys
print(sys.executable)

Getting help

The Python package presto is the entry point for controlling a Presto unit. Note that the package is called presto even for Vivace units. Refer to the API Reference Guide for the full documentation of the presto package.

Other resources can be found in our GitHub repositories. In particular, the presto-demo repository contains scripts which demonstrate basic usage of the hardware by enabling increasingly more features.