This chapter contains reference documentation for the settings and
measurement data available on MFLI Instruments. Whilst
Functional Description LabOne User Interface
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 MFLI Instruments,
organized by branch in the Node Tree.
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
"dev2006" 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.
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:
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.
A node may have one or more of the following properties:
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
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.
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('/dev2006/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
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
Defines the number of samples on the input to average as a power of two. Possible values are in the range [0, 16]. A value of 0 corresponds to the sampling rate of the auxiliary input's ADC.
Voltage measured at the Auxiliary Input after averaging. The data rate depends on the averaging value. Note, if the instrument has demodulator functionality, the auxiliary input values are available as fields in a demodulator sample and are aligned by timestamp with the demodulator output.
Voltage measured at the Auxiliary Input after averaging. The value of this node is updated at a low rate (50 Hz); the streaming node auxins/n/sample is updated at a high rate defined by the averaging.
Switches the input between floating (ON) and connected grounds (OFF). This setting applies both to the voltage and the current input. It is recommended to discharge the test device before connecting or to enable this setting only after the signal source has been connected to the Signal Input in grounded mode.
Indicates the maximum normalized current measured on this channel. It can be between -1 and 1. To prevent signal clipping and overcurrent, it is advised to keep it between -0.9 and 0.9.
Indicates the minimum normalized current measured on this channel. It can be between -1 and 1. To prevent signal clipping and overcurrent, it is advised to keep it between -0.9 and 0.9.
Defines the gain of the current input amplifier. The range should exceed the incoming signal by roughly a factor of two including a potential DC offset. The instrument selects the next higher available range relative to a value inserted by the user. A suitable choice of this setting optimizes the accuracy and signal-to-noise ratio by ensuring that the full dynamic range of the input ADC is used.
"demod_constant_input": Demodulate a constant input. This results in a sine wave of the frequency specified by the demodulator's oscillator with an amplitude of 1 (at lower frequencies; higher frequencies will be attenuated). The maximum possible frequency is limited by the demodulator sampling rate and bandwidth; use demodulator order 1 for the least attenuation in demodulator output. This signal may be used with the auxiliary outputs, PID and Threshold Unit for advanced measurement and control tasks. When the demodulator output is written to an auxiliary output, the resulting signal can also be used as a second output channel (for low frequencies).
Enables the data acquisition for the corresponding demodulator. Note: increasing number of active demodulators increases load on the physical connection to the host computer.
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.
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.
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.
Enables the sinc filter. When the filter bandwidth is comparable to or larger than the demodulation frequency, the demodulator output may contain frequency components at the frequency of demodulation and its higher harmonics. The sinc is an additional filter that attenuates these unwanted components in the demodulator output.
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.
"internal": The DIO is internally clocked with a fixed frequency of 60 MHz.
1
"external": The DIO is externally clocked with a clock signal connected to DIO Pin 68. The available range is from 1 Hz up to the internal clock frequency.
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.
Manual: In manual mode the current and voltage input ranges are adjusted manually and separately. Use this mode with care as overload will result in inaccurate impedance results.
1
Auto: Dynamically adjust the input range according to the measured input signal strength. This optimizes the dynamic range and precision of impedance measurements.
2
Zone: This ranging option allows you to manually set the switching frequency limits for all eight current input ranges.
DC bias voltage applied across the device under test. Both positive and negative bias voltages are supported. In a 4-terminal measurement, the bias voltage is limited by the maximum common voltage input range of the device. In a 2-terminal measurement, the bias voltage can be larger because the voltage inputs are not connected.
Enables the internal calibration. This ensures that the input range gains match over the full frequency range. With enabled internal calibration the device fulfills the impedance accuracy specification. The internal calibration is a prerequisite to apply a user compensation.
Indicates that a valid user compensation is active. If active the impedance data streams deliver amplitude and phase corrected data based on the impedance user compensation.
Enables the user compensation of the impedance data. The user compensation is correcting parasitics and delays caused by the external setup. The user compensation is applied on top of the internal impedance calibration.
Open terminal detection ratio. An open terminal is reported if the excitation calculated from current and voltage drop differs more than the specified factor from the driving voltage.
Enables the detection of negative Q or D factors. Negative Q or D factors mean the measured impedance does not correspond to the chosen Representation. This can be due to an erroneous compensation, a bad choice of the Representation, or noise.
The Suppression Confidence Indicator indicates if one of the two parameters of a circuit representation cannot be calculated reliably from the measured impedance. This is the case if a small variation in one (dominant) representation parameter creates a strong variation of the other (suppressed) representation parameter. Such an error amplification indicates that the measurement of the secondary parameter is unreliable.
Error amplification limit for which a secondary parameter is marked unreliable. Larger gain values mean larger warning tolerances. A gain value between 10 and 100 is best.
If enabled, the current input signal is inverted. This is useful to switch the polarity of an input signal which can be caused by additional current amplifiers.
Input current range used for the impedance measurement. Small current input ranges have a reduced bandwidth. In the Range Control modes 'Auto' and 'Impedance', the current range is switched automatically to a higher range if the frequency is too high.
Select the interpolation method of the compensation data. The interpolation method is particularly important if the derivative changes strongly e.g at cut-off frequencies.
0
"linear": Linear: The linear interpolation is fastest but may create compensation errors in between the frequency points used for compensation.
1
"pchip": Piecewise Cubic Hermite (PCHIP): The piecewise cubic Hermite interpolation will result in very accurate results but requires more calculation power.
Limit of the maximum bandwidth used on the demodulator filter. Values above 1 kHz can heavily diminish measurement accuracy in the high-frequency region where the amplitude is no more constant over frequency.
4 Terminal: This method uses the current and the voltage drop across the DUT to calculate the DUT impedance. This method results in very accurate measurements as influences of series resistors on the output and current input are excluded.
1
2 Terminal: This method uses the driving voltage and the measured current to calculate the DUT impedance. The 2 Terminal method can be beneficial when measuring very high impedance where the parasitics of the voltage measurement are limiting the frequency range.
Representation of the complex impedance value Z by two real values accessible as Parameter 1 and Parameter 2 on all user interface displays.
0
"r_c_parallel": Rp || Cp: Impedance value Z is represented by a resistive element Rp in parallel with a capacitive element Cp.
1
"r_c_series": Rs + Cs: Impedance value Z is represented by a resistive element Rs in series with a capacitive element Cs.
2
"r_l_series": Rs + Ls: Impedance value Z is represented by a resistive element Rs in series with an inductive element Ls.
3
"g_b_parallel", "admittance": G B: Impedance value Z is represented by conductance G = Real(Y) and Susceptance B = Imag(Y) of the admittance Y = 1/Z.
4
"d_c_series": D Cs: Impedance value Z is represented by a dissipation factor D = -Real(Z)/Imag(Z) (loss tangent) and a series capacitive element.
5
"q_c_series": Q Cs: Impedance value Z is represented by a quality factor Q = -Imag(Z)/Real(Z) and a series capacitive element.
6
"d_l_series": D Ls: Impedance value Z is represented by a dissipation factor D = Real(Z)/Imag(Z) (loss tangent) and a series inductive element.
7
"q_l_series": Q Ls: Impedance value Z is represented by a quality factor Q = Imag(Z)/Real(Z) and a series inductive element.
8
"r_l_parallel": Rp || Lp: Impedance value Z is represented by a resistive element Rp in parallel with an inductive element Lp.
9
"d_c_parallel": D Cp: Impedance value Z is represented by a dissipation factor D = Real(Z)/Imag(Z) (loss tangent) and a parallel capacitive element Cp.
10
"dielectric": Dielectic: Impedance value Z is represented by an equivalent dieletric material with a complex permittivity.
Suppression of the omega and 2-omega components. Small omega suppression can diminish measurements of very low or high impedance because the DC component can become dominant. Large omega suppression will have a significant impact on sweep time especially for low filter orders.
"demod_constant_input": Demodulate a constant input. This results in a sine wave of the frequency specified by the demodulator's oscillator with an amplitude of 1 (at lower frequencies; higher frequencies will be attenuated). The maximum possible frequency is limited by the demodulator sampling rate and bandwidth; use demodulator order 1 for the least attenuation in demodulator output. This signal may be used with the auxiliary outputs, PID and Threshold Unit for advanced measurement and control tasks. When the demodulator output is written to an auxiliary output, the resulting signal can also be used as a second output channel (for low frequencies).
"demod_constant_input": Demodulate a constant input. This results in a sine wave of the frequency specified by the demodulator's oscillator with an amplitude of 1 (at lower frequencies; higher frequencies will be attenuated). The maximum possible frequency is limited by the demodulator sampling rate and bandwidth; use demodulator order 1 for the least attenuation in demodulator output. This signal may be used with the auxiliary outputs, PID and Threshold Unit for advanced measurement and control tasks. When the demodulator output is written to an auxiliary output, the resulting signal can also be used as a second output channel (for low frequencies).
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.
Target Rate for PID output data sent to PC. This value defines the applied decimation for sending data to the PC. It does not affect any other place where PID data are used.
Lower limit of the scope full scale range. For demodulator, PID, Boxcar, and AU signals the limit should be adjusted so that the signal covers the specified range to achieve optimal resolution.
Upper limit of the scope full scale range. For demodulator, PID, Boxcar, and AU signals the limit should be adjusted so that the signal covers the specified range to achieve optimal resolution.
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.
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.
Enable scope streaming for the specified channel. This allows for continuous recording of scope data on the plotter and streaming to disk. Note: scope streaming requires the DIG option.
Streaming Rate of the scope channels. The streaming rate can be adjusted independent from the scope sampling rate. The maximum rate depends on the interface used for transfer. Note: scope streaming requires the DIG option.
Trigger position relative to reference. A positive delay results in less data being acquired before the trigger point, a negative delay results in more data being acquired before the trigger point.
Defines the trigger event number that will trigger the next recording after a recording event. A value of '1' will start a recording for each trigger event.
Defines the voltage the source signal must deviate from the trigger level before the trigger is rearmed again. Set to 0 to turn it off. The sign is defined by the Edge setting.
Selects the mode to define the hysteresis strength. The relative mode will work best over the full input range as long as the analog input signal does not suffer from excessive noise.
0
"absolute": Selects absolute hysteresis.
1
"relative": Selects a hysteresis relative to the adjusted full scale signal input range.
Sets on which slope of the trigger signal the scope should trigger. This setting is synchronized with the settings done in the /TRIGFALLING and /TRIGRISING nodes.
0
"none": None
1
"rising": Rising edge triggered.
2
"falling": Falling edge triggered.
3
"both": Triggers on both the rising and falling edge.
Switches the input between floating (ON) and connected to ground (OFF). This setting applies both to the voltage and the current input. It is recommended to discharge the test device before connecting or to enable this setting only after the signal source has been connected to the Signal Input in grounded mode.
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.
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.
Defines the gain of the analog input amplifier. The range should exceed the incoming signal by roughly a factor two including a potential DC offset. The instrument selects the next higher available range relative to a value inserted by the user. A suitable choice of this setting optimizes the accuracy and signal-to-noise ratio by ensuring that the full dynamic range of the input ADC is used.
Enables individual output signal amplitude. When the MD option is used, it is possible to generate signals being the linear combination of the available demodulator frequencies.
Select the load impedance between 50 Ohm and HiZ. The impedance of the output is always 50 Ohm. For a load impedance of 50 Ohm the displayed voltage is half the output voltage to reflect the voltage seen at the load.
Number of buffers being processed for command packets. Small values indicate proper performance. For a TCP/IP interface, command packets are sent using the TCP protocol.
Number of buffers being processed for data packets. Small values indicate proper performance. For a TCP/IP interface, data packets are sent using the UDP protocol.
A set of binary flags giving an indication of the state of various parts of the device. Bit 0: Signal Input 1 overflow, Bit 1: Current Input 1 overflow, Bit 2: Analog PLL fail, Bit 3: Output 1 DAC OK, Bit 4: Output 2 DAC OK, Bit 5: Signal Output 1 clipping, Bit 6: Signal Output 2 clipping, Bit 7: Ext Ref 1 Locked, Bit 8: Ext Ref 2 Locked, Bit 9:Ext Ref 3 Locked, Bit 10:Ext Ref 4 Locked, Bit 11: Sample Loss, Bits 12 - 13: Trigger In 1, Bits 14 - 15: Trigger In 2, Bits 16 - 17: Trigger In 3, Bits 18 - 19: Trigger In 4, Bit 20: PLL 1 locked, Bit 21: PLL 2 locked, Bit 22: PLL 3 locked, Bit 23: PLL 4 locked, Bit 24: Rubidium clock locked, Bit 25: AU Cartesian 1 Overflow, Bit 26: AU Cartesian 2 Overflow, Bit 27: AU Polar 1 Overflow, Bit 28: AU Polar 2 Overflow.
"internal": Internal 10 MHz clock is used as the frequency and time base reference.
1
"external": An external 10 MHz clock is used as the frequency and time base reference. Provide a clean and stable 10 MHz reference to the appropriate back panel connector.
Switch between application-based or manually configured impedance settings. A parameter set given by an Application mode can be fine-tuned by changing to Advanced mode. Changing back to Application mode will reset the parameters.
0
"application": Application: The impedance settings are adjusted to fit best the selected application.
1
"advanced": Advanced: The impedance settings are manually configured.
Indicates the minimum input current range that can be used at frequencies at or above the value in the corresponding freq node for 2-terminal impedance measurements.
Indicates the minimum input current range that can be used at frequencies at or above the value in the corresponding freq node for 4-terminal impedance measurements.
Select the Impedance precision and measurement speed by automatically adjusting the filter bandwidth. If the sweeper module is in impedance application mode the precision setting will also control the sweeper measurement speed.
0
"low": Low -> fast settling: Medium accuracy/precision is optimized for fast response.
1
"high": High -> medium settling: High accuracy/precision takes more settling time.
2
"very_high": Very high -> slow settling: Very high accuracy/precision uses long settling time due to very low bandwidth.
Enables jumbo frames (4k) on the TCP/IP interface. This will reduce the load on the PC and is required to achieve maximal throughput. Make sure that jumbo frames (4k) are enabled on the network card as well. If one of the devices on the network is not able to work with jumbo frames, the connection will fail.
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.
Trigger voltage level at which the trigger input toggles between low and high. Use 50% amplitude for digital input and consider the trigger hysteresis.
Show the value after logical combination but before output settings. The value integrated over some time. Values are 1: low, 2: high, 3: was low and high in the period.
Selects the analysis mode defining the output signal.
0
"above_upper": Enable if the Signal is above Upper Threshold.
1
"below_lower": Enable if the Signal is below Lower Threshold.
2
"outside_range": Enable if the Signal is outside the range [Lower Threshold, Upper Threshold].
3
"crossing_both_rising": Enable if the Signal crosses Upper Threshold from below Lower Threshold. The difference between Upper an Lower Threshold defines the threshold hysteresis.
4
"crossing_both_falling": Enable if the Signal crosses Lower Threshold from above Upper Threshold. The difference between Upper an Lower Threshold defines the threshold hysteresis.
Flag indicating whether the source value is saturated. Values are: 0: not saturated; 1: saturation at lower bound; 2: saturation at upper bound; 3: saturation at both lower and upper bounds.
Upper threshold used to generate the output. In Falling Edge mode, this parameter defines the hysteretic behavior as the output state is reset only when the signal crosses Upper Threshold from below.
Lower threshold used to generate the output. In Rising Edge mode, this parameter defines the hysteretic behavior as the output state is reset only when the signal crosses Lower Threshold from above.
Shows the value after threshold but before minimum time. The value integrated over some time. Values are 1: low, 2: high, 3: was low and high in the period.