Skip to content

Device Node Tree

This chapter contains reference documentation for the settings and measurement data available on SHFLI Instruments. Whilst Functional Description describes many of these settings in terms of the features available in the LabOne User Interface, this chapter describes them on the device level and provides a hierarchically organized and comprehensive list of device functionality.

Since these settings and data streams may be written and read using the LabOne APIs (Application Programming Interfaces) this chapter is of particular interest to users who would like to perform measurements programmatically via LabVIEW, Python, MATLAB, .NET or C.

Please see:

  • Introduction for an introduction of how the instrument's settings and measurement data are organized hierarchically in the Data Server's so-called "Node Tree".
  • Reference Node Documentation for a reference list of the settings and measurement data available on SHFLI Instruments, organized by branch in the Node Tree.

Introduction

This chapter provides an overview of how an instrument's configuration and output is organized by the Data Server.

All communication with an instrument occurs via the Data Server program the instrument is connected to (see LabOne Software Architecture for an overview of LabOne's software components). Although the instrument's settings are stored locally on the device, it is the Data Server's task to ensure it maintains the values of the current settings and makes these settings (and any subscribed data) available to all its current clients. A client may be the LabOne User Interface or a user's own program implemented using one of the LabOne Application Programming Interfaces, e.g., Python.

The instrument's settings and data are organized by the Data Server in a file-system-like hierarchical structure called the node tree. When an instrument is connected to a Data Server, its device ID becomes a top-level branch in the Data Server's node tree. The features of the instrument are organized as branches underneath the top-level device branch and the individual instrument settings are leaves of these branches.

For example, the auxiliary outputs of the instrument with device ID "dev1000" are located in the tree in the branch:

/dev1000/auxouts/

In turn, each individual auxiliary output channel has its own branch underneath the "AUXOUTS" branch.

/dev1000/auxouts/0/
/dev1000/auxouts/1/
/dev1000/auxouts/2/
/dev1000/auxouts/3/

Whilst the auxiliary outputs and other channels are labelled on the instrument's panels and the User Interface using 1-based indexing, the Data Server's node tree uses 0-based indexing. Individual settings (and data) of an auxiliary output are available as leaves underneath the corresponding channel's branch:

/dev1000/auxouts/0/demodselect
/dev1000/auxouts/0/limitlower
/dev1000/auxouts/0/limitupper
/dev1000/auxouts/0/offset
/dev1000/auxouts/0/outputselect
/dev1000/auxouts/0/preoffset
/dev1000/auxouts/0/scale
/dev1000/auxouts/0/value

These are all individual node paths in the node tree; the lowest-level nodes which represent a single instrument setting or data stream. Whether the node is an instrument setting or data-stream and which type of data it contains or provides is well-defined and documented on a per-node basis in the Reference Node Documentation section in the relevant instrument-specific user manual. The different properties and types are explained in Node Properties and Data Types .

For instrument settings, a Data Server client modifies the node's value by specifying the appropriate path and a value to the Data Server as a (path, value) pair. When an instrument's setting is changed in the LabOne User Interface, the path and the value of the node that was changed are displayed in the Status Bar in the bottom of the Window. This is described in more detail in Exploring the Node Tree.

Module Parameters

LabOne Core Modules, such as the Sweeper, also use a similar tree-like structure to organize their parameters. Please note, however, that module nodes are not visible in the Data Server's node tree; they are local to the instance of the module created in a LabOne client and are not synchronized between clients.

Node Properties and Data Types

A node may have one or more of the following properties:

Property Description
Read Data can be read from the node.
Write Data can be written to the node.
Setting The node corresponds to a writable instrument configuration. The data of these nodes are persisted in snapshots of the instrument and stored in the LabOne XML settings files.
Streaming A node with the read attribute that provides instrument data, typically at a user-configured rate. The data is usually a more complex data type, for example demodulator data is returned as ZIDemodSample. A full list of streaming nodes is available in the Programming Manual in the Chapter Instrument Communication. Their availability depends on the device class (e.g. MF) and the option set installed on the device.

A node may contain data of the following types:

Integer Integer data.
Double Double precision floating point data.
String A string array.
Integer (enumerated) As for Integer, but the node only allows certain values.
Composite data type For example, ZIDemodSample. These custom data types are structures whose fields contain the instrument output, a timestamp and other relevant instrument settings such as the demodulator oscillator frequency. Documentation of custom data types is available in

Exploring the Node Tree

In the LabOne User Interface

A convenient method to learn which node is responsible for a specific instrument setting is to check the Command Log history in the bottom of the LabOne User Interface. The command in the Status Bar gets updated every time a configuration change is made. Figure 1 shows how the equivalent MATLAB command is displayed after modifying the value of the auxiliary output 1's offset. The format of the LabOne UI's command history can be configured in the Config Tab (MATLAB, Python and .NET are available). The entire history generated in the current UI session can be viewed by clicking the "Show Log" button.

Figure 1: When a device's configuration is modified in the LabOne User Interface, the Status Bar displays the equivalent command to perform the same configuration via a LabOne programming interface. Here, the MATLAB code to modify auxiliary output 1's offset value is provided. When "Show Log" is clicked the entire configuration history is displayed in a new browser tab.

In a LabOne Programming Interface

A list of nodes (under a specific branch) can be requested from the Data Server in an API client using the listNodes command (MATLAB, Python, .NET) or ziAPIListNodes() function (C API). Please see each API's command reference for more help using the listNodes command. To obtain a list of all the nodes that provide data from an instrument at a high rate, so-called streaming nodes, the streamingonly flag can be provided to listNodes. More information on data streaming and streaming nodes is available in the LabOne Programming Manual.

The detailed descriptions of nodes that is provided in Reference Node Documentation is accessible directly in the LabOne MATLAB or Python programming interfaces using the "help" command. The help command is daq.help(path) in Python and ziDAQ('help', path) in MATLAB. The command returns a description of the instrument node including access properties, data type, units and available options. The "help" command also handles wildcards to return a detailed description of all nodes matching the path. An example is provided below.

    daq = zhinst.core.ziDAQServer('localhost', 8004, 6)
    daq.help('/dev1000/auxouts/0/offset')
    # Out:
    # /dev1000/auxouts/0/OFFSET#
    # Add the specified offset voltage to the signal after scaling. Auxiliary Output
    # Value = (Signal+Preoffset)*Scale + Offset
    # Properties: Read, Write, Setting
    # Type: Double
    # Unit: V

Data Server Nodes

The Data Server has nodes in the node tree available under the top-level /zi/ branch. These nodes give information about the version and state of the Data Server the client is connected to. For example, the nodes:

  • /zi/about/version
  • /zi/about/revision

are read-only nodes that contain information about the release version and revision of the Data Server. The nodes under the /zi/devices/ list which devices are connected, discoverable and visible to the Data Server.

The nodes:

  • /zi/config/open
  • /zi/config/port

are settings nodes that can be used to configure which port the Data Server listens to for incoming client connections and whether it may accept connections from clients on hosts other than the localhost.

Nodes that are of particular use to programmers are:

  • /zi/debug/logpath - the location of the Data Server's log in the PC's file system,
  • /zi/debug/level - the current log-level of the Data Server (configurable; has the Write attribute),
  • /zi/debug/log - the last Data Server log entries as a string array.

The Global nodes of the LabOne Data Server are listed in the Instrument Communication chapter of the LabOne Programming Manual

Reference Node Documentation

This section describes all the nodes in the data server’s node tree organized by branch.

AUXINS

/dev..../auxins/n/delaycompensation/delay

Properties: Read, Write, Setting
Type: Double
Unit: s

This node sets the compensation for signal propagation delays to achieve a flatter phase response. The default value compensates for the propagation delay resulting from the signal output to the auxiliary input with a short cable in between. Every additional meter of cable would add ~5 ns propagation delay, which can be compensated using this node.

/dev..../auxins/n/delaycompensation/reset

Properties: Read, Write
Type: Integer (64 bit)
Unit: None

Resets the compensation delay to the default value.

/dev..../auxins/n/max

Properties: Read
Type: Double
Unit: None

Indicates the maximum normalized voltage measured on this channel. It can be between -1 and 1. To prevent signal clipping and overvoltage, it is advised to keep it between -0.9 and 0.9.

/dev..../auxins/n/min

Properties: Read
Type: Double
Unit: None

Indicates the minimum normalized voltage measured on this channel. It can be between -1 and 1. To prevent signal clipping and overvoltage, it is advised to keep it between -0.9 and 0.9.

/dev..../auxins/n/on

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Enables the auxiliary input.

/dev..../auxins/n/overrangecount

Properties: Read
Type: Integer (64 bit)
Unit: None

Indicates the number of times the Auxiliary Input was in an overrange condition within the last 200 ms. It is checked for an overrange condition every 10 ms.

/dev..../auxins/n/range

Properties: Read, Write, Setting
Type: Double
Unit: dBm

Sets the range of the Auxiliary Input power. The instrument has a fixed number of ranges with 5 dBm steps and will round the entered value to the closest available range.

AUXOUTS

/dev..../auxouts/n/highprecision/max

Properties: Read
Type: Double
Unit: None

Indicates the maximum normalized voltage generated on this channel. It can be between -1 and 1. To prevent signal clipping and overvoltage, it is advised to keep it between -0.9 and 0.9.

/dev..../auxouts/n/highprecision/min

Properties: Read
Type: Double
Unit: None

Indicates the minimum normalized voltage generated on this channel. It can be between -1 and 1. To prevent signal clipping and overvoltage, it is advised to keep it between -0.9 and 0.9.

/dev..../auxouts/n/highprecision/offset

Properties: Read, Write, Setting
Type: Double
Unit: V

Adds the specified offset voltage to the signal after scaling. Auxiliary Output Value = (Signal+Preoffset)*Scale + Offset

/dev..../auxouts/n/highprecision/outputchannel

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Selects the channel of the selected signal source.

/dev..../auxouts/n/highprecision/outputselect

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Selects the signal source for the Auxiliary Output.

-1 "manual": Selects Manual as the output option.
0 "demod_x": Selects Demod X as the output option.
1 "demod_y": Selects Demod Y as the output option.
2 "demod_r": Select Demod R as the output option.
3 "demod_theta": Select Demod Theta as the output option.
5 "pid": Select PID Out as the output option.
9 "pid_shift": Select PID Shift as the output option.
10 "pid_error": Select PID Error as the output option.
/dev..../auxouts/n/highprecision/preoffset

Properties: Read, Write, Setting
Type: Double
Unit: Dependent

Adds a pre-offset to the signal before scaling is applied. Auxiliary Output Value = (Signal+Preoffset)*Scale + Offset

/dev..../auxouts/n/highprecision/scale

Properties: Read, Write, Setting
Type: Double
Unit: None

Multiplication factor to scale the signal. Auxiliary Output Value = (Signal+Preoffset)*Scale + Offset

/dev..../auxouts/n/highprecision/value

Properties: Read
Type: Double
Unit: V

Voltage present on the Auxiliary Output. Auxiliary Output Value = (Signal+Preoffset)*Scale + Offset.

/dev..../auxouts/n/highspeed/max

Properties: Read
Type: Double
Unit: None

Indicates the maximum normalized voltage generated on this channel. It can be between -1 and 1. To prevent signal clipping and overvoltage, it is advised to keep it between -0.9 and 0.9.

/dev..../auxouts/n/highspeed/min

Properties: Read
Type: Double
Unit: None

Indicates the minimum normalized voltage generated on this channel. It can be between -1 and 1. To prevent signal clipping and overvoltage, it is advised to keep it between -0.9 and 0.9.

/dev..../auxouts/n/highspeed/offset

Properties: Read, Write, Setting
Type: Double
Unit: V

Adds the specified offset voltage to the signal after scaling. Auxiliary Output Value = (Signal+Preoffset)*Scale + Offset

/dev..../auxouts/n/highspeed/outputchannel

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Selects the channel of the selected signal source.

/dev..../auxouts/n/highspeed/outputselect

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Selects the signal source for the Auxiliary Output.

-1 "manual": Selects Manual as the output option.
0 "demod_x": Selects Demod X as the output option.
1 "demod_y": Selects Demod Y as the output option.
2 "demod_r": Select Demod R as the output option.
3 "demod_theta": Select Demod Theta as the output option.
5 "pid": Select PID Out as the output option.
9 "pid_shift": Select PID Shift as the output option.
10 "pid_error": Select PID Error as the output option.
/dev..../auxouts/n/highspeed/preoffset

Properties: Read, Write, Setting
Type: Double
Unit: Dependent

Adds a pre-offset to the signal before scaling is applied. Auxiliary Output Value = (Signal+Preoffset)*Scale + Offset

/dev..../auxouts/n/highspeed/scale

Properties: Read, Write, Setting
Type: Double
Unit: None

Multiplication factor to scale the signal. Auxiliary Output Value = (Signal+Preoffset)*Scale + Offset

/dev..../auxouts/n/highspeed/value

Properties: Read
Type: Double
Unit: V

Voltage present on the Auxiliary Output. Auxiliary Output Value = (Signal+Preoffset)*Scale + Offset.

CLOCKBASE

/dev..../clockbase

Properties: Read
Type: Double
Unit: Hz

Returns the internal clock frequency of the device.

DEMODS

/dev..../demods/n/adcselect

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Selects the input signal for the demodulator.

0 "sigin0", "signal_input0": Sig In 1
1 "sigin1", "signal_input1": Sig In 2
8 "auxin0", "auxiliary_input0": Aux In 1
9 "auxin1", "auxiliary_input1": Aux In 2
/dev..../demods/n/burstlen

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Defines how many (complex) samples should be acquired with each trigger.

/dev..../demods/n/bypass

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Allows to bypass the demodulator low-pass filter, thus increasing the bandwidth.

0 "disabled": disabled
1 "enabled": enabled
/dev..../demods/n/droppedvectors

Properties: Read
Type: Integer (64 bit)
Unit: None

Indicates the number of times demodulator streaming data (vectors) where dropped leading to gaps in the acquired signals.

/dev..../demods/n/enable

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Enables the data acquisition for the corresponding demodulator. Note: increasing number of active demodulators increases load on the physical connection to the host computer.

0 "off": OFF: demodulator inactive
1 "on": ON: demodulator active
/dev..../demods/n/freq

Properties: Read
Type: Double
Unit: Hz

Indicates the frequency used for demodulation and for output generation. The demodulation frequency is calculated with oscillator frequency times the harmonic factor. When the MOD option is used linear combinations of oscillator frequencies including the harmonic factors define the demodulation frequencies.

/dev..../demods/n/harmonic

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Multiplies the demodulator's reference frequency by an integer factor. If the demodulator is used as a phase detector in external reference mode (PLL), the effect is that the internal oscillator locks to the external frequency divided by the integer factor.

/dev..../demods/n/missedtrigbusy

Properties: Read
Type: Integer (64 bit)
Unit: None

Indicates the number of times the acquisition unit was busy (still recording previous burst) and a trigger was omitted.

/dev..../demods/n/missedtrigfull

Properties: Read
Type: Integer (64 bit)
Unit: None

Indicates the number of times the memory was full and a trigger was omitted.

/dev..../demods/n/order

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Selects the filter roll off between 6 dB/oct and 24 dB/oct.

1 1st order filter 6 dB/oct
2 2nd order filter 12 dB/oct
3 3rd order filter 18 dB/oct
4 4th order filter 24 dB/oct
/dev..../demods/n/oscselect

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Connects the demodulator with the supplied oscillator. Number of available oscillators depends on the installed options.

0 Oscillator 1
1 Oscillator 2
2 Oscillator 3
3 Oscillator 4
4 Oscillator 5
5 Oscillator 6
6 Oscillator 7
7 Oscillator 8
/dev..../demods/n/phaseshift

Properties: Read, Write, Setting
Type: Double
Unit: deg

Phase shift applied to the reference input of the demodulator.

/dev..../demods/n/rate

Properties: Read, Write, Setting
Type: Double
Unit: 1/s

Defines the demodulator sampling rate, the number of samples that are sent to the host computer per second. A rate of about 7-10 higher as compared to the filter bandwidth usually provides sufficient aliasing suppression. This is also the rate of data received by LabOne Data Server and saved to the computer hard disk. This setting has no impact on the sample rate on the auxiliary outputs connectors. Note: the value inserted by the user may be approximated to the nearest value supported by the instrument.

/dev..../demods/n/sample

Properties: Read, Stream
Type: ZIVectorData
Unit: Dependent

Contains streamed demodulator samples with sample interval defined by the demodulator data rate.

/dev..../demods/n/timeconstant

Properties: Read, Write, Setting
Type: Double
Unit: s

Sets the integration time constant or in other words, the cutoff frequency of the demodulator low pass filter.

/dev..../demods/n/trigger/mode

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Selects the trigger mode.

1 "rising_edge": Demodulator data is streamed to the host computer on the trigger’s rising edge.
2 "falling_edge": Demodulator data is streamed to the host computer on the trigger’s falling edge.
3 "both_edge": Demodulator data is streamed to the host computer on both trigger’s edges.
/dev..../demods/n/trigger/source

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Selects the trigger input for the demodulator.

0 "trigin1": Trigger input 1.
1 "trigin2": Trigger input 2.
2 "trigin3": Trigger input 3.
3 "trigin4": Trigger input 4.
1024 "swtrig0", "software_trigger0": Software Trigger 1.
/dev..../demods/n/trigger/triggeracq

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Enables the triggered acquisition.

0 "continuous": Continuous Demodulator data acquisition (triggering is disabled).
1 "triggered": Triggered Demodulator data acquisition.

DIOS

/dev..../dios/n/drive

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

When on (1), the corresponding 8-bit bus is in output mode. When off (0), it is in input mode. Bit 0 corresponds to the least significant byte. For example, the value 1 drives the least significant byte, the value 8 drives the most significant byte.

/dev..../dios/n/input

Properties: Read
Type: Integer (64 bit)
Unit: None

Gives the value of the DIO input for those bytes where drive is disabled.

/dev..../dios/n/interface

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Selects the interface standard to use on the 32-bit DIO interface. A value of 0 means that a 3.3 V CMOS interface is used. A value of 1 means that an LVDS compatible interface is used.

/dev..../dios/n/mode

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Select DIO mode

0 "manual": Enables manual control of the DIO output bits.
/dev..../dios/n/output

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Sets the value of the DIO output for those bytes where 'drive' is enabled.

EXTREFS

/dev..../extrefs/n/adcselect

Properties: Read
Type: Integer (enumerated)
Unit: None

Indicates the input signal selection for the selected demodulator.

0 "sigin0", "signal_input0": Signal Input 1 is connected to the corresponding demodulator.
1 "sigin1", "signal_input1": Signal Input 2 is connected to the corresponding demodulator.
8 "auxin0", "auxiliary_input0": Auxiliary Input 1 is connected to the corresponding demodulator.
9 "auxin1", "auxiliary_input1": Auxiliary Input 2 is connected to the corresponding demodulator.
/dev..../extrefs/n/automode

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

This defines the type of automatic adaptation of parameters in the PID used for Ext Ref.

2 "low_bandwidth", "pid_coeffs_filter_low_bw": The PID coefficients, the filter bandwidth and the output limits are automatically set using a low bandwidth.
3 "high_bandwidth", "pid_coeffs_filter_high_bw": The PID coefficients, the filter bandwidth and the output limits are automatically set using a high bandwidth.
4 "all", "pid_coeffs_filter_auto_bw": The PID coefficient, the filter bandwidth and the output limits are dynamically adapted.
/dev..../extrefs/n/demodselect

Properties: Read
Type: Integer (64 bit)
Unit: None

Indicates the demodulator connected to the extref channel.

/dev..../extrefs/n/enable

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Enables the external reference.

/dev..../extrefs/n/locked

Properties: Read
Type: Integer (64 bit)
Unit: None

Indicates whether the external reference is locked.

/dev..../extrefs/n/oscselect

Properties: Read
Type: Integer (64 bit)
Unit: None

Indicates which oscillator is being locked to the external reference.

FEATURES

/dev..../features/code

Properties: Write
Type: String
Unit: None

Node providing a mechanism to enter feature codes into the instrument.

/dev..../features/devtype

Properties: Read
Type: String
Unit: None

Returns the device type.

/dev..../features/options

Properties: Read
Type: String
Unit: None

Returns enabled options.

/dev..../features/serial

Properties: Read
Type: String
Unit: None

Device serial number.

OSCS

/dev..../oscs/n/freq

Properties: Read, Write, Setting
Type: Double
Unit: Hz

Frequency control for each oscillator.

PIDS

/dev..../pids/n/center

Properties: Read, Write, Setting
Type: Double
Unit: Dependent

Sets the center value for the PID output. After adding the Center value, the signal is clamped to Center + Lower Limit and Center + Upper Limit.

/dev..../pids/n/d

Properties: Read, Write, Setting
Type: Double
Unit: Dependent

PID derivative gain.

/dev..../pids/n/demod/adcselect

Properties: Read
Type: Integer (enumerated)
Unit: None

Indicates the signal source which is connected to the chosen input demodulator channel.

0 "sigin0", "signal_input0": Signal Input 1 is connected to the corresponding demodulator.
1 "sigin1", "signal_input1": Signal Input 2 is connected to the corresponding demodulator.
8 "auxin0", "auxiliary_input0": Auxiliary Input 1 is connected to the corresponding demodulator.
9 "auxin1", "auxiliary_input1": Auxiliary Input 2 is connected to the corresponding demodulator.
/dev..../pids/n/demod/harmonic

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Multiplier of the for the reference frequency of the current demodulator.

/dev..../pids/n/demod/order

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Selects the filter roll off between 6 dB/oct and 48 dB/oct of the current demodulator.

1 1st order filter 6 dB/oct
2 2nd order filter 12 dB/oct
3 3rd order filter 18 dB/oct
4 4th order filter 24 dB/oct
5 5th order filter 30 dB/oct
6 6th order filter 36 dB/oct
7 7th order filter 42 dB/oct
8 8th order filter 48 dB/oct
/dev..../pids/n/demod/timeconstant

Properties: Read, Write, Setting
Type: Double
Unit: s

Defines the characteristic time constant (cut off) of the demodulator filter used as an input.

/dev..../pids/n/dlimittimeconstant

Properties: Read, Write, Setting
Type: Double
Unit: s

The cutoff of the low-pass filter for the D limitation given as time constant. When set to 0, the low-pass filter is disabled.

/dev..../pids/n/enable

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Enable the PID controller.

/dev..../pids/n/error

Properties: Read
Type: Double
Unit: Dependent

Error = Set point - PID Input.

/dev..../pids/n/i

Properties: Read, Write, Setting
Type: Double
Unit: Dependent

PID integral gain I.

/dev..../pids/n/input

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Select input source of PID controller.

0 "demod_x": Demodulator X
1 "demod_y": Demodulator Y
2 "demod_r": Demodulator R
3 "demod_theta": Demodulator Theta
/dev..../pids/n/inputchannel

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Select input channel of PID controller.

/dev..../pids/n/keepint

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: Dependent

If enabled, the accumulated integral error is maintained upon restart of the PID. If is disabled, the integral error is set to zero when the PID is disabled.

/dev..../pids/n/limitlower

Properties: Read, Write, Setting
Type: Double
Unit: Dependent

Sets the lower limit for the PID output. After adding the Center value, the signal is clamped to Center + Lower Limit and Center + Upper Limit.

/dev..../pids/n/limitupper

Properties: Read, Write, Setting
Type: Double
Unit: Dependent

Sets the upper limit for the PID output. After adding the Center value, the signal is clamped to Center + Lower Limit and Center + Upper Limit.

/dev..../pids/n/mode

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Sets the operation mode of the PID module.

0 "pid": PID
1 "pll": PLL (phase locked loop)
2 "extref": ExtRef (external reference)
/dev..../pids/n/output

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Select output of the PID controller.

0 "sigout0_amp", "signal_output0_amplitude": Driving Signal Output 1 amplitudes
1 "sigout1_amp", "signal_output1_amplitude": Driving Signal Output 2 amplitudes
2 "oscillator_frequency": Controlling any of the internal oscillator frequencies
/dev..../pids/n/outputchannel

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Select the output channel of the driven output of PID controller.

/dev..../pids/n/p

Properties: Read, Write, Setting
Type: Double
Unit: Dependent

PID Proportional gain P.

/dev..../pids/n/phaseunwrap

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Enables the phase unwrapping to track phase errors past the +/-180 degree boundary and increase PLL bandwidth.

/dev..../pids/n/pll/automode

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

This defines the type of automatic adaptation of parameters in the PID.

0 "no_adaption": No automatic adaption.
1 "pid_coeffs": The PID coefficients are automatically set based on the filter parameters.
2 "pid_coeffs_filter_low_bw": The PID coefficients, the filter bandwidth and the output limits are automatically set using a low bandwidth.
3 "pid_coeffs_filter_high_bw": The PID coefficients, the filter bandwidth and the output limits are automatically set using a high bandwidth.
/dev..../pids/n/pll/locked

Properties: Read
Type: Integer (64 bit)
Unit: None

Indicates when the PID, configured as PLL, is locked.

/dev..../pids/n/rate

Properties: Read, Write, Setting
Type: Double
Unit: 1/s

PID sampling rate and update rate of PID outputs. Needs to be set substantially higher than the targeted loop filter bandwidth.

/dev..../pids/n/setpoint

Properties: Read, Write, Setting
Type: Double
Unit: Dependent

PID controller setpoint

/dev..../pids/n/shift

Properties: Read
Type: Double
Unit: Dependent

Difference between the current output value Out and the Center. Shift = PError + IInt(Error, dt) + D*dError/dt

/dev..../pids/n/value

Properties: Read
Type: Double
Unit: Dependent

Gives the current PID output value.

SCOPES

/dev..../scopes/n/averaging/count

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Configures the number of Scope measurements to average.

/dev..../scopes/n/averaging/enable

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Enables averaging of Scope measurements.

/dev..../scopes/n/channels/n/enable

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: Dependent

Enables recording for this Scope channel.

/dev..../scopes/n/channels/n/inputselect

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Selects the scope input signal.

0 "sigin0", "signal_input0": Signal Input Channel 1
1 "sigin1", "signal_input1": Signal Input Channel 2
16 "auxin0", "auxiliary_input0": Aux Input Channel 1
17 "auxin1", "auxiliary_input1": Aux Input Channel 2
/dev..../scopes/n/channels/n/wave

Properties: Read
Type: ZIVectorData
Unit: Dependent

Contains the acquired Scope measurement data.

/dev..../scopes/n/enable

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Enables the acquisition of scope shots.

/dev..../scopes/n/length

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Defines the length of the recorded Scope shot in number of samples.

/dev..../scopes/n/segments/count

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Specifies the number of segments to be recorded in device memory. The maximum scope shot size is given by the available memory divided by the number of segments. This functionality requires the DIG option.

/dev..../scopes/n/segments/enable

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Enable segmented scope recording. This allows for full bandwidth recording of scope shots with a minimum dead time between individual shots. This functionality requires the DIG option.

/dev..../scopes/n/single

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Puts the Scope into single shot mode.

/dev..../scopes/n/time

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Defines the time base of the scope from the divider exponent of the instrument's clock base. The resulting sampling time is 2^n/clockbase.

/dev..../scopes/n/trigger/channel

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Selects the trigger source signal.

0 "trigin1": Trigger Input 1.
1 "trigin2": Trigger Input 2.
2 "trigin3": Trigger Input 3.
3 "trigin4": Trigger Input 4.
1024 "swtrig0", "software_trigger0": Software Trigger 1.
/dev..../scopes/n/trigger/delay

Properties: Read, Write, Setting
Type: Double
Unit: s

The delay of a Scope measurement. A negative delay results in data being acquired before the trigger point. The resolution is 2 ns.

/dev..../scopes/n/trigger/enable

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

When triggering is enabled scope data are acquired every time the defined trigger condition is met.

0 "off": OFF: Continuous scope shot acquisition
1 "on": ON: Trigger based scope shot acquisition

SIGINS

/dev..../sigins/n/ac

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Defines the input coupling for the Signal Inputs. AC coupling inserts a high-pass filter.

0 "dc": OFF: DC coupling
1 "ac": ON: AC coupling
/dev..../sigins/n/delaycompensation/bbdelay

Properties: Read, Write, Setting
Type: Double
Unit: s

This node sets the compensation for signal propagation delays to achieve a flatter phase response when using the baseband path. The default value compensates for the propagation delay resulting from the signal input and output and a short cable in between. Every additional meter of cable would add ~5 ns propagation delay, which can be compensated using this node.

/dev..../sigins/n/delaycompensation/reset

Properties: Read, Write
Type: Integer (64 bit)
Unit: None

Resets the compensation delay to the default value.

/dev..../sigins/n/delaycompensation/rfdelay

Properties: Read, Write, Setting
Type: Double
Unit: s

This node sets the compensation for signal propagation delays to achieve a flatter phase response when using the RF path. The default value compensates for the propagation delay resulting from the signal input and output and a short cable in between. Every additional meter of cable would add ~5 ns propagation delay, which can be compensated using this node.

/dev..../sigins/n/max

Properties: Read
Type: Double
Unit: None

Indicates the maximum normalized voltage measured on this channel. It can be between -1 and 1. To prevent signal clipping and overvoltage, it is advised to keep it between -0.9 and 0.9.

/dev..../sigins/n/min

Properties: Read
Type: Double
Unit: None

Indicates the minimum normalized voltage measured on this channel. It can be between -1 and 1. To prevent signal clipping and overvoltage, it is advised to keep it between -0.9 and 0.9.

/dev..../sigins/n/on

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Enables the signal input.

/dev..../sigins/n/overrangecount

Properties: Read
Type: Integer (64 bit)
Unit: None

Indicates the number of times the Signal Input was in an overrange condition within the last 200 ms. It is checked for an overrange condition every 10 ms.

/dev..../sigins/n/range

Properties: Read, Write, Setting
Type: Double
Unit: dBm

Sets the range of the Signal Input power. The instrument has a fixed number of ranges with 5 dBm steps and will round the entered value to the closest available range.

/dev..../sigins/n/rfpath

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Switches between radio frequency and baseband signal paths.

0 "BB": Baseband path
1 "RF": Radio frequency path

SIGOUTS

/dev..../sigouts/n/filter

Properties: Read
Type: Integer (enumerated)
Unit: None

Reads the selected analog filter before the Signal Output.

0 "lowpass_1500": Low-pass filter of 1.5 GHz.
1 "lowpass_3000": Low-pass filter of 3 GHz.
2 "bandpass_3000_6000": Band-pass filter between 3 GHz - 6 GHz
3 "bandpass_6000_10000": Band-pass filter between 6 GHz - 10 GHz
/dev..../sigouts/n/generators/n/amplitude

Properties: Read, Write, Setting
Type: Double
Unit: V

Sets the amplitude of the generator output.

/dev..../sigouts/n/generators/n/enable

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Enables (1) or disables (0) the generator output.

/dev..../sigouts/n/on

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Enabling/Disabling the Signal Output. Corresponds to the blue LED indicator on the instrument front panel.

/dev..../sigouts/n/overrangecount

Properties: Read
Type: Integer (64 bit)
Unit: None

Indicates the number of times the Signal Output was in an overrange condition within the last 200 ms. It is checked for an overrange condition every 10 ms.

/dev..../sigouts/n/range

Properties: Read, Write, Setting
Type: Double
Unit: dBm

Sets the range of the Signal Output power. The instrument has a fixed number of ranges with 5 dBm steps and will round the entered value to the closest available range.

/dev..../sigouts/n/rfinterlock

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Enables (1) or disables (0) the RF interlock between input and output of the same channel. If enabled, the output is always configured according to the input.

0 "disabled": RF interlock disabled.
1 "enabled": RF interlock enabled.
/dev..../sigouts/n/rfpath

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Switches between radio frequency and baseband signal paths.

0 "BB": Baseband path.
1 "RF": Radio frequency path.

STATS

/dev..../stats/physical/auxouts/n/temperatures/n

Properties: Read
Type: Double
Unit: °C

Provides internal temperature readings on the Auxiliary Output board for monitoring.

/dev..../stats/physical/auxouts/n/voltages/n

Properties: Read
Type: Double
Unit: V

Provides internal voltage measurement on the Auxiliary Output board for monitoring.

/dev..../stats/physical/currents/n

Properties: Read
Type: Double
Unit: mA

Internal current measurements.

/dev..../stats/physical/fanspeeds/n

Properties: Read
Type: Integer (64 bit)
Unit: RPM

Speed of the internal cooling fans for monitoring.

/dev..../stats/physical/fpga/aux

Properties: Read
Type: Double
Unit: V

Supply voltage of the FPGA.

/dev..../stats/physical/fpga/core

Properties: Read
Type: Double
Unit: V

Core voltage of the FPGA.

/dev..../stats/physical/fpga/pstemp

Properties: Read
Type: Double
Unit: °C

Internal temperature of the FPGA's processor system.

/dev..../stats/physical/fpga/temp

Properties: Read
Type: Double
Unit: °C

Internal temperature of the FPGA.

/dev..../stats/physical/overtemperature

Properties: Read
Type: Integer (64 bit)
Unit: None

This flag is set to 1 if the temperature of the FPGA exceeds 85°C. It will be reset to 0 after a restart of the device.

/dev..../stats/physical/power/currents/n

Properties: Read
Type: Double
Unit: A

Currents of the main power supply.

/dev..../stats/physical/power/temperatures/n

Properties: Read
Type: Double
Unit: °C

Temperatures of the main power supply.

/dev..../stats/physical/power/voltages/n

Properties: Read
Type: Double
Unit: V

Voltages of the main power supply.

/dev..../stats/physical/sigins/n/currents/n

Properties: Read
Type: Double
Unit: A

Provides internal current readings on the Signal Input board for monitoring.

/dev..../stats/physical/sigins/n/temperatures/n

Properties: Read
Type: Double
Unit: °C

Provides internal temperature readings on the Signal Input board for monitoring.

/dev..../stats/physical/sigins/n/voltages/n

Properties: Read
Type: Double
Unit: V

Provides internal voltage measurement on the Signal Input board for monitoring.

/dev..../stats/physical/sigouts/n/currents/n

Properties: Read
Type: Double
Unit: A

Provides internal current readings on the Signal Output board for monitoring.

/dev..../stats/physical/sigouts/n/temperatures/n

Properties: Read
Type: Double
Unit: °C

Provides internal temperature readings on the Signal Output board for monitoring.

/dev..../stats/physical/sigouts/n/voltages/n

Properties: Read
Type: Double
Unit: V

Provides internal voltage readings on the Signal Output board for monitoring.

/dev..../stats/physical/synthesizer/currents/n

Properties: Read
Type: Double
Unit: A

Provides internal current readings on the Synthesizer board for monitoring.

/dev..../stats/physical/synthesizer/temperatures/n

Properties: Read
Type: Double
Unit: °C

Provides internal temperature readings on the Synthesizer board for monitoring.

/dev..../stats/physical/synthesizer/voltages/n

Properties: Read
Type: Double
Unit: V

Provides internal voltage readings on the Synthesizer board for monitoring.

/dev..../stats/physical/temperatures/n

Properties: Read
Type: Double
Unit: °C

Internal temperature measurements.

/dev..../stats/physical/voltages/n

Properties: Read
Type: Double
Unit: V

Internal voltage measurements.

STATUS

/dev..../status/adc0max

Properties: Read
Type: Integer (64 bit)
Unit: None

The maximum value on Signal Input 1 (ADC0) during 100 ms.

/dev..../status/adc0min

Properties: Read
Type: Integer (64 bit)
Unit: None

The minimum value on Signal Input 1 (ADC0) during 100 ms

/dev..../status/adc1max

Properties: Read
Type: Integer (64 bit)
Unit: None

The maximum value on Signal Input 2 (ADC1) during 100 ms.

/dev..../status/adc1min

Properties: Read
Type: Integer (64 bit)
Unit: None

The minimum value on Signal Input 2 (ADC1) during 100 ms

/dev..../status/flags/binary

Properties: Read
Type: Integer (64 bit)
Unit: None

A set of binary flags giving an indication of the state of various parts of the device. Reserved for future use.

/dev..../status/time

Properties: Read
Type: Integer (64 bit)
Unit: None

The current timestamp.

SYNTHESIZERS

/dev..../synthesizers/n/centerfreq

Properties: Read, Write, Setting
Type: Double
Unit: Hz

The Center Frequency of the detection band at the input/output of the instrument

SYSTEM

/dev..../system/activeinterface

Properties: Read
Type: String
Unit: None

Currently active interface of the device.

/dev..../system/boardrevisions/n

Properties: Read
Type: String
Unit: None

Hardware revision of the FPGA base board

/dev..../system/clocks/referenceclock/in/freq

Properties: Read
Type: Double
Unit: Hz

Indicates the frequency of the reference clock.

/dev..../system/clocks/referenceclock/in/source

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

The intended reference clock source. When the source is changed, all the instruments connected with ZSync links will be disconnected. The connection should be re-established manually.

0 "internal": The internal clock is intended to be used as the frequency and time base reference.
1 "external": An external clock is intended to be used as the frequency and time base reference. Provide a clean and stable 10 MHz or 100 MHz reference to the appropriate back panel connector.
/dev..../system/clocks/referenceclock/in/sourceactual

Properties: Read
Type: Integer (enumerated)
Unit: None

The actual reference clock source.

0 "internal": The internal clock is used as the frequency and time base reference.
1 "external": An external clock is used as the frequency and time base reference.
/dev..../system/clocks/referenceclock/in/status

Properties: Read
Type: Integer (enumerated)
Unit: None

Status of the reference clock.

0 "locked": Reference clock has been locked on.
1 "error": There was an error locking onto the reference clock signal.
2 "busy": The device is busy trying to lock onto the reference clock signal.
/dev..../system/clocks/referenceclock/out/enable

Properties: Read, Write, Setting
Type: Integer (64 bit)
Unit: None

Enable clock signal on the reference clock output.

/dev..../system/clocks/referenceclock/out/freq

Properties: Read, Write, Setting
Type: Double
Unit: Hz

Select the frequency of the output reference clock. Only 10 MHz and 100 MHz are allowed.

/dev..../system/digitalmixer/phasesyncenable

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Configures the NCO reset mode.

0 "disabled": If disabled, the instrument does not automatically reset NCOs when switching a channel between BB and RF modes.
1 "enabled": If enabled, the instrument automatically resets the NCOs of all channels whenever a channel is switched between BB and RF, in order to restore alignment.
/dev..../system/fpgarevision

Properties: Read
Type: Integer (64 bit)
Unit: None

HDL firmware revision.

/dev..../system/fwlog

Properties: Read
Type: String
Unit: None

Returns log output of the firmware.

/dev..../system/fwlogenable

Properties: Read, Write
Type: Integer (64 bit)
Unit: None

Enables logging to the fwlog node.

/dev..../system/fwrevision

Properties: Read
Type: Integer (64 bit)
Unit: None

Revision of the device-internal controller software.

/dev..../system/identify

Properties: Read, Write
Type: Integer (64 bit)
Unit: None

Setting this node to 1 will cause the device to blink the power led for a few seconds.

/dev..../system/kerneltype

Properties: Read
Type: String
Unit: None

Returns the type of the data server kernel (mdk or hpk).

/dev..../system/nics/n/defaultgateway

Properties: Read, Write
Type: String
Unit: None

Default gateway configuration for the network connection.

/dev..../system/nics/n/defaultip4

Properties: Read, Write
Type: String
Unit: None

IPv4 address of the device to use if static IP is enabled.

/dev..../system/nics/n/defaultmask

Properties: Read, Write
Type: String
Unit: None

IPv4 mask in case of static IP.

/dev..../system/nics/n/gateway

Properties: Read
Type: String
Unit: None

Current network gateway.

/dev..../system/nics/n/ip4

Properties: Read
Type: String
Unit: None

Current IPv4 of the device.

/dev..../system/nics/n/mac

Properties: Read
Type: String
Unit: None

Current MAC address of the device network interface.

/dev..../system/nics/n/mask

Properties: Read
Type: String
Unit: None

Current network mask.

/dev..../system/nics/n/saveip

Properties: Read, Write
Type: Integer (64 bit)
Unit: None

If written, this action will program the defined static IP address to the device.

/dev..../system/nics/n/static

Properties: Read, Write
Type: Integer (64 bit)
Unit: None

Enable this flag if the device is used in a network with fixed IP assignment without a DHCP server.

/dev..../system/properties/centerfreqstepsize

Properties: Read
Type: Double
Unit: Hz

Step size for center frequency changes.

/dev..../system/properties/freqresolution

Properties: Read
Type: Integer (64 bit)
Unit: None

The number of bits used to represent a frequency.

/dev..../system/properties/freqscaling

Properties: Read
Type: Double
Unit: None

The scale factor to use to convert a frequency represented as a freqresolution-bit integer to a floating point value.

/dev..../system/properties/maxdemodrate

Properties: Read
Type: Double
Unit: 1/s

The maximum demodulator rate that can be set. Only relevant for lock-in amplifiers.

/dev..../system/properties/maxfreq

Properties: Read
Type: Double
Unit: None

The maximum oscillator frequency that can be set.

/dev..../system/properties/maxtimeconstant

Properties: Read
Type: Double
Unit: s

The maximum demodulator time constant that can be set. Only relevant for lock-in amplifiers.

/dev..../system/properties/minfreq

Properties: Read
Type: Double
Unit: None

The minimum oscillator frequency that can be set.

/dev..../system/properties/mintimeconstant

Properties: Read
Type: Double
Unit: s

The minimum demodulator time constant that can be set. Only relevant for lock-in amplifiers.

/dev..../system/properties/negativefreq

Properties: Read
Type: Integer (64 bit)
Unit: None

Indicates whether negative frequencies are supported.

/dev..../system/properties/timebase

Properties: Read
Type: Double
Unit: s

Minimal time difference between two timestamps. The value is equal to 1/(maximum sampling rate).

/dev..../system/shutdown

Properties: Read, Write
Type: Integer (64 bit)
Unit: None

Sending a '1' to this node initiates a shutdown of the operating system on the device. It is recommended to trigger this shutdown before switching the device off with the hardware switch at the back side of the device.

/dev..../system/stall

Properties: Read, Write
Type: Integer (64 bit)
Unit: None

Indicates if the network connection is stalled.

/dev..../system/swtriggers/n/single

Properties: Read, Write
Type: Integer (64 bit)
Unit: None

Issues a single software trigger event.

/dev..../system/triggerdelays/automatic

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Enables the instrument to automatically adjust trigger delays to maintain output alignment

0 "off": No trigger delays are tuned automatically. The user has to manually align the channel outputs.
1 "on": The instrument will set the required trigger delay based on configuration
/dev..../system/update

Properties: Read, Write
Type: Integer (64 bit)
Unit: None

Requests update of the device firmware and bitstream from the dataserver.

TRIGINS

/dev..../trigins/n/imp50

Properties: Read, Write, Setting
Type: Integer (enumerated)
Unit: None

Trigger input impedance: When on, the trigger input impedance is 50 Ohm, when off 1 kOhm.

0 "1_kOhm": OFF: 1 kOhm
1 "50_Ohm": ON: 50 Ohm
/dev..../trigins/n/level

Properties: Read, Write, Setting
Type: Double
Unit: V

Trigger voltage level at which the trigger input toggles between low and high. Use 50% amplitude for digital input and consider the trigger hysteresis.

/dev..../trigins/n/value

Properties: Read
Type: Integer (64 bit)
Unit: None

Shows the value of the digital Trigger Input. The value is integrated over a period of 100 ms. Values are: 1: low; 2: high; 3: was low and high in the period.