Getting Started

Software installation

The Pulse Streamer does not require any driver installation. It uses a standard Ethernet interface for communication, so all drivers are provided with your operating system. The only requirement is that the Pulse Streamer can be added to your network, see the Network Connection section for further information. Additionally, the direct connection to the network card of your PC is supported as well.

Client software

Please visit the Software Downloads section of our website and download the client and example files for any of the supported programming languages. Alternatively, the packages for Python, Matlab and LabVIEW are available via the PyPi, Matlab Add-on Explorer and VI Package Manager respectively.

The MATLAB toolbox can be installed with MATLAB Add-on Explorer or by downloading and double-clicking the toolbox package file (Windows). The toolbox is compatible with MATLAB versions starting from 2014b.

The LabVIEW package installation requires free JKI VI Package Manager, which is often installed alongside LabVIEW. You can find the “Pulse Streamer” package in the community repository if you search for it in the VI Package Manager.

The Python module for Pulse Streamer can be installed either from the www.pypi.org with the following command

pip install pulsestreamer

# or if you want to use gRPC client then
# install the pulsestreamer with optional "grpc" support
pip install pulsestreamer[grpc]

or from a local package file using the command

pip install path/to/packagefile.whl

Replace path/to/packagefile.whl with the actual path of the package file.

Graphical user interface

The Pulse Streamer Application provides basic configuration functionality and allows for generation of simple signals.

  1. Download and install the most recent Pulse Streamer Windows App from our downloads site.

  2. Start Pulse Streamer from the Windows start menu.

  3. The GUI-window should show up on your screen.

Note

If you have already installed Pulse Streamer App v1.0.2, you have to uninstall the old version before installing version >=v1.5.0.

Generate simple pulse pattern

This section shows a simple example of how to generate a simple signal on digital output channel “0” of the Pulse Streamer. The signal will consist of a single pulse, which is repeated an infinite number of times. While this example is extremely simple, yet it shows a very typical way of defining and generating various signals.

Client software

# import API classes into the current namespace
from pulsestreamer import PulseStreamer, Sequence 

# A pulse with 10µs HIGH and 30µs LOW levels
pattern = [(10000, 1), (30000, 0)]

# Connect to Pulse Streamer
ip = 'pulsestreamer'
ps = PulseStreamer(ip)

# Create a sequence object
sequence = ps.createSequence()

# Create sequence and assign pattern to digital channel 0
sequence.setDigital(0, pattern)

# Stream the sequence and repeat it indefinitely
n_runs = PulseStreamer.REPEAT_INFINITELY
ps.stream(sequence, n_runs)

Detailed information about the programming interface of the Pulse Streamer and the API can be found in the Programming interface section.

Graphical user interface

After startup, the Pulse Streamer Application scans the network for connected Pulse Streamers and shows detailed information on all discovered devices.

../_images/GUI_MainScreen.png

Pulse Streamer Application: Start screen

If your device is not shown, make sure it is correctly connected to the network and press the button Auto Discover. Devices with firmware version v1.0.x can only be discovered with Network Scan.

  1. Choose your device and click Connect.

  2. On the right side, change the drop down field DIGITAL 0 from constant to Pulse.

  3. Set period to 40000 ns and Duration to 10000 ns.

  4. Click the Play button.

../_images/GUI_stream.png

Pulse Streamer Application: Sequence configuration

Note

The Pulse Streamer application provides easy-to-use device setup functionality, such as network configuration and firmware update. It currently only provides basic functionality concerning sequence generation and streaming. Essentially, it allows setting simple pulse repetitions or square waves for demonstration issues. Particularly its capabilities of merging different channel patterns are limited. Therefore putting individual pulse patterns on different digital channels with only one or a few repetition counts will always preserve the desired frequencies (set via Period, Time offset and Duration) but might lead to deviation of the Repetition count set in the GUI window. We recommend using our API to benefit from the full functionality of the Pulse Streamer 8/2.

Firmware update

We recommend continuously updating all devices to our latest Pulse Streamer 8/2 firmware. The Pulse Streamer GUI will inform you about available updates and guide you through firmware update process. On the startup-screen with the listed devices, press the button Update firmware behind the field with the firmware version to open the firmware-updater-window and follow the further instructions.

../_images/GUI_AutoUpdate.png

Pulse Streamer Application: Firmware Updater

In case you need to update a device located in a network without internet access, you can manually download the updater file from our downloads site. After that, you can perform the firmware update process independently by using the offline mode and specifying the path to the updater.

../_images/GUI_OfflineUpdate.png

Pulse Streamer Application: Firmware Updater offline mode

If you face any problems or if your device is not equipped with firmware v1.0.1 or later, please contact support@swabianinstruments.com. We will provide a customized firmware update for you.